Skocz do zawartości

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

eddy1

[pascal] program kwadraty

Polecane posty

Witam!

Muszę napisać program który rysuje 10 dowolnych kwadratów o wspólnym punkcie początkowym 320x240 (mam użyć pętli for to do) i losowania następnych kwadratów czyli randomize. Pomoże ktoś z tym programem?

Link do komentarza
Udostępnij na innych stronach

Generalnie musisz to zrobić tak:

1. Wylosować liczbę, dajmy na to A.

2. Narysować kwadrat o boku A, i środku w 0,0.

3. Powtórzyć powyższe kroki jeszcze 9 razy (w pętli for :D )

Wykonane!

Jak będziesz miał problem z którymś z tych części to napisz, pomoge (albo ktoś inny) bardziej szczegółowo.

Link do komentarza
Udostępnij na innych stronach

Przepraszam nie dziesięć dowolnych kwadratów, tylko prostokątów. :happy:

Narazie wymyśliłem coś takiego:

program grafika;

uses graph;
var ster,tryb,i,c:integer;

begin

ster:=vga;
tryb:=vgahi;

initgraph(ster,tryb,'');

for i=:1 to 10 do
begin
randomize;
setcolor(1);
c:=random(30);
rectangle(320,240,c,c);

end;
readln;
end.

Ale program nie działa, chyba nawet nie losuje liczby. Proszę o poprawki i rady bo jestem w tym zielony.

Link do komentarza
Udostępnij na innych stronach

Prosty sposób na sprawdzenie czy program liczbę losuje: wypisz zmienną, którą chcesz losować.

Teraz rysowanie: Dlaczego 2 razy c ? Nie powinieneś losować 2 razy i zrobić jednej zmiennej C, drugiej D ?

A co do samego kodu... Nie znam pascala, ale z tego co słyszałem, to jest to wybredny język, i chyba randomize mogłoby chcieć być napisane z dużej litery (Randomize). Podobnie z Rectangle. Ale jak mówiłem, nie wiem czy ma to jakieś znaczenie.

Link do komentarza
Udostępnij na innych stronach

Zastosowałem się do twojej rady i uzyskałem efekt o jaki mi chodziło. Zrobiłem zmienną c i d i do każdej przypisałem losowanie na początku dalej nie chciało losować, ale wstawiłem randomize przed pętlą i się udało. Dzięki

Link do komentarza
Udostępnij na innych stronach

Nie znam pascala, ale z tego co słyszałem, to jest to wybredny język, i chyba randomize mogłoby chcieć być napisane z dużej litery (Randomize). Podobnie z Rectangle.

Akurat w tym przypadku Pascal jest niewybredny i można nazwy pisać zarówno z dużej jak i z małej litery. ;) Generalnie wielkość liter nie jest rozróżniana.

Link do komentarza
Udostępnij na innych stronach



  • Kto przegląda   0 użytkowników

    • Brak zalogowanych użytkowników przeglądających tę stronę.
×
×
  • Utwórz nowe...