Написать программу-фильтр, которая при нажатии любых клавиш выводит на экран только буквы и цифры, при этом указывая, что выводится: буква или цифра. Она работает, но не могу сделать чтобы он смог несколько символов сразу, например
"23ds"-
2 - цифра,
3 - цифра,
d - буква,
s - буква
char c;
do
{
Console.Write("Нажмите на кнопку ");
c = char.Parse(Console.ReadLine());
if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'))
Console.WriteLine("{0}-буква", c);
else if (c >= '0' && c <= '9')
Console.WriteLine("{0}-цифра", c);
} while (true);
Console.ReadLine();
Вот еще одна программа -
double a, s, h, rv, ro;
int n;
Console.WriteLine("Что дано?? ? Выбирите номер пункта");
Console.WriteLine("1. Сторона??? ");
Console.WriteLine("2. Площадь??? ");
Console.WriteLine("3. Высота??? ");
Console.WriteLine("4. Радиус вписанной окружности??? ");
Console.WriteLine("5. Радиус описанной окружности??? ");
n=int.Parse(Console.ReadLine());
if (n > 5) Console.WriteLine("Такого пункта нет!! ! Попробуй в другой раз");
switch (n){
case 1:
Console.Write("Стророна = ");
a = double.Parse(Console.ReadLine());
goto Storona;
case 2:
Console.Write("Площадь = ");
s = double.Parse(Console.ReadLine());
goto Plochad;
case 3:
Console.Write("Высота = ");
h = double.Parse(Console.ReadLine());
goto Visota;
case 4:
Console.Write("Радиус вписанной окружности = ");
rv = double.Parse(Console.ReadLine());
goto Vpisan;
case 5:
Console.Write("Радиус описанной окружности = ");
ro = double.Parse(Console.ReadLine());
goto Opisan;
Storona:
rv = a / 2;
ro = a / Math.Sqrt(3);
s = Math.Sqrt(3) * Math.Sqrt(a) / 4;
h = 2 * s / a;
goto exit;
Plochad:
a = Math.Sqrt(4 * s / Math.Sqrt(3));
h = 2 * s / a;
rv = a / 2;
ro = a / Math.Sqrt(3);
goto exit;
Visota:
a = 2 * h / Math.Sqrt(3);
s = a * h / 2;
rv = a / 2;
ro = a / Math.Sqrt(3);
goto exit;
Vpisan:
a = 2 * rv;
ro = a / Math.Sqrt(3);
s = Math.Sqrt(3) * Math.Sqrt(a) / 4;
h = 2 * s / a;
goto exit;
Opisan:
a = Math.Sqrt(3) * ro;
s = (a*a*a) / (4*ro);
h = 2 * s / a;
rv = a / 2;
goto exit;
exit:
Console.WriteLine("Сторона = {0:F2}", a);
Console.WriteLine("Площадь = {1:F2}", s);
Console.WriteLine("Высота = {2:F2}", h);
Console.WriteLine("Радиус вписанной окружности = {3:F2}", rv);
Console.WriteLine("Радиус описанной окружности = {4:F2}", ro);
Console.ReadLine();
Она вообще не хочет запускаться ругается, помогите плиз, срочно надо!!!
Другие языки программирования и технологии
Помогите срочно C#
По первому:
string str;
do
{
Console.WriteLine("Нажмите на кнопки: ");
str = Console.ReadLine();
foreach (char c in str)
{
if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'))
Console.WriteLine("{0}-буква", c);
else if (c >= '0' && c <= '9')
Console.WriteLine("{0}-цифра", c);
}
Console.WriteLine("Для выхода из программы нажмите Esc...");
} while (Console.ReadKey().Key != ConsoleKey.Escape);
По второму:
double a=0, s, h, rv, ro;
int n;
Console.WriteLine("Что дано?? ? Выбирите номер пункта");
Console.WriteLine("1. Сторона??? ");
Console.WriteLine("2. Площадь??? ");
Console.WriteLine("3. Высота??? ");
Console.WriteLine("4. Радиус вписанной окружности??? ");
Console.WriteLine("5. Радиус описанной окружности??? ");
n = int.Parse(Console.ReadLine());
if (n > 5) Console.WriteLine("Такого пункта нет!! ! Попробуй в другой раз");
switch (n)
{
case 1:
{
Console.Write("Стророна = ");
a = double.Parse(Console.ReadLine());
goto Storona;
}
case 2:
{
Console.Write("Площадь = ");
s = double.Parse(Console.ReadLine());
goto Plochad;
}
case 3:
{
Console.Write("Высота = ");
h = double.Parse(Console.ReadLine());
goto Visota;
}
case 4:
{
Console.Write("Радиус вписанной окружности = ");
rv = double.Parse(Console.ReadLine());
goto Vpisan;
}
case 5:
{
Console.Write("Радиус описанной окружности = ");
ro = double.Parse(Console.ReadLine());
goto Opisan;
}
}
Storona:
rv = a/2;
ro = a/Math.Sqrt(3);
s = Math.Sqrt(3)*Math.Sqrt(a)/4;
h = 2*s/a;
goto exit;
Plochad:
a = Math.Sqrt(4*s/Math.Sqrt(3));
h = 2*s/a;
rv = a/2;
ro = a/Math.Sqrt(3);
goto exit;
Visota:
a = 2*h/Math.Sqrt(3);
s = a*h/2;
rv = a/2;
ro = a/Math.Sqrt(3);
goto exit;
Vpisan:
a = 2*rv;
ro = a/Math.Sqrt(3);
s = Math.Sqrt(3)*Math.Sqrt(a)/4;
h = 2*s/a;
goto exit;
Opisan:
a = Math.Sqrt(3)*ro;
s = (a*a*a)/(4*ro);
h = 2*s/a;
rv = a/2;
goto exit;
exit:
Console.WriteLine("Сторона = {0:F2}", a);
Console.WriteLine("Площадь = {0:F2}", s);
Console.WriteLine("Высота = {0:F2}", h);
Console.WriteLine("Радиус вписанной окружности = {0:F2}", rv);
Console.WriteLine("Радиус описанной окружности = {0:F2}", ro);
Console.ReadLine();
string str;
do
{
Console.WriteLine("Нажмите на кнопки: ");
str = Console.ReadLine();
foreach (char c in str)
{
if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'))
Console.WriteLine("{0}-буква", c);
else if (c >= '0' && c <= '9')
Console.WriteLine("{0}-цифра", c);
}
Console.WriteLine("Для выхода из программы нажмите Esc...");
} while (Console.ReadKey().Key != ConsoleKey.Escape);
По второму:
double a=0, s, h, rv, ro;
int n;
Console.WriteLine("Что дано?? ? Выбирите номер пункта");
Console.WriteLine("1. Сторона??? ");
Console.WriteLine("2. Площадь??? ");
Console.WriteLine("3. Высота??? ");
Console.WriteLine("4. Радиус вписанной окружности??? ");
Console.WriteLine("5. Радиус описанной окружности??? ");
n = int.Parse(Console.ReadLine());
if (n > 5) Console.WriteLine("Такого пункта нет!! ! Попробуй в другой раз");
switch (n)
{
case 1:
{
Console.Write("Стророна = ");
a = double.Parse(Console.ReadLine());
goto Storona;
}
case 2:
{
Console.Write("Площадь = ");
s = double.Parse(Console.ReadLine());
goto Plochad;
}
case 3:
{
Console.Write("Высота = ");
h = double.Parse(Console.ReadLine());
goto Visota;
}
case 4:
{
Console.Write("Радиус вписанной окружности = ");
rv = double.Parse(Console.ReadLine());
goto Vpisan;
}
case 5:
{
Console.Write("Радиус описанной окружности = ");
ro = double.Parse(Console.ReadLine());
goto Opisan;
}
}
Storona:
rv = a/2;
ro = a/Math.Sqrt(3);
s = Math.Sqrt(3)*Math.Sqrt(a)/4;
h = 2*s/a;
goto exit;
Plochad:
a = Math.Sqrt(4*s/Math.Sqrt(3));
h = 2*s/a;
rv = a/2;
ro = a/Math.Sqrt(3);
goto exit;
Visota:
a = 2*h/Math.Sqrt(3);
s = a*h/2;
rv = a/2;
ro = a/Math.Sqrt(3);
goto exit;
Vpisan:
a = 2*rv;
ro = a/Math.Sqrt(3);
s = Math.Sqrt(3)*Math.Sqrt(a)/4;
h = 2*s/a;
goto exit;
Opisan:
a = Math.Sqrt(3)*ro;
s = (a*a*a)/(4*ro);
h = 2*s/a;
rv = a/2;
goto exit;
exit:
Console.WriteLine("Сторона = {0:F2}", a);
Console.WriteLine("Площадь = {0:F2}", s);
Console.WriteLine("Высота = {0:F2}", h);
Console.WriteLine("Радиус вписанной окружности = {0:F2}", rv);
Console.WriteLine("Радиус описанной окружности = {0:F2}", ro);
Console.ReadLine();
> срочно.. .
Спешка нужна при ловле блох, да и то не всегда. Ты задание лучше напиши, а то непонятно, или сначала строка вводится а после обрабатывается, или обрабатываются непосредственно нажатия клавиш. Вот сразу нажатия обрабатываются:
using System;
namespace q87359413 {
class Program {
static void Main(string[] args) {
while (true) {
var k = Console.ReadKey();
if (k.Key == ConsoleKey.Escape) break;
var c = k.KeyChar;
Console.Write("\b\b\b\b\b\b\b\b \b");
if (Char.IsDigit(c)) {
Console.WriteLine("'" + c + "' -- цифра");
} else if (Char.IsLetter(c)) {
Console.WriteLine("'" + c + "' -- буква");
}
}
}
}
}
По второй программе:
> goto Storona;
> goto Opisan;
Убери эту гадость и вообще забудь о том, что есть такой оператор goto, не для твоего уровня он. Подумай и перепиши программу без goto.
Спешка нужна при ловле блох, да и то не всегда. Ты задание лучше напиши, а то непонятно, или сначала строка вводится а после обрабатывается, или обрабатываются непосредственно нажатия клавиш. Вот сразу нажатия обрабатываются:
using System;
namespace q87359413 {
class Program {
static void Main(string[] args) {
while (true) {
var k = Console.ReadKey();
if (k.Key == ConsoleKey.Escape) break;
var c = k.KeyChar;
Console.Write("\b\b\b\b\b\b\b\b \b");
if (Char.IsDigit(c)) {
Console.WriteLine("'" + c + "' -- цифра");
} else if (Char.IsLetter(c)) {
Console.WriteLine("'" + c + "' -- буква");
}
}
}
}
}
По второй программе:
> goto Storona;
> goto Opisan;
Убери эту гадость и вообще забудь о том, что есть такой оператор goto, не для твоего уровня он. Подумай и перепиши программу без goto.
Похожие вопросы
- помогите срочно надо Квадратные массивы тема: Двумерные массивы на языке C++
- КТО ШАРИТ В ХАКЕРСТВЕ и тому подобном. . ПОМОГИТЕ СРОЧНО ПЖАЛУЙСТА!!!
- Люди, помогите скачать C++!!
- помогите с C++
- СРОЧНО!!! C++ !
- помогите срочно пожалуйста Delphi
- Помогите срочно! С Фотошопом беда.
- Паскаль написать программу помогите. срочно. Пожалуйста
- помогите, пожалуйста, c делфи!
- помогите с C програм не выводит результаты