Q-basic munakello. En osaa käyttää timeriä joten piti inspiroida. Koodi olisi timerillä varmaan lyhyempi. Ei osaa näyttää yli tunnin kestäviä matkaja tai en ainakaan huomannut. Toimii FOR-NEXT lauseilla
s = 0 CLS 'näyttö tyhjäks 1 : PRINT PRINT "Aseta aika" PRINT PRINT "Minuutit" INPUT minu IF minu >= 60 THEN PRINT "Minuutteja on vähemmän kuin 60" IF minu >= 60 THEN GOTO 1 'jos joku mäntti on laittanu CLS 'liikaa minuutteja pistetään takas asettaan aika. 2 : PRINT PRINT "Tunnit" INPUT tunti IF tunti >= 24 THEN PRINT "Tunteja pitää olla vähemmän kuin 24" 'sama juttu kuin edellisessä kommentissa IF tunti >= 24 THEN GOTO 2 CLS 3 : PRINT PRINT "Onko kello varmasti "; tunti; ":"; minu; "(k/e) " 'varmistaa ajan WHILE q$ = "" 'odottaa, kunnes painetaan kyllä tai ei. q$ = INKEY$ WEND IF q$ = "k" THEN GOTO veikap 'lähettiin säätämään herätysaika IF q$ = "e" THEN GOTO 1 'eipä lähettykään. minuutit uusiks. veikap: CLS PRINT "Monelta tahdot hälytyksen?" 'hälytyksen säätöä 4 : INPUT "Minuutit"; min CLS IF min >= 60 THEN PRINT "Minuutteja pitää olla vähemmän kuin 60": GOTO 4 'takas neloseen jos minuutteja on liikaa 5 : CLS INPUT "Tunnit"; hour CLS IF hour >= 24 THEN PRINT "Tunteja pitää olla vähemmän kuin 24": GOTO 5 6 : CLS PRINT PRINT "Haluatko, että herätysaika on klo "; hour; ":"; min; "(k/e)" 'varmistetaan hälytys. WHILE w$ = "" 'ja taas odotusta... w$ = INKEY$ WEND IF w$ = "k" THEN GOTO kellok 'nyt voidaan käynnistää kello... IF w$ = "e" THEN GOTO 4 kellok: DO UNTIL INKEY$ = CHR$(27) OR tunti = hour AND minu = min 'tehdään kunnes pitää hälyttää tai on painettu esciä. FOR e = 1 TO 24 - tunti 'tehdään 24 - tuntien määrä kertaa. FOR r = 1 TO 60 - minu 'suurinpiirtein sama juttu... FOR t = 1 TO 60 'tehdään kuuskyt kertaa. FOR y = 1 TO 150000 'tää voi vaihdella. minun koneella noin sekunti LOCATE 20, 15 PRINT tunti; ":"; minu; ":"; s IF minu = 60 THEN tunti = tunti + 1: minu = 0 IF tunti = 24 THEN tunti = 0 IF tunti = hour AND minu = min THEN PLAY "t250fgfgfgfgfgfgfgfgfgfgfgfgfgfgfgfgfg": PRINT "Herätys!!": END 'soitetaan hälytys ja lopetetaan IF s = 60 THEN s = 0 NEXT CLS s = s + 1 NEXT minu = minu + 1 NEXT NEXT LOOP END
Aihe on jo aika vanha, joten et voi enää vastata siihen.