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

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

Войти
Регистрация
Восстановить пароль
 
Daniil Gavr
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 2
#1

Решение по формулам - C++

24.11.2014, 09:23. Просмотров 163. Ответов 4
Метки нет (Все метки)

В строке номер 24 (0.75*|COS B|), где B = ПИ/2, т.е. "0", имеем 0.75*0=0, но программа даёт ответ 0.75, подскажите пожалуйста, в чём ошибка?

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 <conio.h>      //для функции _getch
#include <iostream>     //Для функций cin, cout
#include <math.h>       //Для функций exp, pow
 
using namespace std;
 
 
double x,a,b;    // Исходные данные
double y,p,z;    // Результат
 
int main(int argc)
{
        setlocale (LC_ALL, "Russian");
        
        cout <<"Введите x="; // Ввод исходных данных
        cin >> x;
        cout <<"Введите a=";
        cin >> a;
        cout <<"Введите b=";
        cin >> b;
 
        y=(exp(x-2.7)+3)/(x+1.3); // Вычисления
        
        p=0.75*fabs(cos(b));
        
        z=(y+p+a)/((y*y)+p);
 
        cout <<"p= "<<p<<endl;
        cout <<"Результат"<<endl; // Вывод результата
        cout <<"y="<<y<<" z="<<z<<endl;
        
        _getch();      
    return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2014, 09:23     Решение по формулам
Посмотрите здесь:

расчет по двум формулам C++
C++ расчет по формулам
Вычисления по формулам C++
C++ Задача с вычислениями по формулам
Программа расчета по двум формулам. Результаты вычислений по 2 формулам должны совпадать C++
Вычисления по формулам C++
Вычисление по формулам C++
C++ Вычисления по формулам
C++ Расчёт значений по формулам
C++ Расчёт по двум формулам
Вычислить значения по формулам C++
C++ Расчет по двум формулам

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Max Dark
В поиске работы
 Аватар для Max Dark
1548 / 1401 / 501
Регистрация: 09.10.2013
Сообщений: 3,185
Записей в блоге: 8
Завершенные тесты: 2
24.11.2014, 09:45     Решение по формулам #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Т.е. Вы вводите 0? так же cos(0) = 1...
А Pi/2 ~ 1.5707963267949
Daniil Gavr
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 2
24.11.2014, 09:52  [ТС]     Решение по формулам #3
Ох, точно, слона то я и не заметил, всё так просто, большое спасибо!
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
24.11.2014, 10:08     Решение по формулам #4
Cra3y, функция cos принимает значение в радианах. пи/2 радиан это 90 градусов. cos 90 градусов == 0.

Daniil Gavr, программа выдает не 0.75, а что то вроде -7.75587e-14. Что очень близко к нулю. Все дело в том, что числа с плавающей точкой хранят приближенные значения, а не точные. Попробуйте использовать манипулятор потока fixed, Вам этого должно хватить.
C++
1
cout << fixed <<"p= "<<p<<endl;
Max Dark
24.11.2014, 10:15     Решение по формулам
  #5

Не по теме:

Цитата Сообщение от Toshkarik Посмотреть сообщение
функция cos принимает значение в радианах.
я в курсе

Yandex
Объявления
24.11.2014, 10:15     Решение по формулам
Ответ Создать тему
Опции темы

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