Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Pakowski398
2 / 2 / 2
Регистрация: 01.10.2016
Сообщений: 66
#1

Табулирование функции (исправить код программы) - C++

14.10.2016, 21:14. Просмотров 261. Ответов 8
Метки нет (Все метки)

Необходимо вычислить значение заданной функции. Осуществить вывод значений аргумента и результатов вычислений значений функции в заданном диапазоне с заданным шагом.
Функция: y=pow(sin(x),2);
Диапазон изменения аргумента: -2*Pi<=x<=2*Pi;
Шаг изменения аргумента: x=x+(Pi/4);
Код программы:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "stdafx.h"
#include <iostream>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{double x,y,i=1.0;
    const double Pi=3.14159;
    cout<<"x="; cin>>x;
    while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
    cout<<"\ny="<<y;
    _gettch();
 
    return 0;
}

http://www.cyberforum.ru/cpp-beginners/thread2142657.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2016, 21:14
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Табулирование функции (исправить код программы) (C++):

Исправить код программы
Всем добрый день. Помогите, пожалуйста. Программа в Microsoft Visual C++ 6.0...

исправить код программы
#include&lt;iostream.h&gt; #include&lt;conio.h&gt; #include&lt;stdlib.h&gt; #include&lt;string.h&gt;...

Исправить код программы
Привет, помогите, пожалуйста. Есть код программы, что нужно включить/добавить,...

Исправить код программы с циклом
Народ, я зашел в тупик. Немного кода наковырял, но с условием цикла запутался,...

Исправить код программы по выводу алфавита
#include &lt;iostream&gt; using namespace std; int main() { char letter; for...

8
Petrolion
24 / 24 / 8
Регистрация: 02.02.2016
Сообщений: 135
Завершенные тесты: 1
14.10.2016, 21:31 #2
Любопытно. А ругается то на что?
Кстати, функции pow() и sin() где-то в программе определены?
Да и _gettch(); все таки выглядит как _getch();
Это на первый взгляд (алгоритм не смотрел)
0
Pakowski398
2 / 2 / 2
Регистрация: 01.10.2016
Сообщений: 66
14.10.2016, 21:35  [ТС] #3
Дело в том, что сама программа запускается, но при попытке задать число из заданного диапазона для х, ответ выдает всегда одинаковый.
0
Petrolion
24 / 24 / 8
Регистрация: 02.02.2016
Сообщений: 135
Завершенные тесты: 1
14.10.2016, 21:51 #4
Не уверен что программа запускается (пусть кинут в меня камень).
Например без подключения #include <math.h> функции не определены.
Может вы привели не полный текст программы?
Когда что-то спрашиваете постарайтесь дать как можно более развернутую информацию.
Какое значение выдает?
Кстати, а зачем функцию все время считать внутри цикла? Ее можно и за цикл вынести, все равно она только значение последней итерации выдает.
Кроме того расчет будет только если x >= 1 т.к. i = 1.0
Возможно вы неверно поняли условие задачи. Скорее всего вывод результатов тоже нужно осуществлять внутри цикла.
0
Pakowski398
2 / 2 / 2
Регистрация: 01.10.2016
Сообщений: 66
14.10.2016, 21:59  [ТС] #5
Я уже разобрался. Извините за отнятое время.
0
Manowar
1552 / 484 / 164
Регистрация: 12.03.2016
Сообщений: 1,825
Завершенные тесты: 1
14.10.2016, 22:06 #6
Цитата Сообщение от Petrolion Посмотреть сообщение
(пусть кинут в меня камень).
Можно маленький. Запускается и даже значение y выдает, а вот условию задания программа совсем не соответствует.
0
GbaLog-
Любитель чаепитий
3156 / 1462 / 462
Регистрация: 24.08.2014
Сообщений: 5,179
Записей в блоге: 1
Завершенные тесты: 2
14.10.2016, 22:16 #7
Лучший ответ Сообщение было отмечено Pakowski398 как решение

Решение

Цитата Сообщение от мановар Посмотреть сообщение
Запускается и даже значение y выдает
Да, но только в VS, в GCC выдаёт вот эту ошибку при вот этом коде:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "stdafx.h"
#include <iostream>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{double x,y,i=1.0;
    const double Pi=3.14159;
    cout<<"x="; cin>>x;
    while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
    cout<<"\ny="<<y;
    _gettch();
 
    return 0;
}
Код
source_file.cpp:1:20: fatal error: stdafx.h: No such file or directory
 #include "stdafx.h"
                    ^
