ユーザーから3桁の数字を取得し、6桁の数字を出力するプログラムを作成する必要があります。例:入力:123出力:112233
4 に答える
3
任意の桁数でこれを行う一般的な方法は、次のようになります。
string input = Console.ReadLine();
StringBuilder output = new StringBuilder(input.Length * 2);
foreach (char c in input)
{
output.append(c);
output.append(c);
}
Console.WriteLine(output.ToString());
于 2012-10-14T22:23:15.623 に答える
2
Enumerable.Repeat
LINQクエリで使用できます。
public static String duplicateChars(IEnumerable<Char> input, int factor)
{
var chars = from c in input
from cc in Enumerable.Repeat(c, factor)
select cc;
return new String(chars.ToArray());
}
テスト:
String result = duplicateChars("123", 2);
デモ: http: //ideone.com/57KzI
または短いバージョン:
new String("123".SelectMany(c => Enumerable.Repeat(c, 2)).ToArray());
于 2012-10-14T22:25:25.827 に答える
0
実際には、3桁ではなく、任意の数値を入力として取得すると思います。
あなたはこのようにすることができます:
Console.WriteLine(String.Concat(Console.ReadLine().Select(c => c.ToString() + c.ToString())));
于 2012-10-14T22:20:30.330 に答える
0
正規表現も使用できます
var reg = Regex.Replace("123", @"\d", @"$&$&");
または方法として
public static string DuplicateChars(string term)
{
return Regex.Replace(term, @"\d", @"$&$&");
}
于 2012-10-15T06:40:57.377 に答える