Pętla w pętli (2 razy for)

0

Witam serdecznie.
A więc tak mam program, który pyta o liczbę i w zależności od liczby wyświetla tyle linijek '*'. Przykład:




...(itd.)

Mam program zrobiony, ale chcę prosić o poradę jak można zrobić to prościej.

Tutaj kod :

program cos1;

uses crt;

var
  i,j,w:integer;
begin
  write('Podaj liczbe: ');
  read(w);


  for i:=0 to w-1 do
begin
  for j:=1 to w+i do
  if j>=w then
  write('*')
else
  write(' ');

writeln;
end;
readkey
end.
0

Czy ma wyswietlać po prostu tyle linijek czy jeszcze do tego dodawać i +1 ? Wg. twojego przykładu...

0

O to chodzi, że gdy program poprosi mnie o podanie liczby. Ja wpisze przykładowo 7
to ma wyświetlić 7 linijek z *. Ale nie tylko jedna * w każdej linijce.
Gdy podam 7 to ma wyświetlić tak :

@
@@
@@@
@@@@
@@@@@
@@@@@@
@@@@@@@

@ - * (coś * źle wyświetla jak jest więcej koło siebie)

W następnej linijce ma się o jedną gwiazdkę powiększać.

Gdy podam 24 to w tej ostatniej linijce dwudziestej czwartej ma wyświetlić 24 razy *.

PS. Ja zrobiłem takim sposobem i dobrze mi wyświetla, ponieważ jak nie pisałem tego +i to coś źle działało.

0
var napis:string;
    i,w:integer;
begin
  w:=8;
  napis:='';
  for i:=1 to w do
  begin
    napis:=napis+'@';
    writeln(napis);
  end;
end.
0
var
  i, j, ile: Integer;
begin
  write('Podaj liczbę: ');
  read(ile);
  for i:=1 to ile do
  begin
    for j:=1 to i do
      write('*');
    writeln;
  end;
end.

1 użytkowników online, w tym zalogowanych: 0, gości: 1