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

Разработка и отладка циклических алгоритмов и программ - C++

Восстановить пароль Регистрация
 
SpartanecLexa
0 / 0 / 0
Регистрация: 24.10.2012
Сообщений: 164
25.09.2013, 09:30     Разработка и отладка циклических алгоритмов и программ #1
Значение аргумента x изменяется от a до b с шагом h. Для каждого x найти значения функции Y(x), суммы S(x) и |Y(x)-S(x)| и вывести в виде таблицы. Значения a,b,h и n вводятся с клавиатуры. Так как значение S(x) является рядом разложения функции Y(x). Значения S и Y для данного аргумента x должны совпадать в целой части и в первых двух-четырех позициях после десятичной точки.
Миниатюры
Разработка и отладка циклических алгоритмов и программ  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2013, 09:30     Разработка и отладка циклических алгоритмов и программ
Посмотрите здесь:

Разработка и отладка алгоритмов и программ с использованием указателей. C++
Разработка и отладка алгоритмов и программ с использованием указателей C++
C++ Разработка и отладка алгоритмов и программ с применением пользовательских функций
Разработка и отладка алгоритмов и программ по созданию и обработке файлов C++
Разработка и отладка алгоритмов и программ с использованием указателей C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
HedgehogLu
 Аватар для HedgehogLu
146 / 67 / 1
Регистрация: 04.09.2013
Сообщений: 250
25.09.2013, 10:04     Разработка и отладка циклических алгоритмов и программ #2
и что с этим не так?
SpartanecLexa
0 / 0 / 0
Регистрация: 24.10.2012
Сообщений: 164
25.09.2013, 10:20  [ТС]     Разработка и отладка циклических алгоритмов и программ #3
Цитата Сообщение от HedgehogLu Посмотреть сообщение
и что с этим не так?
помогите решить, в С++ не знаю как решать
HedgehogLu
 Аватар для HedgehogLu
146 / 67 / 1
Регистрация: 04.09.2013
Сообщений: 250
25.09.2013, 10:34     Разработка и отладка циклических алгоритмов и программ #4
ну тут все достаточно просто. все необходимое указано в задании.
Сначала напишем пару функций которые бы вычисляли значения Y и S соответственно первой функции параметром передается x а второй x и n.

Потом в основном коде программ вы с клавиатуры запрашиваете значения a, b, h, n
делаете цикл для переменной х от a до b с шагом h. И для каждого значения х вызываете соответввующие функции. и получив результаты выводите слегка отформатировав их на экран. таким образом по окончанию цикла у вас и получится табличка.

Кстати в функции S так же будет использован цикл
SpartanecLexa
0 / 0 / 0
Регистрация: 24.10.2012
Сообщений: 164
25.09.2013, 10:49  [ТС]     Разработка и отладка циклических алгоритмов и программ #5
само решение можете написать?
HedgehogLu
 Аватар для HedgehogLu
146 / 67 / 1
Регистрация: 04.09.2013
Сообщений: 250
25.09.2013, 11:09     Разработка и отладка циклических алгоритмов и программ #6
теоретически да, но к сожалению только через пару часов, т.к. на работе работой отвлекли
es_
 Аватар для es_
198 / 198 / 46
Регистрация: 14.01.2013
Сообщений: 446
25.09.2013, 11:28     Разработка и отладка циклических алгоритмов и программ #7
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
55
56
57
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <math.h>
 
using namespace std;
int fackt(int k)
{
    int f=1;
    for(int i=1;i<=k;i++)
    {
        f*=i;
    }
    return f;
}
double Sx(double x,int n)
{
    double sum=0;
    for(int k=0;k<=n;k++)
    {
        sum+=(pow(-1.0,k))*((2*k*k+1)/fackt(2*k))*(pow(x,2*k));
    }
    return sum;
}
 
