Задание 22 Урок 13.1
Primary tabs
Пользователь передает целое положительное число N, выведете на экран последовательность от 1 до N, так чтобы ширина "ёлочки" росла волнами. Например, для N=49 получим:
123--сначала до двух456789--потом до трёх101112--возвращаемся к одному131415161718192021--тут уже четыре2223242526--снова убывает 2728293031323334353637383940414243444546474849
var i,n,i1,a,m,b : integer;
begin
write('Vvedite chislo n: ');
readln(n);
i:=1;
i1:=1;
a:=0;
m:=2;
while(i1<=n) do begin
repeat
write(i1, ' ');
i1:=i1+1;
a:=a+1;
until(i<=a) or (i1>n);
a:=0;
writeln();
if(i=m)then begin
b:=-1;
m:=m+1;
end else if(i=1)then begin
b:=1;
end;
i:=i+b;
end;
readln();
end.
- Log in to post comments
- 3926 reads
vedro-compota
Wed, 09/29/2021 - 19:24
Permalink
проблемы с форматированием
_____________
матфак вгу и остальная классика =)
Djos
Wed, 09/29/2021 - 23:15
Permalink
var i,n,m,a,b,c : integer;
var i,n,m,a,b,c : integer; begin write('Vvedite chislo n: '); readln(n); a:=1; b:=1; m:=2; for i:=1 to n do begin if(a=b) then begin writeln(i,' '); if(b=m) then begin m:=m+1; c:=-1 end else if(b<=1) then c:=1; b:=b+c; a:=1; end else begin write(i,' '); a:=a+1; end; end; readln(); end.vedro-compota
Wed, 10/06/2021 - 21:05
Permalink
очередной элемент можно
очередной элемент можно печатать сразу, что соответственно избавит от дублирования кода:
writeln(i,' '); //.... write(i,' ');_____________
матфак вгу и остальная классика =)
Djos
Wed, 10/06/2021 - 22:45
Permalink
var i,n,m,a,b,c : integer;
var i,n,m,a,b,c : integer; begin write('Vvedite chislo n: '); readln(n); a:=1; b:=1; m:=2; for i:=1 to n do begin write(i,' '); if(a=b) then begin writeln(); if(b=m) then begin m:=m+1; c:=-1 end else if(b<=1) then c:=1; b:=b+c; a:=1; end else begin a:=a+1; end; end; readln(); endvedro-compota
Sun, 10/10/2021 - 12:23
Permalink
начать с a=0, что поможет
начать с a=0, что поможет избавиться от ветки:
_____________
матфак вгу и остальная классика =)
Djos
Mon, 10/11/2021 - 08:33
Permalink
var i,n,m,a,b,c : integer;
var i,n,m,a,b,c : integer; begin write('Vvedite chislo n: '); readln(n); b:=1; m:=2; for i:=1 to n do begin write(i,' '); a:=a+1; //присвоили if(a=b) then begin if(b=m) then begin m:=m+1; c:=-1 end else if(b<=1) then c:=1; writeln(); b:=b+c; a:=0;//сброс end; end; readln(); end.vedro-compota
Wed, 10/13/2021 - 20:06
Permalink
решение засчитано
решение засчитано
_____________
матфак вгу и остальная классика =)