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

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

Войти
Регистрация
Восстановить пароль
 
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
#1

Подскажите пожалуйста, что не так - C++

05.03.2013, 01:29. Просмотров 338. Ответов 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
28
29
30
31
32
#include<iostream>
#include<conio.h>
using namespace std;
 
int main()
{
    double a,b,c,d,r;
    char znak;
    char i;
 
    do
    {
    cout << "Vvedite pervui operand,znak i vtoroi operand: "; cin >> a >> b >> znak >> c >> d;
 
   switch(znak)
    {
        case '+': r= (a*d + b*c)/(b*d); break;
        case '-': r= (a*d-b*c)/(b*d); break;
        case '*': r= (a*c)/(b*d); break;
        case '/': r= (a*d)/(b*c); break;
 
    }
    cout << "Rezyl'tat raven : " << r;
    cout << "\nEwe raz?n/y\n";
    i = getche();
    cout << endl;
 
    }
    while(i != 'n');
 
    return 0;
}

 Комментарий модератора 
Запрещено размещать задания в виде картинок и других файлов с их текстом. Перепечатайте.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.03.2013, 01:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подскажите пожалуйста, что не так (C++):

подскажите пожалуйста, что не так? - C++
Здравствуйте. У меня вопрос по поводу задачи: найти букву, чаще встречающуюся в тексте. Т.е. я ввожу массив из элементов,...

Подскажите пожалуйста что не так - C++
Вот выражение: e2/3+e3/4+e4/5+...+e9/10 Вроде компилится, консоль запускается, но выражение не высчитывает. Вот код: #include...

Подскажите,пожалуйста ,что не так с кодом! - C++
Не могу понять,что с кодом.Если не сложно,то прокомментируйте пожалуйста #include &lt;stdio.h&gt; #include &lt;string.h&gt; #define ...

Подскажите пожалуйста,что нужно сделать,что бы отображался русский язык?? - C++
Добрый вечер,формучани! После компиляции VS 12 у меня место русского языка показывает неизвестные иероглифы. Подскажите пожалуйста,что...

Как сделать так, чтобы условие начало работать?Подскажите,пожалуйста - C++
Здравствуйте. Прошу,подскажите,пожалуйста, ступор уже. Вот прога: for(n=1;n&lt;=100;n++) do { P0=1/(exp(r,n));...

Проверьте пожалуйста, что не так? - C++
условие задачи: написать и протестировать функцию, которая находит сумму всех цифр введенного целого числа, если оно является простым и...

6
ijonhson
47 / 47 / 1
Регистрация: 09.03.2011
Сообщений: 584
05.03.2013, 06:50 #2
всё правильно считает программа разве что результат в дробях не выдаёт
0
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
05.03.2013, 15:30  [ТС] #3
Ввожу к примеру 8, 85 + 8 , 85 показывает что сумма равна 0.188235
Нашел топ на форуме Решение всех упражнений из книги Р. Лафоре "Объектно-ориентированное программирование в С++"
"Решение глава 3 задача №12" парень чуть по другому сделал. Так вот его программа показывает 3.2.
Непонятно.
0
XRuZzz
Антикодер
702 / 608 / 31
Регистрация: 15.09.2012
Сообщений: 2,552
05.03.2013, 15:42 #4
8/85 + 8/85 = 0.188235

поэтому у вас правильные результаты - это факт
1
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
05.03.2013, 19:02  [ТС] #5
А почему тогда разница у нас такая? У нас формулы одинаковые. Единственное не могу понять зачем он там 2 переменные char подставил под ввод данных из клавиатуры (cin >>a >>d1 >>b >>ch >>c >>d2 >>d). Причем именно у него программа не запрашивает во время ввода. Т.е. вводятся только a,b,c,d. Если же я подставлял себе их то у меня вводятся все 7 переменных и если введу что-то не то, сразу же зацикливание : )
0
ijonhson
47 / 47 / 1
Регистрация: 09.03.2011
Сообщений: 584
05.03.2013, 19:48 #6
в программу надо вводить 4 цифры,пример: 8,85 1,0 далее знак +или-или*или/ дплее 8,85 1,0 программа производит математические действия с дробями действительных чисел

Добавлено через 6 минут
программа не выдаёт ошибки если пользователь не ввёл числитель или знаменатель или вместо +-*/ ввёл другой символ я бы добавил проверку правильности ввода
1
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
05.03.2013, 19:54  [ТС] #7
А у него в программе получается 7 операндов фигурируют в процессе ввода. Но вводятся только 5. Если я так делаю как у него, то у меня вводятся все 7. Что для меня и странно.

Спасибо что отозвались! Кликнул на "спасибо" обоим.
0
05.03.2013, 19:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.03.2013, 19:54
Привет! Вот еще темы с ответами:

скажите пожалуйста что не так? - C++
пишет ошибку &quot;Необработанное исключение в &quot;0x0f3fde8f (msvcr100d.dll)&quot; в &quot;lab2.exe&quot;: 0xC0000005: Нарушение прав доступа при записи...

Подскажите что не так? - C++
Нужно заменить цифры в числе на ноль, если цифра равна &quot;a&quot;. А затем вывести получившееся число. число N - натуральное, а - является...

Подскажите, что не так? - C++
//bow.h using namespace std; class Bow { string color; bool drawn; int arrows;

Подскажите что не так ? - C++
#include &quot;stdafx.h&quot; #include &quot;iostream&quot; #include &lt;math.h&gt; using namespace std; int main() { double x,y,n; ...


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

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

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