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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
NIKXXL
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 20
#1

Вычислить выражения - C++

28.09.2010, 22:34. Просмотров 1095. Ответов 16
Метки нет (Все метки)

Здравствуйте. Подскажите как правильно записать выражения y и z. Появляется окно для ввода значения X, но после ввода числа появляется ошибка в строке y=(3*pow.... ну и окно предупреждения, которое на рисунке. Также на рисунке сам пример задачи.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#pragma argsused
#include<stdio.h>
#include <conio.h>
#include<math.h>
#include<iostream>
 
using namespace std;
void main()
{
double x,y,z;
cout<<"Vvedite x:\n";
cin>>x;
y=(3*pow(x,2)-1.7)/pow((x-2*y),3)+pow((y-2*x),3)/pow(y,2)*pow((2*x-6*y),2);
z=pow((0.7-x),3)+pow(y,2)/(x-y)+pow((2*y-4*x),4)/fabs(pow((x+y),2)-5);
 
cout<< "X: " << x;
getch ();
 
}
вот само задание:
Вычислить значение функции y и z по формулам при различных вещественных типах данных (float и double). Параметр x вводится с клавиатуры. Вычисления следует выполнять с использованием промежуточных переменных. Сравнить и объяснить полученные результаты.
Я так понял нужно просто просто поменять double на float?
0
Миниатюры
Вычислить выражения   Вычислить выражения  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2010, 22:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычислить выражения (C++):

Дан файл, содержащий текст и арифметические выражения. Выписать и вычислить все выражения - C++
Дан файл, содержащий текст и арифметические выражения вида a®b, где ® — один из знаков +, -, *, / . Выписать все арифметические...

Вычислить выражения - C++
Помогите пожалуйста написать код

Вычислить выражения - C++
http://tnkscr.net/9waZo3.jpg при x=0.03981,y=-1625,z=0.521; помогите решить,не получается. #include&lt;iostream&gt; ...

Вычислить значение выражения - C++
не могу выявить в чем ошибка #include &lt;iostream&gt; #include&lt;stdio.h&gt; #include&lt;conio.h&gt; #include&lt;math.h&gt; #include &lt;cmath&gt; using...

Вычислить значение выражения - C++
Пожалуйста, весь код.

Вычислить значение выражения - C++
помгите плиз сделать

16
mrMRak
38 / 38 / 3
Регистрация: 02.06.2010
Сообщений: 105
28.09.2010, 22:52 #2
не, деление на ноль.
Переменные z,y - не имеют начального значения.
0
NIKXXL
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 20
28.09.2010, 22:58  [ТС] #3
это наверно из-за того что я не правильно возвел выражение в скобках в степень?
0
CyBOSSeR
Эксперт С++
2304 / 1674 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
28.09.2010, 23:01 #4
Цитата Сообщение от NIKXXL Посмотреть сообщение
Я так понял нужно просто просто поменять double на floa
Нет, для начала нужно решить задачу математически - в обоих формулах по две неизвестных.
0
NIKXXL
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 20
28.09.2010, 23:10  [ТС] #5
Цитата Сообщение от CyBOSSeR Посмотреть сообщение
Нет, для начала нужно решить задачу математически - в обоих формулах по две неизвестных.
Ход решения кажется правильно написан. Вот нашел похожий пример, но там считает все нормально http://www.cyberforum.ru/cpp/thread22395.html
0
mrMRak
38 / 38 / 3
Регистрация: 02.06.2010
Сообщений: 105
28.09.2010, 23:17 #6
у вас в выражениях и слева и справа неизвестные. такое решить надо математически. или упрощайте пока не станет решение однозначным, как в примере что вы привели :
cin>>x;
y=((pow(x,2)+10.2)/(2-0.047*x))-(pow(x,2)/4);

слева игрек, неизвестное, а справа все известно. или возможно в вашем задании указывают чему равен игрек изначально.
0
silent_1991
Эксперт С++
4987 / 3044 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
28.09.2010, 23:22 #7
Сначала неплохо бы выразить y через x (в первой формуле) и подставить полученный y во вторую. Только тогда можно говорить о вычислении y и z при известном x.
0
NIKXXL
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 20
28.09.2010, 23:34  [ТС] #8
Точно, как то не обратил внимание на неизвестный y. И как только получу значение y, допустим y=5, можно будет вставить это в код и все? Х же будет вводиться вручную.
0
CyBOSSeR
Эксперт С++
2304 / 1674 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
29.09.2010, 00:08 #9
NIKXXL, для начала решите задачу математически - в уравнениях должно остаться только по одной неизвестной. Затем попробуйте написать программу для расчета. Если что-то не получится - здесь Вам помогут.
0
NIKXXL
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 20
29.09.2010, 00:21  [ТС] #10
Цитата Сообщение от CyBOSSeR Посмотреть сообщение
NIKXXL, для начала решите задачу математически
не очень приятное дело эта математика) ну чтож, буду пытаться решать пример.
0
NIKXXL
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 20
30.09.2010, 18:44  [ТС] #11
Пример оказался не тот, точнее функция y=. Что-то не получается записать строку где корень икса.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<stdio.h>
#include <conio.h>
#include<math.h>
#include<iostream>
 
