Как сделать проверку правильности ввода числа - C#
Формулировка задачи:
У меня есть программа, которая переводит из восьмеричной системы счисления в двоичную:
Но тут нет проверки правильности ввода числа. Тесть, если в водимом числе присутствуют недопустимые символы (8,9,!."№;% и т.д.) на экран должно выводиться сообщение о неправильном вводе числа. Как это сделать?
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
a: Console.Write("Введите восьмеричное число:");
string s_8 = Console.ReadLine();
char[] A = s_8.ToCharArray();
//В ЭТОМ МЕСТЕ ДОЛЖНА БЫТЬ ПРОВЕРКА!!!
char c;
string s_2 = "";
for (int i = 0; i < A.Length; i++)
{
c = A[i];
switch (c)
{
case '0': s_2 = s_2 + "000"; break;
case '1': s_2 = s_2 + "001"; break;
case '2': s_2 = s_2 + "010"; break;
case '3': s_2 = s_2 + "011"; break;
case '4': s_2 = s_2 + "100"; break;
case '5': s_2 = s_2 + "101"; break;
case '6': s_2 = s_2 + "110"; break;
case '7': s_2 = s_2 + "111"; break;
case ',': case '.': s_2 = s_2 + ","; break;
}
}
Console.WriteLine("{0}(8)={1}(2)", s_8, s_2);
Console.ReadKey();
goto a;
}
}
}Решение задачи: «Как сделать проверку правильности ввода числа»
textual
Листинг программы
string s = "";
int n = 0;
while (n != 10)
{
n = (int)Console.ReadKey().KeyChar;
if (n >= 48 && n <= 55)
s += (char)n;
else
{
Console.WriteLine("Error");
break;
}
}