XXXVII, 1989.-1990. õppeaasta Lõppvooru ülesanded 1. ülesanne Olgu antud programm Basic 'us 10 INPUT A,B 20 K=0 : SC=0 30 PT=1 : R=A 40 IF K=B THEN 110 50 IF K+PT <= B THEN 80 60 PT=1 : R=A 70 GOTO 40 80 K=K+PT : PT=PT+PT 90 SC=SC+R : R=R+R 100 GOTO 40 110 PRINT SC 120 END või Pascal 'is begin readln(A,B); K:=0; SC:=0; PT:=1; R:=A; while KB do if K+PT <= B then begin K:=K+PT; PT:=PT+PT; SC:=SC+R; R:=R+R; end else begin PT:=1; R:=A; end; writeln(SC); end. Kuidas avaldub SC lõppväärtus A ja B kaudu? B naturaalarvulist väärust, mille korral else osa (Basic-programmis rida 60) täidetakse korduvalt, nim. ebasoodsaks . a) Leida ilmutatult (st valemiga) kõik B ebasoodsad väärtused. b) Näidata, et tsükli täitmise kordade arv ei sõltu A väärtusest. c) Ebasoodsa B väärtuse jaoks väljendada ilmutatult täitmiskordade arv
2. ülesanne Tasandil on antud n punkti koordinaatidega (X1,Y1), (X2,Y2), .. , (Xn,Yn). Koostada algoritm ja programm leidmaks neist sellised punktinelikud, mis oleksid mingi ruudu tippudeks. Leida nii määratud ruutude hulgast selline, mis hõlmaks maksimaalse hulga vaadeldavaid punkte. Seejuures lugeda ruutu kuuluvaks ka selle külgedele sattunud punktid. Praktiline voor 1. Putukate arv N[i] mingil aastal on määratud valemiga N[i] = a*N[i-1] - b*N[i-1]^2, kus N[i-1] on putukate arv eelmisel aastal, a on paljunemiskordaja ning b üleasustuskordaja. Leida tingimused kordajatele a ja b selleks, et paljude aastate möödudes putukate arvukus: a) stabiliseeruks; b) muutuks kaheaastase perioodiga; c) muutuks nelja-aastase perioodiga; d) muutuks seaduspäratult. 2. Lahendada jõukohane variant järgmisest ülesandest: lugeda stringina aritmeetiline avaldis ja arvutada selle väärtus, kui avaldis koosneb: 1) naturaalarvudest ja märkidest +, -; 2) naturaalarvudest ja märkidest +, -, *, /; 3) naturaalarvudest, sulgudest ja märkidest +, -, *, /. Avaldise sisestamisel peab programm teatama, millest võib avaldis koosneda. 3. Linna metroojaamad on tähistatud tähtedega A, B, C, ... (kuni 30 jaama) ja liinid sõnadega, mis koosnevad jaamade tähtedest liinil asumise järjekorras (ringliini korral on sõna esimene ja viimane täht võrdsed). Kui jaamas saab teisele liinile ümber istuda, siis on ta mõlemal liinil tähistatud sama tähega. On teada, et metroo koosneb mitmest osast ja ühestki jaamast ei saa sõita kõigisse teistesse (isegi ümberistumisi kasutades). Lugeda sisse metrooliinid ja kahe jaama tähised. 1) Kontrollida, kas esimesest jaamast saab sõita teise. 2) Kui saab, siis leida kiireim tee kahe loetud jaama vahel (lugedes ajakulu sõitmisel peatusest naaberpeatusse kõikjal ühesuguseks ning 3 korda väiksemaks kui ümberistumisele kuluv aeg). |