using namespace std;
void main()
{
double x,y,z;
cout<<"Vvedite x:\n";
cin>>x;
y=(3*pow(x,2)-1.7)/pow((x-2*pow(x,2)),3)+pow((sqrt double x)-(2*x),3)/pow(x,2)*pow((2*x-pow(6,3)*sqrt(x+3),2);
z=pow((0.7-x),3)+pow(y,2)/(x-y)+pow((2*y-4*x),4)/fabs(pow((x+y),2)-5);
cout<< "X: " << x;
getch ();
}
0
Миниатюры
Вычислить выражения  
silent_1991
Эксперт С++
4987 / 3044 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
30.09.2010, 19:02 #12
NIKXXL,
y = ((3.0 * x * x - 1.7) / pow(x - 2.0 * x * x, 3.0) + pow(sqrt(x) - 2.0 * x, 3.0) / (x * x)) * pow(2.0 * x - 6.0 * pow(x + 3.0, 1.0 / 3.0), 2.0);
Ваш вариант не смотрел...
1
NIKXXL
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 20
30.09.2010, 19:33  [ТС] #13
Цитата Сообщение от silent_1991 Посмотреть сообщение
NIKXXL,
y = ((3.0 * x * x - 1.7) / pow(x - 2.0 * x * x, 3.0) + pow(sqrt(x) - 2.0 * x, 3.0) / (x * x)) * pow(2.0 * x - 6.0 * pow(x + 3.0, 1.0 / 3.0), 2.0);
Ваш вариант не смотрел...
я подправил, все запускается, но почему то если ввожу x например 5, то и получаю в результате 5. как будто не считает программа пример, обходит стороной.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<stdio.h>
#include <conio.h>
#include<math.h>
#include<iostream>
 
using namespace std;
void main()
{
double x,y,z;
cout<<"Vvedite x:\n";
cin>>x;
y=(3*pow(x,2)-1.7)/pow((x-2*pow(x,2)),3)+pow(sqrt(x)-(2*x),3)/pow(x,2)*pow(2*x-6*pow(x+3,1/3),2);
z=pow((0.7-x),3)+pow(y,2)/(x-y)+pow((2*y-4*x),4)/fabs(pow((x+y),2)-5);
cout<< "X: " << x;
getch ();
}
0
mrMRak
38 / 38 / 3
Регистрация: 02.06.2010
Сообщений: 105
30.09.2010, 19:34 #14
а разве Х изменяется? выводите y или z.
1
NIKXXL
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 20
30.09.2010, 19:50  [ТС] #15
точно) невнимательно я ввел X. А вот в условии: Вычислить значение функции y и z по формулам при различных вещественных типах данных (float и double). Это получилось для double, а для float код можно оставить таким же, т.е. заменить double на float?
0
30.09.2010, 19:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.09.2010, 19:50
Привет! Вот еще темы с ответами:

Вычислить значение выражения - C++
Народ, помогите написать программку программирование циклических алгоритмов, она не очень сложная, но написать я ее не могу=(, а надо уже...

Вычислить значение выражения - C++
z = sqrt{x}- \frac{x}{x+1} + {0.2}_{x} x = 6.4

Вычислить значение выражения - C++
Может кто нить помочь в написание трех простеньких программок 1) вычисление выражения 2) массивы 3) Битовые операции. Упакованные...

Вычислить значение выражения - C++
Программа по условию. Линейный алгоритм 1 ФОТО. Ветвящийся алгоритм 2 ФОТО.


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

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

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