** Arsa |
Отправлено: 16.03.2007, 00:05 |
|
Не зарегистрирован
|
Надо организовать из консоли ввод числа с проверкой. Число не должно быть 0, <0, число должно быть целым. И еще надо сделать проверку ввел ли юзер число или же "строку".
Поделитесь, пожалуйста, куском кода у кого есть ... |
|
desivers |
Отправлено: 16.03.2007, 00:20 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 32
|
делал раньше проверку является ли числом введенное пользателем .....
CODE |
#include <iostream> //cout, cin
using namespace std;
int proverka();
int convertor();
char temp[50];
void main()
{
if(proverka()==1)
{
if (convertor() == 0)
cout<<"neverno"<<endl;
else
cout<<convertor()<<endl;
}
else cout<<"neverno"<<endl;
}
int proverka()
{
for (int i=0; temp[i]!='\0'; i++)
{
if (temp[i]>=48 && temp[i]<=57)
{
;
}
else return 0;
}
return 1;
}
int convertor()
{
int k = 0, ch = 0;
for (int i=0; temp[i]!='\0'; i++)
{
switch(temp[i])
{
case 48: k = 0; break;
case 49: k = 1; break;
case 50: k = 2; break;
case 51: k = 3; break;
case 52: k = 4; break;
case 53: k = 5; break;
case 54: k = 6; break;
case 55: k = 7; break;
case 56: k = 8; break;
case 57: k = 9; break;
}
if (i==0)
ch = k;
else
ch = (ch *10) + k;
}
return ch;
}
|
чуть переделал теперь разрешает толь целые положительные числа больше 0
Отредактировано desivers — 16.03.2007, 00:47 |
|
Arsa |
Отправлено: 16.03.2007, 00:29 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 77
|
to desivers:
Спасибо, завтра вникну в твой код! |
|
Arsa |
Отправлено: 16.03.2007, 00:33 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 77
|
А может у кого -нибудь есть примерчик реализации через библиотеку ctype.h? Или все же лучше следовать примера desiver'а? |
|
desivers |
Отправлено: 16.03.2007, 00:37 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 32
|
а что за ctype.h
число должно быть положительным?
Отредактировано desivers — 16.03.2007, 00:40 |
|
Guest |
Отправлено: 16.03.2007, 00:54 |
|
Не зарегистрирован
|
В нее входит isdigit() и тд ... посмотри в гугле — там полно инфы по этой библиотечке.
QUOTE | число должно быть положительным? |
Да, но с этим я разберусь ... |
|
Guest |
Отправлено: 16.03.2007, 14:40 |
|
Не зарегистрирован
|
CODE |
char a[5];
cin>>a;
echo<<a;
|
Есть проблема заполнения массива,когда юзер вводит, напрмер, "5 7" (5пробел7), а надо чтоб массив был таким: a[0]='5', a[1]=' ', a[2]=7.
Может кто подскажет чего? Зарание спасибо! |
|
Guest |
Отправлено: 16.03.2007, 14:57 |
|
Не зарегистрирован
|
QUOTE | Есть проблема заполнения массива,когда юзер вводит, напрмер, "5 7" (5пробел7), а надо чтоб массив был таким: a[0]='5', a[1]=' ', a[2]=7.
Может кто подскажет чего? Зарание спасибо! |
Все разобрался сам ... |
|