Вы можете быть абсолютным сумасшедшим и псевдоним vim
до vim -p
, добавив в свой .bashrc
:
alias vim="vim -p"
Это приведет к открытию нескольких файлов из оболочки во вкладках, без необходимости вызывать :tab ball
изнутри vim.
Давайте оставим код простым - давайте извлечем метод InputInteger
; Другое предложение - использовать TryParse
вместо исключения исключений :
private static int InputInteger(string title) {
Console.WriteLine();
// Keep on asking user
while (true) {
if (!string.IsNullOrEmpty(title))
Console.Write(title);
// if correct integer value provided, return it
if (int.TryParse(Console.ReadLine(), out var result))
return result;
// in case of syntax error print the message
Console.WriteLine("-- ERROR --");
Console.WriteLine("Please, type integer number, try again!");
}
}
Затем вы можете использовать его, когда захотите ввести целочисленное значение пользователем:
int svar = InputInteger("How many items would you like to have in the list?");
...
// get svar integer items
for (int i = 0; i < svar; ++i)
myList.Add(InputInteger("Write the number you would like to add to your list: "));
Я ценю, что вы новичок в кодировании. Добро пожаловать, и я надеюсь, вам понравится.
Я немного реорганизовал код, чтобы сделать его более простым и безошибочным:
using System;
using System.Collections.Generic;
using System.Linq;
namespace ConsoleApp
{
class Program
{
static void Main(string[] args)
{
ProcessNumbers();
}
private static void ProcessNumbers()
{
var myList = new List<int>();
string sinput = String.Empty;
var number = 0;
do
{
try
{
Console.Write("Write the number you would like to add to your list (type stop when you are done): ");
var input = Console.ReadLine();
if(input != "stop")
{
number = int.Parse(input);
myList.Add(number);
}
else
{
sinput = input;
}
}
catch
{
Console.WriteLine("ERROR: You typed a letter instead of a number, try again!");
}
} while (sinput != "stop");
var sum = myList.Sum();
Console.WriteLine("The sum of all your numbers is: " + sum);
Console.Write("Press any key to exist...");
Console.ReadKey();
}
}
}
По сути, он будет постоянно просить пользователя вводить цифры до тех пор, пока пользователь не прекратит ввод. В конце он покажет сумму всех чисел в результате. Дайте мне знать, если у вас есть какие-либо вопросы по поводу кода.
Вам нужно использовать блок try внутри него, как это
int number = 0;
int svar = set by the user for exempel 2
do
{
for (int i = 0; i < svar; i++)
{
try
{
Console.Write("\nWrite the number you would like to add to your list: ");
nummer = int.Parse(Console.ReadLine());
}
catch
{
Console.WriteLine("\n-- ERROR --");
Console.WriteLine("You typed a letter instead of a number, try again!");
}
myList.Add(number);
}
} while (number == 0);