С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/18: Рейтинг темы: голосов - 18, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 02.03.2007
Сообщений: 9
1

Прекратить работу калькулятора при вводе любого символа, кроме числа

02.06.2007, 04:34. Показов 3180. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, я все с тем же калькулятором.решил сделать проверку на вводимые данные, т.е. что бы работа
программы прекращалась при вводе любого символа кроме числа. Использовал функцию isdigit() перепробовал много вариантов, но ничего не получалось. Придумал данный вариант(строки 29-31), но проверить не могу т.к. компиллятор выдает потерю ";" перед return. Более того, при постановки знака комментария // шрифт зеленым не становится и как коммент текст не вводится. Прошу объяснить в чем же дело и написать верный фрагмент кода, если этот не работает.

отдельный фрагмент кода, сама "проблема":
C++
1
2
3
if (isdigit(a)) cout"Vichislenia: "; //29 stroka  
else {cout"!!!neobxodimo vvesti chislo!!!endl; 
return 1; }
весь код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include  iostream;
#include  math.h;
#include  locale.h;
using namespace std;
double a, b;
char z;
 
int main() {
cout"  DOPUSTIMYE OPERACII: "endl;
cout"1. slowenie                      (null, +)"endl;
cout"2. vichitanie                    (null, -)"endl;
cout"3. umnowenie                     (null, *)"endl;
cout"4. delenie                       (null, /)"endl;
cout"5. vozvedenie v stepen'          (null, ^)"endl;
cout"6. vichislenie kvadratnogo korna (q)"endl;
cout"7. cos                           (null, c)"endl;
cout"8. sin                           (null, s)"endl;
cout"9. tan                           (null, t)"endl;
cout"10. log10                        (null, l)"endl;
 
coutendl"   vvedite znak operacii: "endl;
cin ;; z;
if (('l'==z)||('s'==z)||('c'==z)||('t'==z)||('q'==z))
 {cout  "vvedite chislo: "endl;
cin ;; a;
 
 
if (isdigit(a)) cout"Vichislenia: "; //29 stroka  
else {cout"!!!neobxodimo vvesti chislo!!!endl; 
return 1; }
}
 
 
 
else 
{cout"vvedite chislo_1: "endl;
cin ;; a;
cout "vvedite chislo_2: " endl;
cin ;; b;}
if ('+'==z) cout  a"+"b"="a+b;
else if('-'==z) cout a"-"b"="a-b;
else if('*'==z) cout a"*"b"="a*b;
else if('/'==z) cout a"/"b"="a/b;
else if('c'==z) cout cos(a)endl;
else if('s'==z) cout sin(a)endl;
else if('^'==z) cout pow(a, b)endl;
else if('t'==z) cout tan(a)endl;
else if('q'==z) cout sqrt(a)endl;
else if('l'==z) cout log10(a)endl;
return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.06.2007, 04:34
Ответы с готовыми решениями:

Напишите программу, которая при вводе любого символа, кроме x выдает этот же символ и номер шага, в противном случае - выходит.
Нужна программа, которая при вводе любого символа, кроме x выдает этот же символ и номер шага. При...

Как задать конец строки и прекратить при вводе определённого символа?
Добрый день! Подскажите, пожалуйста, как задать конец строки при вводе определённого символа....

Нужно, чтобы программа с циклом заканчивала свое выполнение при вводе любого символа
Здравствуйте, форумчане. Нужно чтобы программа с циклом заканчивала свое выполнение при вводе...

При вводе любого числа добавляется ноль с запятой
при вводе любого числа добавляется "0,". например, если ввести 6, то получится "60," в textBox и...

1
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
02.06.2007, 05:07 2
компиллятор выдает потерю ";" перед return
Это от того, что не закрыл строку двойными кавычками: ...chislo!!!"endl;...

Только подключи еще билиотеку ctype.h там функция isdigit лежит. И все будет работать.
0
02.06.2007, 05:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.06.2007, 05:07
Помогаю со студенческими работами здесь

При вводе любого числа программа возвращает false
program top4; uses crt; var a,b,y:integer; begin writeln('v vedite chislo '='a'); readln(a);...

5. Напишите программу, которая при вводе вашего (любого) числа будет выводить число в два раза большее.
Напишите программу, которая при вводе вашего (любого) числа будет выводить число в два раза...

Нужно откоректировать программу которая будет при вводе любого числа, выводить чётное оно или нет
Здравствуйте, мне нужно откоректировать программу которая будет при вводе любого числа, выводить...

Нужно чтобы при вводе числа 0 программа завершала работу
Привет всем.Это моя первая тема:) У меня такая проблема,задание я сделал но вот не до конца.Нужно...

При программмирование калькулятора выдает ошибку при вводе текста
Подскажите пожалуйста не могу понять почему при нажатии в калькуляторе на кнопку выдает ошибку ....

Выход из калькулятора при неверном вводе данных
Товарищи, подскажите пожалуйста. В задаче требуется выйти из приведённого ниже калькулятора путём...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru