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

2011-10-19 18:26
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.
edytowany 3x, ostatnio: madmike, 2011-10-19 18:37

Pozostało 580 znaków

2011-10-19 18:37
Doktorek
0

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

Pozostało 580 znaków

2011-10-19 18:47
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.

edytowany 4x, ostatnio: eszkejo, 2011-10-19 18:52

Pozostało 580 znaków

2011-10-19 18:59
0
var napis:string;
    i,w:integer;
begin
  w:=8;
  napis:='';
  for i:=1 to w do
  begin
    napis:=napis+'@';
    writeln(napis);
  end;
end.
A no tak nie dość że mnie uprzedziłeś mnie to jeszcze tylko z 1 pętla :) - kAzek 2011-10-19 19:09

Pozostało 580 znaków

2011-10-19 19:05
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.

Nie odpowiadam na PW w sprawie pomocy programistycznej.
Pytania zadawaj na forum, bo:
od tego ono jest ;) | celowo nie zawracasz gitary | przeczyta to więcej osób a więc większe szanse że ktoś pomoże.
edytowany 1x, ostatnio: kAzek, 2011-10-19 19:05

Pozostało 580 znaków

Liczba odpowiedzi na stronę

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