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

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

Войти
Регистрация
Восстановить пароль
 
kir_
11 / 6 / 1
Регистрация: 19.02.2010
Сообщений: 77
#1

Экстремумы проверка кода - C++

10.05.2010, 22:31. Просмотров 397. Ответов 2
Метки нет (Все метки)

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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#include <cstdlib>
#include <iostream>
#include <math.h>
using namespace std;
    int n;
    double a,b,mn,mx;
 
double y(double x, bool i)
{ if (i=0){
    return 3 + (4 * (cos(2 * x))) - (7 * (cos(4 * x)));}
else 
{return -1*(3 + (4 * (cos(2 * x))) - (7 * (cos(4 * x))));}
}
double prov(){
        double n;
        char str[255],str2[255];
        do{
                cin>>str;
                n = atof(str);
                sprintf(str2,"%g",n);
                if (strcmp(str, str2)!=0)
                        cout<<"Neverniy vvod, povtorite snova\n";
        }
        while(strcmp(str, str2)!=0);
        return n;
}
int prov_int(){
        int n;
        char str[255],str2[255];
        do{     cin>>str;
                n = atoi(str);
                itoa(n,str2,10);
                if (strcmp(str, str2)!=0)
                        cout<<"Neverniy vvod, povtorite snova\n";
        }
        while(strcmp(str, str2)!=0);
        return n;
}
void gold(double a,double b,int n,bool i)
{
    double fi,f1,f2,x1,x2;
int e;
    fi=( sqrt((double)5)+1)/2;
    x1=b-(b-a)/fi;  x2=a+(b-a)/fi; 
    f1=y(x1,i); f2=y(x2,i);
for (e=1;n;e++){ 
                    if(x1<0.0000001)x1=0;
                    if(x2<0.0000001)x2=0;
                        if(f1 <= f2)
                            {   b=x2; 
                                x2=x1;
                                x1=b-(b-a)/fi; f2=f1; f1=y(x1,i);
                            }
                                
                                    else
                            { 
                                a=x1;
                                x1=x2;
                                x2=a+(b-a)/fi; f1=f2; f2=y(x2,i);
                            };
                        };
if(i==0) {
        if(f1>=f2){cout<<'min='<<f1<<'\n';}
        else {cout<<'min='<<f2<<'\n';};
        };
if(i==1){
    if(f1<f2){cout<<'max='<<-f1<<'\n';}
        else {cout<<'max='<<-f2<<'\n';};
};
}
 
 
int main(void) {
cout<<"a="; a=prov();
cout<<"b="; b=prov();
cout<<"n="; n=prov_int();
gold(a,b,n,0);
gold(a,b,n,1);
}
тыкните пожалуйста в ошибки он гдето зацикливается .. вроде все правильно хМ..
на паскале точно такой же алгоритм работает безотказно а значит я гдето в синтаксисе натупил...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2010, 22:31     Экстремумы проверка кода
Посмотрите здесь:

Проверка и доработка кода. C++
C++ проверка кода на правильность
C++ Проверка на правильность кода
Портирование кода на С++ (проверка вводимых данных пользователем на корректность) C++
C++ Проверка кода программы
Нужна проверка кода (система обмена сообщениями) C++
проверка кода, функции C++
Необходима проверка кода программы C++
C++ Возможна ли проверка кода и его запуск в инете?
C++ Проверка введенных данных; выполнение кода по условию
Проверка XML кода на ошибки C++
Проверка версии программы (перевод кода с C#) C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
EvilSlipp3r
32 / 32 / 3
Регистрация: 25.03.2010
Сообщений: 45
11.05.2010, 02:31     Экстремумы проверка кода #2
подозреваю, что в строке №46 что-то не так: for (e=1;n;e++){

мб
C++
1
for (e=1; e <= n; e++){
kir_
11 / 6 / 1
Регистрация: 19.02.2010
Сообщений: 77
11.05.2010, 21:50  [ТС]     Экстремумы проверка кода #3
да да я уже исправил .... все работает =)
Yandex
Объявления
11.05.2010, 21:50     Экстремумы проверка кода
Ответ Создать тему
Опции темы

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