Я хочу ввести 10 чисел, а затем показать их в 1 строке следующим образом: 1,4,5,2,456,23,...
и так далее..
и он продолжает писать их, когда я их вхожу, и в конце, когда он должен показывать все числа в одной строке, он показывает только последний.
Я знаю, что это возможно со случайными числами, но когда я ввожу их самостоятельно, я не знаю, как не показывать их вообще или держать их в одной строке, и если это возможно?
int a;
int x;
Console.WriteLine("a:");
a = int.Parse(Console.ReadLine());
x = 10;
for (int i = 0; i < x; i++)
{
a = int.Parse(Console.ReadLine());
}
Console.ReadKey();
Я не знаю, как написать их в конце всего в 1 строке?
Ну, вам нужно сохранить их по мере их ввода:
int num;
var nums = new List<int>();
while (nums.Count < 10)
{
Console.Write("Enter: ");
if (int.TryParse(Console.ReadLine(), out num))
{
nums.Add(num);
Console.Clear();
}
}
Console.WriteLine(string.Join(", ", nums));
вы можете использовать
Console.ReadKey(true)
он читает ключ с консоли и не показывает его.
вы можете использовать это, чтобы читать слово с консоли, не показывая его
public static string ReadHiddenFromConsole()
{
var word = new StringBuilder();
while (true)
{
var i = Console.ReadKey(true);
if (i.Key == ConsoleKey.Enter)
{
Console.WriteLine();
break;
}
if (i.Key == ConsoleKey.Backspace)
{
if (word.Length > 0)
{
word.Remove(word.Length - 1, 1);
Console.Write("\b \b");
}
}
else
{
word.Append(i.KeyChar);
Console.Write("*");
}
}
return word.ToString();
}
Вы можете использовать этот код:
static void Main(string[] args)
{
int length = 10;
int[] myNumbers = new int[length];
for (int i = 0; i < length; i++)
{
Console.Write("Enter number:" );
myNumbers[i] = Convert.ToInt32(Console.ReadLine());
Console.Clear();
}
Console.WriteLine("Your numbers: {0}", string.Join(",", myNumbers));
}
myApp.exe < inputFile
...