0 / 0 / 2
Регистрация: 08.12.2012
Сообщений: 36
1

Ошибки

28.10.2013, 00:38. Показов 704. Ответов 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
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <math.h>
#include <malloc.h>
 
double absolute(double);
double interpolate(int,int);
double _x(int);
double DeltaX, X0, X, Pprev, E;
double y(float), Result;
int main()
{
printf("Программа интерполяции по схеме Эйткена с заданной"); printf("точностью E.");
printf("\nИнтерполируемая функция: cos(x). Введите шаг: ");
  scanf("%lf", & DeltaX);
  printf("Введите начальное значение Х0: ");
  scanf("%lf", &X0);
  printf("Введите количество узлов интерполяции N: ");
  int N; scanf("%d", &N);
  y = (double*)malloc(N*sizeof(double));
  int i;
  for (i=0; i<N; i++) y[i] = (double)cos(X0+i*DeltaX);
  printf("Таблица значений заполнена.\n");
 
  while(1)
  {
    printf("Введите итерполируемый Х: ");
    scanf("%lf", &X);
    printf("Введите точность Е: ");
    scanf("%lf", &E);
    double Delta, DeltaPrev;
    for(i=0; i<(N-1); i++)
    {
      Result=interpolate(0, (i+1));
      if (i!=0) Delta=absolute(Pprev-Result);
      if (((Delta>=DeltaPrev)||(DeltaPrev<=E))&&(i>1))
        {
      printf("(!) Выход по условию. Хорошо."); 
      break;
    }
      DeltaPrev=Delta;
      Pprev=Result;
    }
    printf("\nРезультат: %lf, n=%d\n\n", Result, i);
  }
 
  free(y);
  return 0;
}
 
double absolute(double Value)
{
  if (Value < 0) Value*=-1;
  return Value;
}
 
double _x(int N)
{
  return(X0+N*DeltaX);
}
 
double interpolate(int i, int k)
{
  double P1, P2, P;
  if(i==k) return y[i];
  else
  {
    P1=interpolate((i+1), k);
    if (i==0) P2=Pprev;
    else P2=interpolate(i, (k-1));
 
    P=(P1*(X - _x(i))) - (P2*(X - _x(k)));
    P/=(_x(k) - _x(i));
  }
 
  return P;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.10.2013, 00:38
Ответы с готовыми решениями:

Найти ошибки в коде и исправить эти ошибки (Наследование)
Вот в общем 3 файла, изучаю наследование на примере односвязного и двусвязного списков: list.h...

с2079 и с2228 ошибки при компиляции ниже участок кода, с которым праблема и скрины ошибки
// ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ bool game = true; // КЛАССЫ class Me; class mob { public: void...

Найти ошибки в коде и исправить эти ошибки - C++
Судя по вываливающейся ошибки, идет двойное освобождение памяти. У самого не получается отловить...

Найти ошибки в коде и исправить эти ошибки
Есть у меня вот такой код: #include &lt;iostream&gt; using namespace std; class A{ private:...

2
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
28.10.2013, 00:59 2
Не разбирался, что должна делать программа, но компилируется, если поменять
C++
1
double y(float), Result;
на
C++
1
double *y, Result;
1
0 / 0 / 2
Регистрация: 08.12.2012
Сообщений: 36
28.10.2013, 01:36  [ТС] 3
Благодарю, код компелируеться но выдает чёт не то. Если кому пригодиться вот рабочий код на тему *Интерполяция Ейткена*
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
#include <iostream>
#include <conio.h>
#include <stdio.h>
using namespace std;
 int main ()
{
system("COLOR 0A");
double ob, x1 , x2 , y1 , y2, p1 , p2 , pi , skolko , status; 
 
    system("echo Интерполяция X1 - X2 ");
    system("echo Ввести число:");
    cin >> ob; 
 
    system("echo Например 62, C1 = 60, L1 = 1.31 ,C2 = 80 , L2 = 1.29");
    cout << "C1 = ";
           cin >> x1;
    cout << "L1 = " ;
           cin >> x2;
    cout << "C2 = " ;
           cin >> y1;
    cout << "L2 = " ;  
           cin >> y2;
 
      p1 = y1 - x1;
      p2 = y2 - x2;
 
    pi = p2 / p1;
      skolko = ob - x1;
      status = x2 + (pi * skolko);
 
    cout << "_______________________________________________________________";
    cout << endl <<  ob << " = " << status;
    _getch ();
    system("CLS");
 
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.10.2013, 01:36
Помогаю со студенческими работами здесь

Найти ошибки в данной программе (известно что есть только 2 ошибки)
У меня в модуле с програмирования задание: Найти ошибки в данной программе (известно что есть...

Ошибки после компиляции на Visual Express 2012.Ошибки в теме
Добрый вечер ребят помогите пожалуйста.Программа написана на Visual Express 2012.Обясните что...

Inet Explorer при обнаружении ошибки вместо описания ошибки выдает иероглифы
Начал изучение ASP. Inet Explorer при обнаружении ошибки вместо описания ошибки выдает иероглифы......

Windows XP на HP compaqt 6220 ошибки при установке, как убить эти ошибки
Всех приветствую уважаемые Комрады ,форумчане не проходите мимо помогите откликнитесь мучаюсь уже...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru