1 / 3 / 0
Регистрация: 04.02.2019
Сообщений: 32
1

Проверка входных данных на корректность

11.03.2019, 19:09. Показов 6963. Ответов 2
Метки нет (Все метки)

Модифицировать программу так, чтобы в случаи ввода некорректных данных сообщалась ошибка с пояснением и предлагался повторный ввод до тех пор, пока не будут введены доступные значения.

Доступные значения должны быть в диапазоне от -1000 до 1000 чисел с плавающей точкой.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <algorithm>
#include <cmath>
#include <windows.h>
 
using namespace std;
 
 
int main()
{
 
    double a,b,c;
    
    wcout << L"\nПодставьте числа в формулу: " << "(c-b%a)^2\n";
    wcout << L"Введите a: "; cin >> a;
    wcout << L"Введите b: "; cin >> b;
    wcout << L"Введите c: "; cin >> c;
 
    wcout << L"Ответ: "<< pow(c-static_cast<int>(b)%static_cast<int>(a),2) << endl;
    wcout << L"\nНажмите на клавишу Enter для завершения программы...";
 
    return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.03.2019, 19:09
Ответы с готовыми решениями:

Проверка на корректность входных данных
Нужно написать программу, которая бы проверяла строку на корректность. Допустимый формат вот такой...

Проверка входных данных: вызов и обработка исключения
Всем привет. Не могу разобраться с проверкой входных данных. Нужно чтобы если я ввел какой либо...

Проверка на корректность введенных данных
дана задача ввести номер телефона пробел и дата в формате день. месяц. год. Выполнить простейшую...

Проверка введенных данных cin на корректность
Вот кусок кода : input1 : cout&lt;&lt;&quot;Введите количество животных которые когда либо жили у вас : &quot;;...

2
24 / 21 / 3
Регистрация: 04.11.2014
Сообщений: 283
11.03.2019, 19:17 2
iSimstix1,
C++
1
2
3
4
5
6
7
8
9
int a, b, c;
while(true){
    cout << "Введите a b c через пробел" << endl;
    cin >> a >> b >> c;
    if(-1000 < a && a < 1000 && -1000 < b && b < 1000 && -1000 < c && c < 1000){
        break;
    } else{
        cout << "Ошибка ввода, повторите ввод." << endl;
}
1
473 / 425 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
11.03.2019, 19:31 3
Лучший ответ Сообщение было отмечено iSimstix1 как решение

Решение

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
#include <iostream>
#include <algorithm>
#include <cmath>
 
using namespace std;
 
bool Check_Value(double value)
{
    if (value > 1000.0 || value < -1000.0)
        return true;
    return false;
}
 
int main()
{
    setlocale(0, "");
    double a,b,c;
    wcout << L"\nПодставьте числа в формулу: " << "(c-b%a)^2\n";
 
    do
    {
        wcout << L"Введите a: "; cin >> a;
        wcout << L"Введите b: "; cin >> b;
        wcout << L"Введите c: "; cin >> c;
        if (Check_Value(a) || Check_Value(b) || Check_Value(c))
            wcout << L"\nНекорректное(ые) число(а). Диапазон значений [-1000; 1000].\n";
    }
    while(Check_Value(a) || Check_Value(b) || Check_Value(c));
 
    wcout << L"Ответ: "<< pow(c-static_cast<int>(b)%static_cast<int>(a),2) << endl;
    wcout << L"\nНажмите на клавишу Enter для завершения программы...";
 
    return 0;
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.03.2019, 19:31
Помогаю со студенческими работами здесь

Портирование кода на С++ (проверка вводимых данных пользователем на корректность)
Требуется портировать код с С# на С++. Код на шарпе - очень простой. В нем не используются языковые...

Проверка правильности входных параметров конструктора
Как проверить допустимость передаваемых входных параметров конструктора класса? Точнее, проверку...

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

Проверка строки на корректность
#include&lt;iostream&gt; #include&lt;cstring&gt; #include &lt;conio.h&gt; using namespace std; int main(){...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru