« Bonjour bonjour !!!
Je viens d’aller faire un petit tour sur ton site. J’ai lu le C’est Pas Con n°3. Alors je me suis dit, il est temps pour moi de participer à cette grande aventure, je t’envoie un programme sous forme de fichier texte (histoire d’être fidèle à l’esprit de la grande époque, il faut tout se taper à la mimine). J’espère ne pas m’être planté en le recopiant. Le code n’est pas du tip top, il est sûrement possible de l’optimiser. Si certains ont des propositions …
C’est une horloge graphique avec réveil intégré. Il faut configurer l’heure au lancement de l’appli ainsi que l’heure de sonnerie. En cours de fonctionnement, la touche ‘s’ sert à activer / désactiver la sonnerie. »
Listing : |
10 MODE 2 20 Print »Veuillez entrer l’heure (HH) » 30 input HEURE 40 print » Veuillez entrer les minutes (MM) » 50 input MINUTE 60 print:print »Veuillez entrer l’heure de sonnerie » 70 input RingHH 80 print »Veuillez entrer les minutes pour la sonnerie » 90 input RingMM 100 cls 110 XX=150 120 YY=150 130 SONNERIE=0 140 DEG 150 ORIGIN 320,200 160 INK 0,0:BORDER 0 : INK 1,26 161 MOVE XX*COS(t),YY*SIN(t),1 170 for t=0 to 360 step 8 180 DRAW DRAW XX*COS(t),YY*SIN(t),1 190 NEXT 200 FOR t=0 to 360 STEP 45 210 PLOT (XX-4)*COS(t),(YY-4)*SIN(t),1 220 NEXT 230 EVERY 50,1 GOSUB 450 240 HH=heure 250 MM=minute 260 SS=50 280 MOVE 0,0:DRAWR (XX-20)*SIN((SS-1)*6),(YY-20)*COS((SS-1)*6),0 290 MOVE0,0:DRAWR (XX-20)*SIN(SS*6),(YY-20)*COS(SS*6),1 294 REM ***************************************** 295 REM *** AFFICHAGE DES MINUTES *** 296 REM ***************************************** 300 MOVE 0,0:DRAWR (XX-20)*SIN((MM-1)*6),(YY-20)*COS((MM-1)*6),0 310 DRAW (XX-20)*SIN((MM)*6),(YY-20)*COS((MM)*6),0 320 DRAWR -(XX-20)*SIN((MM-1)*6),-(YY-20)*COS((MM-1)*6),0 330 MOVE 0,0:DRAWR (XX-20)*SIN((MM)*6),(YY-20)*COS((MM)*6),1 340 DRAW (XX-20)*SIN((MM 1)*6),(YY-20)*COS((MM 1)*6),1 350 DRAWR -(XX-20)*SIN((MM)*6),-(YY-20)*COS((MM)*6),1 360 DRAW 0,0 364 REM **************************************** 365 REM *** AFFICHAGE DES HEURES *** 366 REM **************************************** 370 MOVE 0,0:DRAWR (XX-40)*SIN((HH-1)*30),(YY-40)*COS((HH-1)*30),0 380 MOVE 0,0:DRAWR (XX-40)*SIN((HH)*30),(YY-40)*COS((HH)*30),1 390 a$=INKEY$ 400 if a$= »s » THEN SONNERIE=SONNERIE 1 410 IF SONNERIE>1 THEN SONNERIE=0 420 IF SONNERIE =1 then SON$=CHR$(143) ELSE SON$= » « 430 LOCATE 1,1:PRINT « SONNERIE « ;SON$ 440 GOTO 270 450 SS=SS 1 460 IF SS>59 THEN SS=0;MM=MM 1 470 IF MM>59 THEN MM=0;HH=HH 1 480 IF HH>24 THEN HH=0 490 IF HH=RingHH AND MM=RingMM AND SONNERIE=1 THEN FOR t=1 TO 3:SOUND 1,300,5:NEXT 500 RETURN |