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

Сравнение функций - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ STL и ostream_iterator http://www.cyberforum.ru/cpp-beginners/thread1024982.html
Здравствуйте, товарищи! Вопрос к знатокам библиотеки STL. Решая одну задачу в которой надо было посчитать некоторые точки, каждая из которых уникальна, решил использовать для хранения set, чтобы...
C++ Отследить ошибку Помогите найти ошибку в программе. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv) { int n = 0, k = 0, i, r, j = 0, q1, q2, *a; a = new int... http://www.cyberforum.ru/cpp-beginners/thread1024980.html
C++ Создание дерева
Помогите написать функцию создания дерева, заполняющуяся по порядку ввода элементов с лева на право
Компилятор и среда разработки. Какие лучше новичку? C++
Посоветуйте среду разработки с подсветкой синтаксиса для С++. И компилятор тоже. Пробовал Visual 2010, но как его запустить, где он вообще?
C++ Выделение памяти http://www.cyberforum.ru/cpp-beginners/thread1024968.html
int main() { FILE *fIn = NULL, *fOut =NULL; Error EMyError; CNodeStack *Start; CNodeStack *ListF = new CNodeStack; ListF->next = NULL; Start = ListF;...
C++ Перегрузка операций и функций Выполнить перегрузку перечисленных операций, закрепив за ними соответствующий функциональный смысл. Прямоугольная матрица +/- сложение/вычитание двух матриц,*умножение двух матриц подробнее

Показать сообщение отдельно
parkito
11 / 11 / 2
Регистрация: 22.03.2010
Сообщений: 692
01.12.2013, 23:46  [ТС]
Тем не менее, даже если я жестко задаю условие
C++
1
if(abs(xs)<PI&&xs!=0)
Не работает корректно
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include<iostream>
#include<conio.h>
#include<math.h>
void stopping();
double seq_ctg(double,double);
double mpow(double , double);
double fact(double);
using namespace std;
const double PI=3.14;
const long N=12;
int main()
{
setlocale(LC_ALL,"Rus");
double eps, xs,xe,dx,xi, myctg, cctg,delta; 
cout<<"Введите E --> ";
cin>>eps;
cout<<"Введите X start --> ";
cin>>xs;
cout<<"Введите X end --> ";
cin>>xe;
cout<<"Введите DX --> ";
cin>>dx;
if(dx<=0||xs>=xe)
stopping();
printf("|-----------------|-------------------|-----------------|-------------------|\n");
printf("|        X        |      My_ctg(x)    |       ctg(x)    |        Sigma      |\n");
printf("|-----------------|-------------------|-----------------|-------------------|\n");
for( ;xs<=xe;xs=xs+dx)
{  
   if(abs(xs)<PI&&xs!=0)
   {
   cctg=cos(xs)/sin(xs);
   myctg=seq_ctg(xs,eps);
   delta=sqrt(abs(myctg*myctg-cctg*cctg));
   printf("|    %10.6f   |     %10.6f    |    %10.6f   |     %10.6f    |\n",xs,myctg,cctg,delta);
   }
   else 
   {
       printf("|    %10.7f   |       Ошибка      |      Ошибка     |       Ошибка      |\n",xs,myctg,cctg,delta);
 
   }
}
printf("|-----------------|-------------------|-------------------------------------|\n");
cout<<"Введите X ideal --> ";
 cin>>xi;
 eps=0.1;
 printf("|-----------------|-------------------|-----------------|-------------------|\n");
 printf("|    Epsilon      |      My_ctg(x)    |       ctg(x)    |        Sigma      |\n");
 printf("|-----------------|-------------------|-----------------|-------------------|\n");
 for( ;eps>0.0000001;eps=eps/10)
{
    
      
      if(abs(xs)<PI&&xs!=0)
      {
            myctg=seq_ctg(xi,eps);
            cctg=cos(xi)/sin(xi);
            delta=sqrt(abs(myctg*myctg-cctg*cctg));
            printf("|    %10.7f   |     %10.6f    |    %10.6f   |     %10.6f    |\n",eps,myctg,cctg,delta);
       }
else
    printf("|    %10.7f   |       Ошибка      |      Ошибка     |       Ошибка      |\n",xs,myctg,cctg,delta);
 }
    printf("|-----------------|-------------------|-------------------------------------|\n");
 
 
cin.get();
cin.get();
return 0;
}
 
 double seq_ctg(double xs, double eps)
 {int n=0;
 double prov,rezult=0;
 do
 {prov=rezult;
 rezult=rezult+((mpow(-1,n)*mpow(2,2*n)*mpow(xs,2*n))/fact(2*n));
 n++;
 }
 while(abs(rezult-prov)>=eps);
 return prov/xs;
 }
 
 
 
 double fact(double x)
{
    if (x<=1) return 1;
    else return x*fact(x-1);
}
 
 double mpow(double x, double y)
{
    double r = 1;
    while((y--)>0) r*=x;
    return r;
}
 
void stopping()
   {
cout<<"Ошибка";
cin.get();
cin.get();
exit(0);
   }
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru