program ucheniy;
uses crt;
const n=47;
var f1:text;
i,a1,a2,y:integer;
begin clrscr;
assign(f1,'uchen.txt');
rewrite(f1);
a1:=0;
a2:=1;
writeln(f1,a2);
for i:=1 to 47 do
begin
y:=a1+a2;
a1:=a2;
a2:=y;
i:=y;
writeln(f1,y);
end;
close(f1);
end.
Файловая задача Фибоначи
Надо сделать програму с помошью которой в текстовом формате был бы выведен ряд Фибоначи, который начнетса числом 1 и окончица числом меншим чем 47. Помогите подкаректировать програму, у меня выводит слишком большое количество чисел, плиз.
Код:
и ктомуже меняете i в цикле - но от этого не поменяется число раз которое выполнится тело цикла
сделайте while цикл
в while цикле сравнивайте условие >47
Цитата: nilbog
зачем вам цикл for 47 раз выполнять интересно
и ктомуже меняете i в цикле - но от этого не поменяется число раз которое выполнится тело цикла
сделайте while цикл
в while цикле сравнивайте условие >47
и ктомуже меняете i в цикле - но от этого не поменяется число раз которое выполнится тело цикла
сделайте while цикл
в while цикле сравнивайте условие >47
Боьшое спасибо. Сделал, поменял for на while и вот так изменил выделеную часть:
Код:
program ucheniy;
uses crt;
const n=47;
var f1:text;
i,a1,a2,y:integer;
begin clrscr;
assign(f1,'uchen.txt');
rewrite(f1);
a1:=0;
a2:=1;
writeln(f1,a2);
while i<47 do
begin
y:=a1+a2;
a1:=a2;
a2:=y;
[COLOR="DarkOliveGreen"][COLOR="Magenta"]i:=y+a1;[/COLOR][/COLOR]
writeln(f1,y);
end;
close(f1);
end.
uses crt;
const n=47;
var f1:text;
i,a1,a2,y:integer;
begin clrscr;
assign(f1,'uchen.txt');
rewrite(f1);
a1:=0;
a2:=1;
writeln(f1,a2);
while i<47 do
begin
y:=a1+a2;
a1:=a2;
a2:=y;
[COLOR="DarkOliveGreen"][COLOR="Magenta"]i:=y+a1;[/COLOR][/COLOR]
writeln(f1,y);
end;
close(f1);
end.