Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
volan4ik_4ik
0 / 0 / 0
Регистрация: 19.05.2015
Сообщений: 6
#1

Ограничение на ввод чисел и проверка чисел

19.05.2015, 17:23. Просмотров 380. Ответов 6
Метки нет (Все метки)

решить квадратное уравнение. Сделала задачу, а преподаватель сказал, что это слишком легко и усложнила задачу, т.е. теперь нужна проверка чисел и ограничение на ввод, помогите,пожалуйста, нужно через цикл

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
#pragma hdrstop
#pragma argsused
 
#include <stdio.h>
#include <math.h>
 
int main()
{
double a,b,c,x1,x2,d;
printf("BBEDITE 4EPE3 PROBEL a,b,c\n");
scanf("%lf%lf%lf",&a,&b,&c);
 
d=b*b-4*a*c;
if(d>=0)
if(d
{
x1=(b-sqrt(d))/(2*a);
x2=(b+sqrt(d))/(2*a);
printf("x1=%lf x2=%lf\n",x1,x2);
}
else
printf("KOPHEI HET\n");
getchar();
getchar();
getchar();
return 0;
}[CPP]
[/CPP]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2015, 17:23
Ответы с готовыми решениями:

Проверка на ввод чисел
Здравствуйте. Мне стало интересно как примитивно можно сделать проверку на ввод...

Ввод чисел и проверка их делимости
Программа осуществляет ввод чисел и проверяет их делимость на 2 и 3. Сообщение...

Ввод массива чисел и проверка
Проблема проста до безобразия: надо ввести числа в массив int и на ходу...

Проверка правильности ввода. Запретить ввод чисел
Здравствуйте форумчане! Хочу сделать в коде проверку типа: если вводить, где...

Ввод и проверка при вводе чисел в диалогах
Никаких проблем не возникает при вводе десятичных чисел. А вот с...

6
XZentus
201 / 199 / 65
Регистрация: 06.10.2013
Сообщений: 552
19.05.2015, 17:27 #2
Цитата Сообщение от volan4ik_4ik Посмотреть сообщение
проверка чисел
Какая? Я не помню из математики ограничения на параметры квадратного уравнения...
Проверить только что a != 0?

Цитата Сообщение от volan4ik_4ik Посмотреть сообщение
ограничение на ввод
Что именно ограничить надо?

Цитата Сообщение от volan4ik_4ik Посмотреть сообщение
нужно через цикл
?! возможность посчитать 20 разных вариантов?

Строки 24-26 - зачем так много?
0
volan4ik_4ik
0 / 0 / 0
Регистрация: 19.05.2015
Сообщений: 6
19.05.2015, 17:32  [ТС] #3
я,если честно,вообще понятия не имею, все что она сказала,я написала,она сказала,что перед 13 нужно поставить if и делать, я не понимаю сама
0
Kerry_Jr
Эксперт PHP
2210 / 2006 / 940
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
19.05.2015, 17:36 #4
volan4ik_4ik, да еще и формула расчета неверная. Насколько я помню правильно так
http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{-b \pm \sqrt{D}}{2a}
0
volan4ik_4ik
0 / 0 / 0
Регистрация: 19.05.2015
Сообщений: 6
19.05.2015, 17:37  [ТС] #5
Все правильно вы помните,у меня так же
0
Renji
2102 / 1543 / 470
Регистрация: 05.06.2014
Сообщений: 4,473
19.05.2015, 17:40 #6
Хм, почему тема про плюсы, а код опять на чистом C? В любом случае, вот вам проверка чисел:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
cin.exceptions ( std::istream::failbit | std::istream::badbit );
while(true)
{
    try
    {
        double a,b,c;
        cin>>a>>b>>c;
        cout<<a<<" "<<b<<" "<<c<<endl;
        break;
    }
    catch(const std::istream::failure&)
    {
        cin.clear();
        cout<<"криво числа ввел. Давай еще разок"<<endl;
    }
}
0
XZentus
201 / 199 / 65
Регистрация: 06.10.2013
Сообщений: 552
19.05.2015, 17:43 #7
Да нет, у вас не так. До кучи ещё 15 строка лишняя.

В общем, насчет повторения вычислений - заключайте почти всё тело main в цикл do{}while(), в конце спросите у пользователя - надо ли ещё что-нибудь посчитать. Про проверку a - обычный if
C++
1
2
3
4
if(abs(a) < 0.0000001){
    /*пользователь - нехороший человек, ругаемся*/;
    continue; //это с учетом, что цикл уже есть, иначе надо либо еще раз попросить ввести a и заново проверять, либо return 1;
}
0
19.05.2015, 17:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2015, 17:43

Запросить ввод нескольких чисел, и определить, сколько из этих чисел отрицательны
Привет всем!Прошу помочь мне в решении задачи!Надо написать такую...

Необходимо изобразить эту программу, без получения рандомных чисел, а ввод с клавиатуры чисел N
Вычислить сумму отрицательных элементов последовательности из N произвольных...

Ограничение диапазона вводимых чисел
Здравствуйте. У меня возникла проблема с ограничением длины вводимого числа. ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru