Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
relax-z
0 / 0 / 0
Регистрация: 23.09.2010
Сообщений: 32
#1

Проверка на ввод C++ - C++

24.10.2010, 12:25. Просмотров 1538. Ответов 1
Метки нет (Все метки)

алгоритм-1:
1)ввод x (например 1)
2)вывод y
3)расчет заново (y/n)
(работает)

алгоритм -2:
1) ввод x (например 1)
2) вывод y
3) расчет заново (y)
4) ввод x (например a, 12df)
5) выдает ошибка просит ввести x заново
(работает)

алгоритм - 3:
1) ввод x ( например a, 12df)
2) выдает ошибку и выходит из программы

вот суть проблемы, то есть нужно сделать чтоб алгоритме 3, при вводе ошибки просило ввести заново число х, до тех пор пока оно не удовлетворит условию...



вот код может кто нибудь скажет где ошибка:


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
#include <iostream>
#include <cmath>
using namespace std;
int main()
  {
   double x , y ;
   char k;
   do
      {
       cout << " Введите x: ";
       cin >> x;
       if (cin.get()!='\n')
         {
           cout << "ошибка при вводе" << "\n";
         }
       else
         {
          if (cos(x) == 0)
            {
             cout << "ошибка" << "\n";
            }
          else
              {
               y = 2 * (tan(x) + sin(x) / 2 );
               cout << "y=" << y << "\n";
              }
          k = 0;
          cout << " Введите букву Y если хотите рассчитать заново, если решили закончить расчет для выхода нажмите любую клавишу : ";
          cin >> k;
          }
       cin.clear();
       cin.sync();
      }
    while(k == 'y' || k == 'Y');
    return 0;
  }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.10.2010, 12:25     Проверка на ввод C++
Посмотрите здесь:

Проверка на ввод букв C++
проверка на неправильный ввод C++
Проверка на ввод символа C++
Проверка на ввод C++
Проверка на ввод символа C++
Проверка на ввод числа C++
Проверка на ввод символа C++
Проверка на ввод C++
Проверка на ввод числа C++
C++ Проверка на ввод букв
Проверка на ввод строки C++
C++ Проверка на ввод цифр

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Somebody
2779 / 1593 / 142
Регистрация: 03.12.2007
Сообщений: 4,175
Завершенные тесты: 1
24.10.2010, 14:51     Проверка на ввод C++ #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
#include <iostream>
#include <limits>
 
using namespace std;
 
int main()
{
    int x;
    while (true)
    {
        cout << "x = ";
        cin >> x;
        // Если нет ошибки и конец строки, то break
        if (cin && cin.peek() == '\n')
            break;
        // Если конец файла, то на этом всё
        if (cin.eof())
            return 0;
        // Иначе очищаем флаги ошибок
        cin.clear(ios::goodbit);
        // И пропускаем все символы до конца строки
        cin.ignore(numeric_limits<streamsize>::max(), '\n');
    }
}
Yandex
Объявления
24.10.2010, 14:51     Проверка на ввод C++
Ответ Создать тему
Опции темы

Текущее время: 14:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru