-11

ユーザーから3桁の数字を取得し、6桁の数字を出力するプログラムを作成する必要があります。例:入力:123出力:112233

4

4 に答える 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.RepeatLINQクエリで使用できます。

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 に答える