Tajemnice ATARI

5 Linii

    Kochani! Cieszy mnie wielce mnogość listów, jakie przychodzą do tej rubryki. Nie wszystkie jednak programy odpowiadają w pełni założeniom konkursu. Ponieważ zasady te dawno nie były przypominane, korzystam z okazji, by je powtórzyć, a przy tym odrobinę "podnieść poprzeczkę".

   Do rywalizacji mogą startować programy w ATARI BASIC-u o długości nie przekraczającej 5 wierszy standardowego ekranu (żadne POKE 82,0 nie wchodzi w rachubę). Programy typu FOR I=1536..., będące w istocie zakamuflowanymi programami maszynowymi, odpadają na ogół w przedbiegach.

   Tematyka programu jest dowolna. Musi on spełniać jeden podstawowy warunek; spodobać się oceniającemu (zdradzę Wam jeden sekret: nie cierpię tęczowych efektów i konwersji Dec/Bin). Najwyżej oceniane są programy, które prezentują coś nowego. Nie muszą być nawet specjalnie użyteczne, jeżeli uczą jakiejś pomysłowej METODY postępowania.

   Na comiesięcznych laureatów konkursu czekają tradycyjnie nagrody po 100000 zł i oczywiście zamieszczenie nagrodzonego dzieła w TA. Życzę wam wielu ciekawych pomysłów, na które z niecierpliwością czekam. Dla tych, których programy nie spełniają podanych wymogów, pociecha: wydrukujemy KAŻDY ciekawy program, bez względu na ramy konkursów, a jego twórca otrzyma normalne wynagrodzenie autorskie.

   Oto dzisiejsi laureaci:

PI

   Adam Salamon nadesłał program obliczający liczbę PI w sposób wielce oryginalny. Jest to model komputerowy następującego doświadczenia: Bierzemy krótką igłę i rysujemy na arkuszu papieru szereg równoległych kresek, w odstępach dwukrotnie większych od długości igły. Następnie rzucamy igłę na papier z dowolnej wysokości. Notujemy, czy igła przecięła jedną z narysowanych kresek, czy nie. Przy powtórzeniu tej czynności większą liczbę razy można odkryć, że stosunek przecięć do liczby rzutów jest równy w przybliżeniu 1/PI.

   Program "oblicza" PI, korzystając z generatora liczb losowych. Aktualna wartość jest wyświetlana po każdej setce "rzutów". Wzraz ze wzrostem liczby rzutów dokładność przybliżenia rośnie.
1 DEG :I=0:S=0:N=100:GRAPHICS 0
2 ? "RZUTY","PI="
3 S=S+(RND(0)*2<=COS(RND(0)*90))
4 I=I+1:IF I=N THEN ? I,I/S:N=N+100
5 GOTO 3
    Przy okazji przepraszamy pana Adama za błędne wydrukowanie jego programu "Super kolor" w TA 2/92 na str. 14. W pierwszym wierszu programu powinno być "...POKE 1664+I...", a nie "...POKE 1644+I...".

OSCYLOSKOP

    Program Marka Jaglarza zamienia ATARI w oscyloskop. Nadaje się on do obserwowania niezbyt szybkich przebiegów.
1 GRAPHICS 8+16:COLOR 1:POKE 710,0
2 C=0:POKE 77,0:FOR B=0 TO 1:PLOT 0,Z+
C:FOR A=0 TO 318:Z=C+INT(PADDLE(0)/5):
DRAWTO A,Z:NEXT A:C=100:NEXT B
3 IF PEEK(53279)<>6 THEN 3
4 Z=Z-100:GOTO 1
   Elementy zmieniające swą oporność należy podłączyć do końcówek 9 i 7 złącza joysticka, do badania zmian napięcia (tylko do 5V) wykorzystujemy koncówki 9 i 8.

WIELKANOC

   Krzysztof Wychowałek nadesłał program do wyznaczania daty świąt Wielkiej Nocy metodą Gaussa. Przyznam, ze długo czekałem na taki program, nie mogąc się nigdzie dokopać do opisu tej metody.
1 V=3:INPUT A:B=INT(A/19):C=A-(B*19):B
2=INT(A/4):C2=A-(B2*4):B3=INT(A/7):C3=
A-(B3*7):IF A<>INT(A) OR A<0 THEN 1
2 D=INT((INT(A/100)-1)/2)+15:E=INT(A/1
00)-14:IF A<1583 THEN D=15:E=6
3 Z=C*19+D:X=INT(Z/30):Y=Z-(X*30):Z2=2
*C2+4*C3+6*Y+E:X2=INT(Z2/7):Y2=Z2-(X2*
7):L=Y+Y2+22:IF L>31 THEN L=L-31:V=4
4 IF L=31 THEN ? "31.03/1.04.";A:GOTO 
1
5 ? L;"/";L+1;".0";V;".";A:GOTO 1



Powrót na start | Powrót do spisu treści | Powrót na stronę główną

Pixel 2001