26 / 26 / 1
Регистрация: 10.09.2018
Сообщений: 241

Как сделать так, чтобы в указанном код при делении на 0 не писало ошибку?

12.09.2018, 17:41. Показов 1265. Ответов 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
#include "pch.h"
#include <iostream>
 
using namespace std;
 
int main()
{
    int a, b, res;
    char op;
    cout << "\nEnter 1 number:"; cin >> a;
    cout << "\nEnter sign:"; cin >> op;
    cout << "\nEnter 2 number :"; cin >> if (b > < 0) else b; "Error";
    bool f = true;
    switch (op) {
    case '+': res = a + b; break;
    case '-': res = a - b; break;
    case '*': res = a * b; break;
    case '/': res = a / b; break;
    default: cout << "\nError"; f = false;
    }
    if (f) cout << "\nresult :" << res;
    return 0;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.09.2018, 17:41
Ответы с готовыми решениями:

Как сделать так, чтобы при делении на ноль выдавало сообщение об ошибке?
var eList = {}; function AddF( e , f ) { eList = f } function GetF( e ) { if ( eList ) { return eList; }...

Как сделать так чтобы при нажатии на кнопку читался код текстбокса?
такая задача, я хочу записать данные в текст бокс, и чтобы при нажатии на кнопку, выводилось это значение на лист в экселе в определенную...

Как сделать чтобы писало чисто 15\3
Привет. Пример такой d=5 c=10 a=1 g=2 х=d+c b=a+g

6
 Аватар для QuakerRUS
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
12.09.2018, 17:50
Сделать проверку перед делением.

C++
1
if (b != 0)
0
26 / 26 / 1
Регистрация: 10.09.2018
Сообщений: 241
12.09.2018, 17:57  [ТС]
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 "pch.h"
#include <iostream>
 
using namespace std;
 
int main()
{
    int a, b, res;
    char op;
    cout << "\nEnter 1 number:"; cin >> a;
    cout << "\nEnter sign:"; cin >> op;
    cout << "\nEnter 2 number :"; cin >> b;
    bool f = true;
    switch (op) {
    case '+': res = a + b; break;
    case '-': res = a - b; break;
    case '*': res = a * b; break;
        if (b != 0) b; else "Error";
    case '/': res = a / b; break;
    default: cout << "\nError"; f = false;
    }
    if (f) cout << "\nresult :" << res;
    return 0;
}
Не работает))
0
165 / 114 / 59
Регистрация: 12.07.2018
Сообщений: 277
12.09.2018, 18:51
Цитата Сообщение от Egor2287678888 Посмотреть сообщение
Не работает))
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 "pch.h"
#include <iostream>
 
using namespace std;
 
int main()
{
    int a, b, res;
    char op;
    cout << "\nEnter 1 number:"; cin >> a;
    cout << "\nEnter sign:"; cin >> op;
    cout << "\nEnter 2 number :"; cin >> b;
    bool f = true;
    switch (op) {
    case '+': res = a + b; break;
    case '-': res = a - b; break;
    case '*': res = a * b; break;
    case '/': if (b != 0) res = a / b; else {cout << "\nError"; f = false;} break;
    default: cout << "\nError"; f = false;
    }
    if (f) cout << "\nresult :" << res;
    return 0;
}
0
13.09.2018, 12:42
 Комментарий модератора 
Egor2287678888, пожалуйста, прочитайте правила форума.
Особое внимание обратите на пункт 4.9 (порядок оформления кода).
1
 Аватар для COKPOWEHEU
4082 / 2680 / 432
Регистрация: 09.09.2017
Сообщений: 11,900
13.09.2018, 14:10
Цитата Сообщение от Egor2287678888 Посмотреть сообщение
Не работает))
Code
1
2
3
4
5
6
$ g++ main.c -Wall -Wextra
main.c: In function ‘int main()’:
main.c:18:22: warning: statement has no effect [-Wunused-value]
         if (b != 0) b; else "Error";
main.c:18:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
         if (b != 0) b; else "Error";
Компилятор прямым текстом говорит "этот код не будет вызван никогда". Очевидно же, что вы не угадали с местом, куда вставлять. Кстати, пытаться угадать - не самая полезная идея в программировании.
А вот чего вы хотели добиться передачей управления строке "Error" мне вообще непонятно. Как непонятно и то что компилятор не выдал тут ошибку.
0
 Аватар для Серж762
1813 / 884 / 223
Регистрация: 10.02.2018
Сообщений: 3,682
13.09.2018, 15:10
Вроде так:
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>
 
using namespace std;
 
int main()
{
    int a, b;
    double res = 0.0;
    char op;
    cout << "\nEnter 1 number:"; cin >> a;
    cout << "\nEnter sign:"; cin >> op;
    cout << "\nEnter 2 number :"; cin >> b;
    bool f = true;
    switch (op)
     {
      case '+': res = a + b; break;
      case '-': res = a - b; break;
      case '*': res = a * b; break;
      case '/':
          if(b != 0)
           {
            res = (double)a / (double)b;
           }
          else
          {
           cout << "\nError"; f = false;
          }
          break;
 
    default: cout << "\nError"; f = false;
    }
    if (f) cout << "\nresult :" << res;
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.09.2018, 15:10
Помогаю со студенческими работами здесь

Как сделать так чтобы страничка при увеличения разрешения не двигалась в разные стороны, и как сделать чтобы при открытии в опере и в других браузерах
все обьекты на странице не двигались в разные стороны???

Как сделать что бы если равно 0 писало ошибку
Как сделать что бы если равно 0 писало ошибку? Вот я так сделал, это деление... void delenie() { float a = 1, b = 2; cout...

Как сделать так чтобы при изменения условия в while любой код внутри него сразу прекращял выполнятся
есть цикл такого типа while(условие){ if условие 2 if условие 3 ... } как сделать так чтобы при изменения условия в while...

Как сделать чтобы в Edit писало путь к выбраному файлу в FileListBox
Как сделать чтобы в Edit1 писало путь к выбраному файлу в FileListBox1?

Как сделать, чтобы при заполнении массива, дроби, получаемые при делении, округлялись до трех знаков после запятой
Создайте два массива из 10 целых случайных чисел из отрезка и третий массив из 10 действительных чисел. Каждый элемент с i-ым индексом...


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

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

Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru