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

Метод Адамса - исправить ошибки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Наибольший общий делитель http://www.cyberforum.ru/cpp-beginners/thread392046.html
Описать рекурсивную функцию NOD(A, B) целого типа, находящую наибольший общий делитель (НОД) двух целых положительных чисел A и B, используя алгоритм Евклида: НОД(A, B) = НОД(B, A mod B), если B 6= 0; НОД(A, 0) = A. С помощью этой функции найти НОД(A, B), НОД(A, C), НОД(A,D), если даны числа A, B, C, D. Добавлено через 6 часов 24 минуты Актуально
C++ Сложность абстракции, полиморфизм, дублирование и другие //структура "матрица" //Представляет собой обёртку над двухмерным массивом template<typename TypeT, int _SizeX, int _sizeY> struct Array2D { Array2D() { for(int y = 0; y < _sizeY; ++y) { for(int x = 0; x < _SizeX; ++x) http://www.cyberforum.ru/cpp-beginners/thread392041.html
C++ Перестановка элементов по заданному правилу
Даны массив А размерности N*M и массив В размерности М.Элементы первого столбца массива А упорядочены по невозрастанию.Включить массив В в качестве новой строки в массив А с сохранением упорядоченности. Заранее спасибо.
Не могу понять ошибку. При вводе значений вылетает программа. C++
Задача: Дана система 2-х сторонних дорог. Известна цена на каждом пути. Определить убыток при закрытии дороги. Алгоритм: Функция "poisk" в моей программе находит в графе и выводит самый дешёвый путь (вершины) и его цену. Функция "del" удаляет в матрице инцидентности цену на указанном пути. Исходные данные с файла, где 1 строка кол-во вершин. Проблема: Прога работает лишь при использовании...
C++ Найти путь из А в И http://www.cyberforum.ru/cpp-beginners/thread392027.html
Есть у нас точка А и точка В. Идем с А в В, найти пути, которые будут равны 250 и 350 очок. Одна из идей - построить биннарное дерево и обойти. Собственно, интересует как лучше (читать правильно) представить ето (та и граф напоминает, но вага узлов? а не ребер)? http://*************/clip/m0/1321924569-clip-32kb.jpg?nocache=1
C++ функция класса - вызов есть класс Graph с функцией int OutputMatrix(int i,int j); и матрица int **Matrix; в области private, в cpp я описал функцию: int Graph::OutputMatrix(int i,int j){ int k; k=Matrix; return k; } правильно ли я ее вызываю? int i=1; int j=1; подробнее

Показать сообщение отдельно
bootleanC
 Аватар для bootleanC
6 / 6 / 1
Регистрация: 28.04.2009
Сообщений: 106
19.11.2012, 10:02     Метод Адамса - исправить ошибки
Все заработало когда сменил перемененную y0 на yl

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
#include "stdafx.h"
#include <math.h>
#include <stdio.h>
#include <conio.h>
const float a=0,b=2;             // bounds of the interval
const int num_points=10,         // number of points to solve
          num_starting_points=4; // number of points to solve with Runge-Kutta method
float x0=0;
float yl=1; 
 
float f(float x, float y)
{
  return x+y;  // y'=x+y
}
// this function realises Runge-Kutta method for n starting points
void calculate(float *y)
{
  float k1,k2,k3,k4,x,yi,h;
  h=(b-a)/num_points;  // step
  yi=yl; x=x0;
  for (int i=0;i<num_starting_points;i++)
  {
    k1=h*f(x,yi);
    k2=h*f(x+h/2,yi+k1/2);
    k3=h*f(x+h/2,yi+k2/2);
    k4=h*f(x+h,yi+k3);
    yi+=(k1+2*k2+2*k3+k4)/6;
    x+=h;
    *(y+i+1)=yi;
  }
}
void main(void)
{
  float y[num_points+1],h;
  y[0]=yl;
  // apply Runge-Kutta method
  calculate(y);
  h=(b-a)/num_points;
  // extrapolating
  for (int i=num_starting_points;i<num_points;i++)
    y[i] = y[i-1]+h/24*(55*f(x0+(i-1)*h,y[i-1])-
             59*f(x0+(i-2)*h,y[i-2])+
             37*f(x0+(i-3)*h,y[i-3])-
             9*f(x0+(i-4)*h,y[i-4]));
  printf("X\t\tY\t\tExact solution\n");
  for (int i=0;i<num_points;i++)
    printf("%f\t%f\t%f\n",(x0+i*h),y[i],(2*exp(x0+i*h)-(x0+i*h)-1));
  _getch();
}
 
Текущее время: 18:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru