Pokaż wyniki 1 do 4 z 4

Temat: Pascal prostokąt

  1. #1

    Domyślnie Pascal prostokąt

    Mam zamiar napisać program w pascalu który będzie rysował prostokąt składający się z liter x i z , ułożonych na przemian czyli jak wpisze powiedzmy 3 i 4 to wyjdzie cos takiego
    Xxx
    Zzz
    Xxx
    Zzz

    Na razie jedyny pomyśl na jaki wpadłem to funkcja mod reszta z dzielenia sprawdzać czy jest parzyste a potem wypisywać tylko mam problem z napisaniem pętli ma może ktoś jakiś pomysł.
    "dobrzy hakerzy są sławni na cały świat, ale o hakerach geniuszach nikt nic nie wie."

  2. #2
    Zarejestrowany
    Dec 2006
    Skąd
    Kielce
    Postów
    1,767

    Domyślnie

    pomysł dobry - pętla też nie będzie problemowa

    a ale du*a bo nie mam jak sprawdzić w kazdym razie pobierasz 2 zmienne - width i height.. width oznacza ile znaków w lini masz wydrukować - wiadomo

    teraz pętla będzie nastepująca
    (daje po ludzku bonie pamietam skladni)
    x=0
    tou zaczynamy petle
    sprawdzamy czy jes parzyta
    jeśli tak - drukuj (widht) zetów
    jeśli nie - drukuj (widht) iksów
    x++
    i wracamy dopuki x!=height
    Ostatnio edytowane przez eMCe : 03-01-2007 - 21:50
    Agencja reklamy kielce (mały kilkudniowy case pozycjonerski )

  3. #3

    Domyślnie

    Jakoś mi to nie idzie no ale jeszcze nad tym trochę posiedzę jak ktoś ma jeszcze jakieś pomysły do będę wdzięczny.


    Już mi się udało .
    Ostatnio edytowane przez kosiarz : 03-03-2007 - 07:59
    "dobrzy hakerzy są sławni na cały świat, ale o hakerach geniuszach nikt nic nie wie."

  4. #4
    Zarejestrowany
    Dec 2006
    Skąd
    Kielce
    Postów
    1,767

    Domyślnie

    hihi to sie nazywa bezsenność

    Kod:
    Var
            width:Byte;
            height:Byte;
            ile:Byte;
    begin
    WriteLn('----------[Rysownik]----------');
    WriteLn('Podaj szeroko˜† prostokĄta...');
    ReadLn(width);
    WriteLn('Podaj wysoko˜† prostokĄta...');
    ReadLn(height);
       WHILE height > 0 Do
       Begin
          IF height mod 2=1 Then
          Begin
                ile:=width;
                WHILE ile > 0 Do
                Begin
                    Write('Z');
                    ile:=ile-1;
                End;
                WriteLN();
          End;
          IF height mod 2=0 Then
          Begin
                ile:=width;
                WHILE ile > 0 Do
                Begin
                    Write('X');
                    ile:=ile-1;
                End;
                WriteLN();
          End;
          height:=height-1;
       End;
    end.
    ogólnie pewnie sie dało zrobić prościej i lepiej ale to też działa
    Agencja reklamy kielce (mały kilkudniowy case pozycjonerski )

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj