Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.04.2009, 18:02   #1
roobpass
Новичок
Джуниор
 
Регистрация: 24.04.2009
Сообщений: 1
Стрелка перевод с Pascal в C++, ну не знаю я С++ :)

Добрый день уважаемые программисты.
Прошу помочь мене с переводом программы с Pascal в C++. На Pascal составить программу могу (знаю этот язык еще с школы), а вот с С++ проблема.
Я не прошу написать за меня программу. Кто отзовется буду благодарен. Вот сама программа:
Код:
uses crt;
var
  yx,xy,l,v,p,ff,ay,by,x:array [0..10] of real;
  y,a,b:array[0..10,0..1] of real;
  i,n,o:integer;
  c,d,h,k:real;
label
  lap1;
begin
clrscr;
writeln('введите наивысший порядок производной не больше трех ');
readln(n);
if n=0 then begin
writeln('это прямолинейная зависимость и решается без метода Эйлера ');
goto lap1;end;
writeln('введите коэффициенты {a0,a1}');
for i:=0 to n do
readln(l[i]);
if (n=1) and (l[1]=0) or (n=2) and (l[2]=0) or (n=3) and (l[3]=0) then begin
    writeln('деление на ноль');
    goto lap1;
    end;
writeln('введите коэффициент при x');
readln(k);
writeln('введите отрезок ');
readln(c,d);
o:=5;
h:=abs(d-c)/o;
writeln('шаг=',h:1:1);
writeln('задайте начальные условия y(x)= ');
for i:=0 to n-1 do
readln(v[i]);
if n=3 then begin
  yx[0]:=v[0];
  ay[0]:=v[1];
  by[0]:=v[2];
  p[0]:=(k*c-l[0]*v[0]-l[1]*v[1]-l[2]*v[2])/l[3];
  x[0]:=c;
  gotoxy(32,1);
     write('                                             ');
     gotoxy(32,2);
     write('      x          y          a          b      ');
     gotoxy(32,3);
     write(' ',c:7:7,'   ',yx[0]:7:7,'  ',ay[0]:7:7,'  ',by[0]:7:7,' ');
for i:=0 to o-1 do begin
  x[i]:=x[i]+h/2;
  y[i,1]:=yx[i]+(h/2)*ay[i];





  a[i,1]:=ay[i]+(h/2)*by[i];
  b[i,1]:=by[i]+(h/2)*p[i];
  ff[i]:=(k*x[i]-l[0]*y[i,1]-l[1]*a[i,1]-l[2]*b[i,1])/l[3];
  xy[i]:=x[i]+h/2;
  yx[i+1]:=yx[i]+h*a[i,1];
  ay[i+1]:=ay[i]+h*b[i,1];
  by[i+1]:=by[i]+h*ff[i];
  x[i+1]:=x[i]+h/2;
  p[i+1]:=(k*xy[i]-l[0]*yx[i+1]-l[1]*ay[i+1]-l[2]*by[i+1])/l[3];
  end;
  for i:=0 to o-1 do begin
     gotoxy(32,4+i);
     write(' ',xy[i]:7:7,'  ',yx[i+1]:7:7,'  ',ay[i+1]:7:7,'   ',by[i+1]:7:7,'   ');
     end;
   gotoxy(32,4+o);
   write('                                                ');
end;
if n=2 then begin
   x[0]:=c;
   yx[0]:=v[0];
   ay[0]:=v[1];
   p[0]:=(k*c-l[0]*yx[0]-l[1]*v[1])/l[2];
     gotoxy(32,1);
     write('                                  ');
     gotoxy(32,2);
     write('      x          y          a      ');
     gotoxy(32,3);
     write(' ',c:7:7,'  ',yx[0]:7:7,'  ',ay[0]:7:7,'  ');
   for i:=0 to o-1 do begin
   x[i]:=x[i]+h/2;
   y[i,1]:=yx[i]+(h/2)*ay[i];
   a[i,1]:=ay[i]+(h/2)*p[i];
   ff[i]:=(k*x[i]-l[0]*y[i,1]-l[1]*a[i,1])/l[2];
   xy[i]:=x[i]+h/2;
   yx[i+1]:=yx[i]+h*a[i,1];
   ay[i+1]:=ay[i]+h*ff[i];
   x[i+1]:=x[i]+h/2;
   p[i+1]:=(k*xy[i]-l[0]*yx[i+1]-l[1]*ay[i+1])/l[2];
   end;
   for i:=0 to o-1 do begin
     gotoxy(32,4+i);
     write(' ',xy[i]:7:7,'  ',yx[i+1]:7:7,'  ',ay[I+1]:7:7,'   ');
    end;
   gotoxy(32,4+o);
   write('                                  ');
   end;
    if n=1 then begin
    x[0]:=c;
    yx[0]:=v[0];
    p[0]:=(k*x[0]-l[0]*yx[0])/l[1];
   for i:=0 to o-1 do begin
     x[i]:=x[i]+h/2;
     y[i,1]:=yx[i]+(h/2)*p[i];
     xy[i]:=x[i]+h/2;




     ff[i]:=(k*x[i]-l[0]*y[i,1])/l[1];
     yx[i+1]:=yx[i]+h*ff[i];
     x[i+1]:=x[i]+h/2;
     p[i+1]:=(k*xy[i]-l[0]*yx[i+1])/l[1];
   end;
  gotoxy(32,1);
     write('                                     ');
     gotoxy(32,2);
     write('         x                y          ');
     gotoxy(32,3);
     write('     ',c:7:7,'          ',yx[0]:7:7,'    ');
   for i:=0 to o-1 do begin
     gotoxy(32,4+i);
     write('     ',xy[i]:7:7,'          ',yx[i+1]:7:7,'    ');
    end;
   gotoxy(32,o+4);
   write('                                     ');
  end;
lap1:readln;
delay(10000);
clrscr;
end.
roobpass вне форума Ответить с цитированием
Старый 24.04.2009, 18:27   #2
Askar_g
под кайфом
Пользователь
 
Аватар для Askar_g
 
Регистрация: 21.12.2008
Сообщений: 41
По умолчанию

Здаров!
я с++ норм знаю, но паскаль уже подзабыл, могу помочь, частично что знаю переведу, просто некоторые функции паскаля мне непонятны...
или лучше напиши мне на аську или на Мэйлагент
  • Как-то одного программиста спросили, а потом горько пожалели об этом.
Askar_g вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal. перевод из десятичной системы счисления в двоичную Xeon332 Помощь студентам 3 24.01.2011 13:54
перевод из Pascal в C++ Valerik Общие вопросы C/C++ 5 22.04.2009 21:57
Перевод кода из Pascal в Object Pascal zemskov77 Общие вопросы Delphi 1 03.01.2009 09:37
Pascal Перевод в Польскую запись ЮнПрог Помощь студентам 3 29.12.2008 13:51