int main()
{
    setlocale(LC_ALL,"Russian");
    int i,n,ity=0;
    double a,b,h,x;
    cout<<"Введите значение а(с какого значения начинает изменяться х):\n";
    cin>>a;
    cout<<"Введите значение b(до какого значения будет изменяться х):\n";
    cin>>b;
    cout<<"Введите значение h(с каким шагом будет изменяться х):\n";
    cin>>h;
    cout<<"Введите значение n(нужное для вычесления функций):\n";
    cin>>n;
    ity=(b-a)/h;
    double* Y=new double[ity];
    double* S=new double[ity];
    x=a;
    for(i=0;i<=ity;i++)
    {
        Y[i]=(1-x*x/2)*cos(x)-(x/2*sin(x));
        S[i]=Sx(x,n);
        x+=h;
    }
    x=a;
    for(i=0;i<=ity;i++)
    {
        cout<<"x: "<<x<<" Y(x)= "<<Y[i]<<" S(x)= "<<S[i]<<" S(x)+ |Y(x)-S(x)|= "<<S[i]+abs(Y[i]-S[i])<<"\n";
        x+=h;
    }
    system("PAUSE > void");
    return 0;
}
Вроде правильно работает, проанализируй(можно ручками пару значений проверить).
И ещё мне не понятно, почему?
Так как значение S(x) является рядом разложения функции Y(x). Значения S и Y для данного аргумента x должны совпадать в целой части и в первых двух-четырех позициях после десятичной точки
HedgehogLu
 Аватар для HedgehogLu
146 / 67 / 1
Регистрация: 04.09.2013
Сообщений: 250
25.09.2013, 11:37     Разработка и отладка циклических алгоритмов и программ #8
временно вернулся.
Так как значение S(x) является рядом разложения функции Y(x). Значения S и Y для данного аргумента x должны совпадать в целой части и в первых двух-четырех позициях после десятичной точки
Это же из вышки. По определению S(x) является до определенного значения точным представлением функции y(x) и соотвественно для различных значений n имеет различную точность совпадения. В данном случае в условии задачи сказано, что S(x) должно до 2 или 4 знака после запятой совпадать с значением Y(x). Если это не так надо попробывать увеличить n

Доказывать лень т.к. долго это и вышку уже так не помню, но в задаче сказано, что S(X) это та-же Y(x) только представленная в виде суммы бесконечного ряда, что позволяет вычислять значения функции с определенной точностью без задействования сложных функций.
es_
 Аватар для es_
198 / 198 / 46
Регистрация: 14.01.2013
Сообщений: 446
25.09.2013, 11:43     Разработка и отладка циклических алгоритмов и программ #9
Цитата Сообщение от HedgehogLu Посмотреть сообщение
Доказывать лень т.к. долго это и вышку уже так не помню, но в задаче сказано, что S(X) это та-же Y(x) только представленная в виде суммы бесконечного ряда, что позволяет вычислять значения функции с определенной точностью без задействования сложных функций.
Вот и мне лень, но у меня что-то не совпадает... Ладно пускай ТС разбирается и так за него многое сделали.
HedgehogLu
 Аватар для HedgehogLu
146 / 67 / 1
Регистрация: 04.09.2013
Сообщений: 250
25.09.2013, 12:00     Разработка и отладка циклических алгоритмов и программ #10
да и смысл тут разбираться. как было в постановке задачи так и делать если в постановке и реализации ошибок нет то начиная с определенного значения п должно сходится а если нет и реализация верна, то значит ошибка в постановке, а это не является проблемой прогера Как говорится что хотели - то и получили

а реализация функции и суммы ряда верна

кстати в программе есть небольшой недочет
Ладно пускай ТС разбирается и так за него многое сделали.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.09.2013, 12:05     Разработка и отладка циклических алгоритмов и программ
Еще ссылки по теме:

C++ Разработка и отладка алгоритмов и программ по обработке строк символов
C++ Разработка и отладка циклических алгоритмов и программ
Разработка и отладка алгоритмов и программ C++

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

Или воспользуйтесь поиском по форуму:
es_
 Аватар для es_
198 / 198 / 46
Регистрация: 14.01.2013
Сообщений: 446
25.09.2013, 12:05     Разработка и отладка циклических алгоритмов и программ #11
Ну тогда ок
Yandex
Объявления
25.09.2013, 12:05     Разработка и отладка циклических алгоритмов и программ
Ответ Создать тему
Опции темы

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