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

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

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

Применить функцию для упрощения вычислений - C++

30.06.2013, 21:09. Просмотров 899. Ответов 21
Метки нет (Все метки)

в данной программе для упрощения вычислений надо ввести дополнительную функцию. Помогите, пожалуйста, найти ошибку. Компилятор говорит об ошибке в синтаксисе, никак найти не могу.
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <windows.h>
double easy(double a, double x, double b, double p)
int stepen = pow((a*pow(x,2)+b), p);
{
return stepen
}
main()
{
double x,y,a,b,c,d,g,r,z,w;
char str[50];
textbackground(2);
textcolor(15);
clrscr();
CharToOem("\nÂâåäèòå x:\n", str);
printf(str);
scanf("%f",&x);
CharToOem("\n\nÂâåäèòå y:\n", str);
printf(str);
scanf("%f",&y);
CharToOem("\n\nÂâåäèòå z:\n", str);
printf(str);
scanf("%f",&z);
CharToOem("\n\nÂâåäèòå  a:\n", str);
printf(str);
scanf("%f",&a);
CharToOem("\n\nÂâåäèòå  b:\n", str);
printf(str);
scanf("%f",&b);
CharToOem("\n\nÂâåäèòå  c:\n", str);
printf(str);
scanf("%f",&c);
CharToOem("\n\nÂâåäèòå  g:\n", str);
printf(str);
scanf("%f",&g);
CharToOem("\n\nÂâåäèòå  r:\n", str);
printf(str);
scanf("%f",&r);
CharToOem("\n\nÂâåäèòå  d:\n", str);
printf(str);
scanf("%f",&d);
printf("\n");
w=easy(a,x,b,2)/easy(c,y,d,3)+easy(g,z,r,0,5);
}
printf("\nw = %f",w);
{
CharToOem("\nÄëÿ âûõîäГ* Г*Г*æìèòå ГЄГ«Г*ГўГЁГёГі Enter", str);
printf(str);
getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2013, 21:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Применить функцию для упрощения вычислений (C++):

Разработать (и применить) для классов A и B дружественную функцию, позволяющую определять текущую дату и время - C++
Класс А определяет текущее системное время на компьютере Класс В определяет дату, изменение которой происходит в 24 часа системного...

Создание цикла для упрощения кода - C++
есть часть кода,в которой реализуется расчёт каких либо переменных. кто подскажет как реализвать цикл,именно для таких расчётов. трудность...

Как применить функцию в потомке - C++
Есть 3 класса: A предок B, B предок C. У А есть функция foo, к которой хочет обратиться метод blah функции С. Помимо этого, blah хочет...

Применить функцию к каждому столбцу матрицы - C++
записать функцию P,которая в заданном одномерном массиве x элементов типа float, приравнивает нулю все элементы Xj,для которых...

Программа упрощения полиномов - C++
Добрый день! Нуждаюсь в помощи или совете. Столкнулся со следующей задачей: на вход программы из текстового файла поступает выражение...

Создать универсальную программу для геометрических вычислений - C++
Здравствуйте! Я 0 в программировании и у меня возникла проблема.:help: Надо составить универсальную программу для решения математической...

21
Виктор_Сен
33 / 26 / 1
Регистрация: 01.08.2011
Сообщений: 176
30.06.2013, 21:19 #2
Скорее всего нужно писать int main(). И потом нет кода для функции easy, которая используется, поэтому и не компилируется.
1
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
30.06.2013, 21:22 #3
Цитата Сообщение от Pendalfik Посмотреть сообщение
C
1
2
3
{
return stepen
}
Что это? Пишите сразу уж и ошибки компиляции... и код стоит форматировать, так что-то понять затруднительно.
0
Pendalfik
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 31
30.06.2013, 21:23  [ТС] #4
Простите за недогадливость, но почему нет кода? Я же прописываю её выше main? Или что-то не так понимаю?
0
Pendalfik
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 31
30.06.2013, 21:28  [ТС] #5
Цитата Сообщение от gray_fox Посмотреть сообщение
Что это? Пишите сразу уж и ошибки компиляции... и код стоит форматировать, так что-то понять затруднительно.
Прилагаю ошибки компиляции
0
Миниатюры
Применить функцию для упрощения вычислений  
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
30.06.2013, 21:28 #6
Pendalfik, у вас просто синтаксис неверный, я не сразу понял, что вы хотите сделать здесь
Цитата Сообщение от Pendalfik Посмотреть сообщение
C++
1
2
3
4
5
double easy(double a, double x, double b, double p)
int stepen = pow((a*pow(x,2)+b), p);
{
return stepen
}
вроде как функция определяется? Предположу что так
C++
1
2
3
4
5
6
7
#include <cmath>   // вместо #include <math.h>
 
// ...
 
double easy(double a, double x, double b, double p) {
   return std::pow(a * std::pow(x, 2.) + b, p);
}
1
Pendalfik
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 31
30.06.2013, 21:37  [ТС] #7
Цитата Сообщение от gray_fox Посмотреть сообщение
Pendalfik, у вас просто синтаксис неверный, я не сразу понял, что вы хотите сделать здесь

вроде как функция определяется? Предположу что так
C++
1
2
3
4
5
6
7
#include <cmath>   // вместо #include <math.h>
 
// ...
 
double easy(double a, double x, double b, double p) {
   return std::pow(a * std::pow(x, 2.) + b, p);
}
Изменила синтаксис - ошибки все те же.....

Добавлено через 5 минут
На cmath и std стало выбивать еще две ошибки
0
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
30.06.2013, 21:40 #8
Цитата Сообщение от Pendalfik Посмотреть сообщение
На cmath и std стало выбивать еще две ошибки
Ну, учитывая Borland C++... попробуйте
C++
1
2
3
4
5
6
7
#include <math.h>
 
// ... 
 
double easy(double a, double x, double b, double p) {
   return pow(a * pow(x, 2.) + b, p);
}
0
Thinker
Эксперт С++
4228 / 2202 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.06.2013, 21:41 #9
вот так запускается:
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <windows.h>
 
double easy(double a, double x, double b, double p)
{
double stepen = pow((a*pow(x,2)+b), p);
return stepen;
}
 
main()
{
double x,y,a,b,c,d,g,r,z,w;
char str[50];
//textbackground(2);
//textcolor(15);
//clrscr();
CharToOem("\nВведите x:\n", str);
printf(str);
scanf("%lf",&x);
CharToOem("\n\nВведите y:\n", str);
printf(str);
scanf("%lf",&y);
CharToOem("\n\nВведите z:\n", str);
printf(str);
scanf("%lf",&z);
CharToOem("\n\nВведите  a:\n", str);
printf(str);
scanf("%lf",&a);
CharToOem("\n\nВведите  b:\n", str);
printf(str);
scanf("%lf",&b);
CharToOem("\n\nВведите  c:\n", str);
printf(str);
scanf("%lf",&c);
CharToOem("\n\nВведите  g:\n", str);
printf(str);
scanf("%lf",&g);
CharToOem("\n\nВведите  r:\n", str);
printf(str);
scanf("%lf",&r);
CharToOem("\n\nВведите  d:\n", str);
printf(str);
scanf("%lf",&d);
printf("\n");
//w=easy(a,x,b,2)/easy(c,y,d,3)+easy(g,z,r,0,5);
 
printf("\nw = %f",w);
 
CharToOem("\nДля выхода нажмите клавишу Enter", str);
printf(str);
getch();
}
посмотрите на строчку
C++
1
w=easy(a,x,b,2)/easy(c,y,d,3)+easy(g,z,r,0,5);
количество аргументов функции easy разное
0
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
30.06.2013, 21:41 #10
У меня его (Borland C++) всё равно нет, так что сам я проверить не могу, если что.
0
Pendalfik
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 31
30.06.2013, 21:41  [ТС] #11
Убрала cmath и std ошибок стало 3
0
Виктор_Сен
33 / 26 / 1
Регистрация: 01.08.2011
Сообщений: 176
30.06.2013, 21:43 #12
Цитата Сообщение от Pendalfik Посмотреть сообщение
C
1
2
3
4
5
6
7
8
w=easy(a,x,b,2)/easy(c,y,d,3)+easy(g,z,r,0,5);
}
printf("\nw = %f",w);
{
CharToOem("\nДля выхода нажмите клавишу Enter", str);
printf(str);
getch();
}
Pendalfik, у Вас здесь после w=easy... закрывающая скобка лишняя и после printf... тоже, получаетя, всё что ниже w=easy... не входит в функцию main()
1
Pendalfik
0 / 0 / 0
Регистрация: 18.05.2013
Сообщений: 31
30.06.2013, 21:46  [ТС] #13
Цитата Сообщение от Виктор_Сен Посмотреть сообщение
Pendalfik, у Вас здесь после w=easy... закрывающая скобка лишняя и после printf... тоже, получаетя, всё что ниже w=easy... не входит в функцию main()
Спс, ошибки осталась одна.....
0
Миниатюры
Применить функцию для упрощения вычислений  
Виктор_Сен
33 / 26 / 1
Регистрация: 01.08.2011
Сообщений: 176
30.06.2013, 21:46 #14
Цитата Сообщение от Thinker Посмотреть сообщение
[C++]w=easy(a,x,b,2)/easy(c,y,d,3)+easy(g,z,r,0,5);[/С++]
Здесь наверно должно быть не 0,5 а 0.5
1
Thinker
Эксперт С++
4228 / 2202 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
30.06.2013, 21:47 #15
Цитата Сообщение от Виктор_Сен Посмотреть сообщение
Здесь наверно должно быть не 0,5 а 0.5
ну, это автору программы виднее, может и так
1
30.06.2013, 21:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.06.2013, 21:47
Привет! Вот еще темы с ответами:

Применение функций для вычислений в различных системах счисления - C++
Разработать программу на языке С++ для решения следующей задачи. Заданы два числа — А и B, первое в системе счисления с основанием p, ...

Разработать функцию для сортировки одномерных массивов А и В и организовать функцию для поиска элементов, которые имеются в одном экземпляре или тольк - C++
Разработать функцию для сортировки одномерных массивов А и В и организовать функцию для поиска элементов, которые имеются в одном...

Как заново начать ввод данных для новых вычислений - C++
Прошу помочь. Срочно. Спасибо. Мы ввели cin&gt;&gt;a&gt;&gt;b&gt;&gt;c; Как заного считать a с первой строки ввода данных? Значения a,b,c каждый раз...

Как применить new, точнее для чего это нужно? - C++
Выполняю упражнение с книги. Условие можно увидеть на скрине ниже представлен код. Возникли следующие вопросы: 1. как применить new,...


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

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

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