compilation terminated.
Ладно, исправим её, закомментировав строку 1:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//#include "stdafx.h"
#include <iostream>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{double x,y,i=1.0;
    const double Pi=3.14159;
    cout<<"x="; cin>>x;
    while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
    cout<<"\ny="<<y;
    _gettch();
 
    return 0;
}
Код
source_file.cpp:6:22: error: ‘_TCHAR’ has not been declared
 int _tmain(int argc, _TCHAR* argv[])
                      ^
source_file.cpp: In function ‘int _tmain(int, int**)’:
source_file.cpp:10:29: error: ‘sin’ was not declared in this scope
     while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
                             ^
source_file.cpp:10:32: error: ‘pow’ was not declared in this scope
     while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
                                ^
source_file.cpp:12:13: error: ‘_gettch’ was not declared in this scope
     _gettch();
Исправляем ошибки последовательно:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//#include "stdafx.h"
#include <iostream>
using namespace std;
 
 
int main(int argc, char* argv[])
{double x,y,i=1.0;
    const double Pi=3.14159;
    cout<<"x="; cin>>x;
    while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
    cout<<"\ny="<<y;
    _gettch();
 
    return 0;
}
Код
source_file.cpp: In function ‘int main(int, char**)’:
source_file.cpp:10:29: error: ‘sin’ was not declared in this scope
     while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
                             ^
source_file.cpp:10:32: error: ‘pow’ was not declared in this scope
     while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
                                ^
source_file.cpp:12:13: error: ‘_gettch’ was not declared in this scope
     _gettch();
             ^
Дальше:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//#include "stdafx.h"
#include <iostream>
#include <cmath>
using namespace std;
 
 
int main(int argc, char* argv[])
{double x,y,i=1.0;
    const double Pi=3.14159;
    cout<<"x="; cin>>x;
    while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
    cout<<"\ny="<<y;
    _gettch();
 
    return 0;
}
Код
source_file.cpp: In function ‘int main(int, char**)’:
source_file.cpp:13:13: error: ‘_gettch’ was not declared in this scope
     _gettch();
             ^
И наконец:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//#include "stdafx.h"
#include <iostream>
#include <cmath>
using namespace std;
 
 
int main(int argc, char* argv[])
{double x,y,i=1.0;
    const double Pi=3.14159;
    cout<<"x="; cin>>x;
    while(i<=x) {y=pow(sin(i),2); i=i+(Pi/4);}
    cout<<"\ny="<<y;
 
    return 0;
}
При введении x = 1.
Код
y=0.708073

Извините, что отнял у Вас время,
просто делать нечего, страдаю фигнёй.
1
Petrolion
24 / 24 / 8
Регистрация: 02.02.2016
Сообщений: 135
Завершенные тесты: 1
14.10.2016, 22:29 #8
мановар, вы правы в новой версии MS VS пускается (через ОООчень длинную цепь вызовов изiostream. А в старой у меня такой финт не проходил :-( вот и вспомнил... а зря (камень поймал).
0
Manowar
1552 / 484 / 164
Регистрация: 12.03.2016
Сообщений: 1,825
Завершенные тесты: 1
14.10.2016, 22:42 #9
Цитата Сообщение от GbaLog- Посмотреть сообщение
Извините, что отнял у Вас время,
просто делать нечего, страдаю фигнёй.
Сегодня пятница, конец рабочей недели, все грехи прощаются, аминь.

Добавлено через 2 минуты
Цитата Сообщение от Petrolion Посмотреть сообщение
в новой версии MS VS пускается
в новой, это в какой? В 10-й уже работает, куда уж старше.
0
14.10.2016, 22:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.10.2016, 22:42
Привет! Вот еще темы с решениями:

Исправить код программы, завершающейся с ошибкой
Помогите. Нужна помощь. Программа крашится и пишет Return value 3221225477.Что...

Вычислить значение функции(исправить готовый код)
Вычислить значение функции y=(x+5.2)\(x+1)(3x+4), на промежутке с шагом h=0.3....

Функции с переменным количеством параметров, stdarg.h. Исправить код
Почему не работает? В итоге получается 0, а если в функции все что надо...

Найти ошибки в определении функции поиска (исправить код)
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; struct Cours...


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

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

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