Форум программистов, компьютерный форум, киберфорум
Наши страницы

Проверка на правильность ввода значения. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поиск задачника http://www.cyberforum.ru/cpp-beginners/thread446290.html
Может кто подсказать, хорошую книгу с задачником сразу ? Читаешь и в конце выполняешь задания к данной главе.
C++ Создание ресурсов в VS 6.0 Не могу разобраться с созданием ресурсов в VS 6.0, не с синтаксисом файлов ресурсов, а с интерфейсом VS. Вот выбрал я добавить новый файл, выбрал в списке resource script и ввёл имя menudemo.... http://www.cyberforum.ru/cpp-beginners/thread446285.html
C++ Задача на minmax
Дано целое число N и набор из N целых чисел. Найти номер по- следнего экстремального (то есть минимального или максимального) эле- мента из данного набора.
C++ В файловой системе каталог файлов организован в виде линейного списка...
Если кому будет не сложно.. даже хоть какие-то советы по решению.. буду весьма благодарен... В файловой системе каталог файлов организован в виде линейного списка Для каждого файла в...
C++ Работа с динамической памятью через указатели. http://www.cyberforum.ru/cpp-beginners/thread446274.html
Пишу в Microsoft Visual Studio ->Win32 Console application ->C++. Есть такая задача: Создать массив из N целых чисел, N вводит пользователь. Заполнить массив случайным образом в диапазоне от 1 до...
C++ Как ввести полученные данные в массив? Ошибка: brace-enclosed initializer list Здравствуйте. Есть вопрос: что я делаю не так, что вылезает ошибка из названия? Пожалуйста, научите меня полученные данные b,c,d,e,f ввести в масссив B Думаю, что в этом нет смысла, тупость да?... подробнее

Показать сообщение отдельно
Archiolidius
0 / 0 / 0
Регистрация: 13.02.2012
Сообщений: 8

Проверка на правильность ввода значения. - C++

14.02.2012, 21:24. Просмотров 2513. Ответов 2
Метки (Все метки)

Вот пишу так называемую "проверку на дурака". Столкнулся с проблемой, код:
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
{
    double ch;
    int y=0;
    do{
    y=1;
    int q=0;
    int q1=0;
    int q2=0;
    int i;  
    char ch1[256];
    gets(ch1);
    ch=atof(ch1);
    for(i=0;i<strlen(ch1);i++){     
        if (((ch1[i]<45)||(ch1[i]>57)||(ch==0))&&(ch1[i]!='e')||(ch1[i]==47)||(ch>1e256)||((ch1[0]=='0')&&(ch1[1]!='.'))){
                cout<<"ERRRS\n"; y=0;  break;
            }                               
            if(ch1[i]=='.') q++;
            if(ch1[1]=='-') q1++;
            if(ch1[i]=='e') q2++;
            if ((q>1)||(q1>1)||(q2>1))
            {
                cout<<"ERRRS\n"; y=0; break;}           
            }
    }
    while(y!=1);
    return(ch);
};
Вопрос:
Как сделать чтобы при вводе строки больше заданной размерности не выкидывало с программы?
Или может можно сделать чтобы строка расширялась?
Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.