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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2011, 22:55   #1
abit-2010
 
Регистрация: 13.03.2011
Сообщений: 5
По умолчанию Ошибка в переводе кода с Turbo Pascal на Fortran

Переводил программу с Turbo Pascal на Fortran. На Turbo Pascal программа вычисляет массив K правильно, а на Fortran'е нет. Помогите найти и исправить ошибку.

Код на Turbo Pascal:
Код:
Program pr2;
uses crt;
var
a:array [1..1000] of real;
b:array [1..1000] of real;
k:array [1..1000] of real;
i,n,m,s:integer;
flag:boolean;
Begin
clrscr;
n:=6;
m:=5;
for i:=1 to n do
begin
writeln('Ââåäèòå',i ,'-é ýëåìåíò ïîñëåäîâàòåëüíîñòè a' );
readln(a[i]);
end;
for i:=1 to m do
begin
writeln('Ââåäèòå',i ,'-é ýëåìåíò ïîñëåäîâàòåëüíîñòè b' );
readln(b[i]);
end;
for i:=1 to m do
begin
s:=round(n/2);
flag:=true;
while (flag) do
begin
if (b[i]>a[s]) then
begin
inc(s);
if (b[i]<a[s]) then
begin
k[i]:=s;
flag:=false;
end;
end else
begin
dec(s);
if (b[i]>a[s]) then
begin
k[i]:=s+1;
flag:=false;
end;
end;
end;
writeln(a[i]:5:1 , b[i]:5:1 , k[i]:5:1);
writeln(' ');
end;
repeat until keypressed;
End.
Код, который я переводил на Fortran:
Код:
Program pr2
real a(100), b(100), k(100)
integer i,n,m,s
logical flag
n=6
m=5
do i=1,n
print*,'Ââåäèòå',i ,'-é ýëåìåíò ïîñëåäîâàòåëüíîñòè a'
read*,a(i)
enddo
do i=1,m
print*,'Ââåäèòå',i ,'-é ýëåìåíò ïîñëåäîâàòåëüíîñòè b'
read*,b(i)
enddo
do i=1,m
s=float(n/2)
flag=.true.
do while (flag)
if (b(i).gt.a(s)) then
s=s+1
if (b(i).lt.a(s)) then
k(i)=s
flag=.false.
endif
else
s=s-1
if (b(i).gt.a(s)) then
k(i)=s+1
flag=.false.
endif
endif
enddo
enddo
do i=1,n
print*,a(i), b(i), k(i)
print*,' '
enddo
end

Последний раз редактировалось abit-2010; 06.07.2011 в 02:07.
abit-2010 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в задаче на turbo pascal SkuLLL Помощь студентам 1 14.11.2010 20:56
какой именно участок кода в Delphi отвечает за связь с Fortran Bezo Помощь студентам 3 25.06.2010 13:56
Ошибка при переводе числа Marsel737 Общие вопросы Delphi 4 06.12.2009 12:56
Turbo Pascal Объяснение кода hills Паскаль, Turbo Pascal, PascalABC.NET 0 14.04.2009 16:18
Перевод кода с Fortran-77 на Delphi unhide Помощь студентам 3 20.05.2008 14:27