10 '----------------------------
20 ' PRONOFOOT 30 '---------------------------- 40 ' par Bouquet Didier 50 ' (30/09/1985) 60 '---------------------------- 70 MODE 1 80 CLS:GOSUB 2500 90 CLS:MODE 1 100 DIM n(16):DIM loc$(16):DIM cl(16):DIM vis$(16):DIM cv(16):DIM prono$(16):DIM d(16):DIM p1(16):DIM p2(16):DIM p3(16):DIM rep$(16):DIM r$(16) 110 INK 3,13 120 BORDER 1 130 CLS:m$="M E N U 1":GOSUB 480 140 LOCATE 8,10:PRINT "-A- EXPLICATIONS" 150 LOCATE 8,15:PRINT "-B- ENTREE DES DONNEES" 160 LOCATE 8,20 :PRINT "PASSEZ EN MAJUSCULES !!" 170 LOCATE 9,22:PRINT "APPUYEZ SUR LA LETTRE" 180 LOCATE 10,24:PRINT "DE L'OPTION CHOISIE" 190 R$=INKEY$ 191 IF R$="A" THEN 2190 192 IF R$="B" THEN 220 210 GOTO 190 220 CLS:m$="M E N U 2":GOSUB 480 230 LOCATE 6,10:PRINT "-A- ENTREE MANUELLE" 240 LOCATE 6,13:PRINT "-B- LECTURE PRONOSTICS SUR K7" 250 LOCATE 6,16:PRINT "-C- RETOUR AU MENU PRECEDENT" 260 LOCATE 6,19:PRINT "-D- PASSAGE AU MENU 3" 270 r$=INKEY$ 271 IF r$="A" THEN GOSUB 3200:GOTO 1680 272 IF r$="B" THEN GOSUB 3200:GOTO 1490 273 IF r$="D" THEN GOSUB 3200:GOTO 340 274 IF r$="C" THEN GOSUB 3200:GOTO 130 310 GOTO 270 320 CLS:MODE 1:LOCATE 3,12:PRINT "ENTREE DES DONNEES BIEN EFFECTUEE" 330 FOR T=1 TO 5000:NEXT 340 CLS:m$="M E N U 3":GOSUB 480 350 LOCATE 6,10:PRINT "-A- PRONOSTIC SUR UN MATCH" 360 LOCATE 6,12:PRINT "-B- LISTE DE TOUS LES PRONOSTICS" 370 LOCATE 6,14:PRINT "-C- SAUVEGARDE PRONOSTICS SUR K7" 380 LOCATE 6,16:PRINT "-D- SORTIE SUR IMPRIMANTE" 390 LOCATE 6,18:PRINT "-E- RETOUR AU MENU PRECEDENT" 400 LOCATE 6,20:PRINT "-F- FIN DU PROGRAMME" 410 r$=INKEY$ 411 IF R$="A" THEN GOSUB 3200:GOTO 1210 420 IF R$="B" THEN GOSUB 3200:GOTO 1060 430 IF R$="C" THEN GOSUB 3200:GOTO 800 440 IF R$="D" THEN GOSUB 3200:GOTO 590 450 IF R$="E" THEN 220 460 IF R$="F" THEN 2890 470 GOTO 410 480 ' 490 '-------------------------- 500 ' AFFICHAGE "M E N U" 510 '-------------------------- 520 ' 530 PEN 1:MODE 1 540 LOCATE 15,3:PRINT"----------" 550 FOR j=1 TO 26:LOCATE 41-j,2:PRINT LEFT$(m$,j);:PRINT " " 560 NEXT j 570 RESTORE 3170:GOSUB 3120 580 RETURN 590 ' 600 '-------------------------- 610 ' SORTIE SUR IMPRIMANTE 620 '-------------------------- 630 ' 640 CLS:PEN 3 650 MODE 1:LOCATE 1,10:PRINT "Votre imprimante est-elle prete ?":PRINT:PRINT" Si oui tapez un espace.":PRINT:PRINT"(En cas d'erreur d'option,tapez X)" 660 R$=INKEY$ 661 IF R$=" " THEN 690 670 IF R$="X" THEN 340 680 GOTO 660 690 CLS:LOCATE 10,12:PRINT"IMPRESSION EN COURS" 700 WIDTH 75 710 PRINT #8," P R O N O S T I C S " 720 PRINT #8," -------------------" 730 PRINT #8:PRINT #8 740 FOR n=1 TO 9:PRINT #8, "Match No ";n;:PRINT #8," "; loc$(n);" contre ";vis$(n);:y=POS(#8):a=60-y:FOR l=1 TO a:PRINT #8, ".";:NEXT l:PRINT #8, prono$(n) 750 NEXT n 760 FOR n=10 TO 16:PRINT #8, "Match No ";n;:PRINT #8," "; loc$(n);" contre ";vis$(n);:y=POS(#8):a=60-y:FOR l=1 TO a:PRINT #8, ".";:NEXT l:PRINT #8, prono$(n) 770 NEXT n 780 PRINT #8:PRINT #8:PRINT #8 790 GOTO 340 800 ' 810 '-------------------------- 820 ' SAUVEGARDE SUR K7 830 '-------------------------- 840 ' 850 MODE 1:PEN 3 860 LOCATE 1,12:PRINT"Quelle est la date d'enregistrement de":PRINT"ces pronostics (JJ/MM/AA) ":INPUT "(En cas d'erreur sur le choix de l'option, tapez X) ";date$ 870 IF date$="X" THEN 340 880 CLS:LOCATE 1,12:PRINT "A quelle vitesse desirez-vous enregistrer (R=rapide,N=normale) " 890 R$=INKEY$ 891 IF R$="R" THEN SPEED WRITE 1:GOTO 920 900 IF R$="N" THEN SPEED WRITE 0:GOTO 920 910 GOTO 890 920 CLS:OPENOUT "!date$" 930 PRINT "La cassette est-elle prete ?" 940 PRINT:PRINT:PRINT"Appuyez sur les touches REC et PLAY du datacorder " 950 PRINT:PRINT:PRINT"Tapez un espace pour commencer." 960 R$=INKEY$: IF R$=" " THEN 970 965 GOTO 960 970 CLS:LOCATE 8,12:PRINT "ENREGISTREMENT EN COURS" 980 FOR n=1 TO 16 990 PRINT#9,loc$(n):PRINT#9,vis$(n):PRINT#9,prono$(n):PRINT#9,p1(n):PRINT#9,p2(n):PRINT#9,p3(n) 1000 NEXT n 1010 CLOSEOUT 1020 CLS:LOCATE 1,12:PRINT "Fin de l'enregistrement, appuyez sur STOP " 1030 FOR t=1 TO 5000:NEXT t 1040 CLS 1050 GOTO 340 1060 ' 1070 '-------------------------- 1080 ' LISTE DES PRONOSTICS 1090 '-------------------------- 1100 ' 1110 MODE 2:INK 1,13:PEN 1 1120 PRINT TAB(30) "P R O N O S T I C S " 1130 PRINT TAB(30) "-------------------" 1140 PRINT:PRINT 1150 FOR n=1 TO 16:PRINT "Match No ";n;:PRINT TAB(15) loc$(n);" contre ";vis$(n);:y=POS(#0):a=60-y:FOR l=1 TO a:PRINT ".";:NEXT l:PRINT prono$(n) 1160 NEXT n 1170 LOCATE 1,22:PRINT"Pour retourner au MENU 3, tapez un espace." 1180 R$=INKEY$:IF R$=" " THEN 1190 1185 GOTO 1180 1190 CLS:INK 1,24:GOTO 340 1200 LOCATE 10,24:PRINT "DE L'OPTION CHOISIE" 1210 ' 1220 '-------------------------- 1230 ' PRONOSTICS SUR UN MATCH 1240 '-------------------------- 1250 ' 1260 MODE 1:PEN 3:CLS 1270 LOCATE 1,12:INPUT "Quel match (tapez le numero) ";n 1280 IF n<1 OR n>16 GOTO 1270 1290 CLS:LOCATE 15,12:PRINT "Voici..." 1300 FOR t=1 TO 1500:NEXT t 1310 MODE 2:PEN 3:GOSUB 3200 1320 PRINT "Match No ";n;" ";loc$(n);:PRINT TAB(30) "contre";:PRINT TAB(40) vis$(n) 1330 IF n<10 THEN PRINT "-----------" ELSE PRINT "------------" 1340 PRINT:PRINT:PRINT 1350 PRINT loc$(n);:PRINT " a ";p1(n);" % de chances de battre ";vis$(n);" a domicile." 1360 PRINT:PRINT 1370 PRINT loc$(n);:PRINT " a ";p2(n);" % de chances de faire nul a domicile avec ";vis$(n) 1380 PRINT:PRINT 1390 PRINT vis$(n);:PRINT " a ";p3(n);" % de chances de l'emporter a l'exterieur contre ";loc$(n) 1400 PRINT:PRINT:PRINT:PRINT 1410 PRINT " P R O N O S T I C : ";prono$(n) 1420 PRINT " ----------------- " 1430 PRINT:PRINT 1440 PRINT "Pour un autre match, appuyez sur ESPACE" 1450 PRINT "Pour retourner au MENU 3,appuyez sur DEL" 1460 R$=INKEY$ 1461 IF INKEY(79)=0 THEN 340 1470 IF R$=" " THEN 1260 1480 GOTO 1460 1490 ' 1500 '-------------------------- 1510 ' LECTURE FICHIER 1520 '-------------------------- 1530 ' 1540 CLS:MODE 1:PEN 3 1550 LOCATE 1,12:INPUT "Donnez la date des pronostics que vous desirez recuperer ( JJ/MM/AA ) (En cas d'erreur dans le choix de l'option,tapez X) ";date$ 1560 IF date$="X" THEN 220 1570 LOCATE 1,6:PRINT "Preparez la cassette,appuyez sur PLAY, puis la barre d'espace " 1580 R$=INKEY$:IF R$=" " THEN 1590 1585 GOTO 1580 1590 CLS:LOCATE 12,12:PRINT "LECTURE EN COURS" 1600 OPENIN "!date$" 1610 FOR n=1 TO 16 1620 INPUT#9, loc$(n):INPUT#9,vis$(n):INPUT#9,prono$(n):INPUT#9,p1(n):INPUT#9,p2(n):INPUT#9,p3(n):IF EOF=1 THEN 1640 1630 NEXT n 1640 CLOSEIN 1650 CLS:LOCATE 1,12:PRINT "Les donnees sont en memoire, appuyez sur la touche STOP du lecteur de cassette" 1660 FOR t=1 TO 5000:NEXT t 1670 GOTO 320 1680 ' 1690 '--------------------------- 1700 ' ENTREE MANUELLE 1710 '--------------------------- 1720 ' 1730 CLS:PEN 3:LOCATE 1,3:PRINT "Pour proceder a l'entree manuelle des donnes,tapez un ESPACE ":LOCATE 1,10:PRINT "Pour retourner au MENU 2, tapez DEL " 1740 R$=INKEY$ 1745 IF R$=" " THEN 1770 1750 IF INKEY(79)=0 THEN 220 1760 GOTO 1740 1770 CLS:MODE 2 1780 FOR n=1 TO 16 1790 PRINT "MATCH No";n 1800 LOCATE 1,4:INPUT "Quelle est l'equipe qui recoit ";loc$(n) 1810 IF loc$(n)="Z" THEN 320:IF loc$(n)="" THEN 1800 1820 LOCATE 1,7:INPUT "Quel est son classement actuel ";cl(n) 1830 LOCATE 1,10:INPUT "Quelle est l'equipe visiteuse ";vis$(n) 1840 IF vis$(n)="" THEN 1830 1850 LOCATE 1,13: INPUT "Quel est son classement actuel ";cv(n) 1860 LOCATE 1,16:PRINT "Connaissez-vous le resultat du meme match l'an dernier ( O / N )":INPUT "(si le match n'a pas eu lieu repondre N) ";r$(n) 1870 IF r$(n)="O" THEN 1890 1880 IF r$(n)="N" THEN 1920 ELSE 1860 1890 PRINT:PRINT 1900 LOCATE 1,20:INPUT "L'equipe qui recoit, avait-elle gagne,fait match nul ou perdu (G / N / P) ";rep$(n) 1910 IF rep$(n)="G" OR rep$(n)="N" OR rep$(n)="P" THEN 1920 ELSE 1900 1920 GOSUB 2000 1930 CLS 1940 GOSUB 2100 1950 NEXT N 1960 CLS:GOTO 320 1970 '--------------- 1980 ' CHANCES 1990 '--------------- 2000 d(n)=cv(n)-cl(n) 2010 p1(n)=INT(1.8553*d(n)+45) 2020 p2(n)=INT(-0.0104*(d(n)^2)+27) 2030 p3(n)=100-(p1(n)+p2(n)) 2040 IF r$(n)="N" THEN 2080 2050 IF rep$(n)="G" THEN p1(n)=p1(n)+10:p3(n)=p3(n)-10 2060 IF rep$(n)="N" THEN p2(n)=p2(n)+5:p3(n)=p3(n)-3:p1(n)=p1(n)-2 2070 IF rep$(n)="P" THEN p3(n)=p3(n)+5:p1(n)=p1(n)-5 2080 IF p3(n)<0 THEN p3(n)=0 2090 RETURN 2100 '--------------- 2110 ' PRONOSTIC 2120 '--------------- 2130 b$="Match nul" 2140 IF p1(n)>p3(n)+5 THEN prono$(n)=loc$(n) 2150 IF ABS(p1(n)-p3(n))<=5 THEN prono$(n)=b$ 2160 IF p3(n)>p1(n)+5 AND (p1(n)+INT(p2(n)/2))<p3(n) THEN prono$(n)=vis$(n) 2170 IF p3(n)>p1(n)+5 AND (p1(n)+INT(p2(n)/2))>p3(n) THEN prono$(n)=b$ 2180 RETURN 2190 ' 2200 '-------------------------- 2210 ' EXPLICATIONS 2220 '-------------------------- 2230 ' 2240 MODE 0:BORDER 26:PAPER 4:PEN 7:CLS 2250 LOCATE 7,8:PRINT "AMATEURS" 2260 LOCATE 3,14:PRINT"DE LOTO SPORTIF" 2270 LOCATE 5,20:PRINT"A VOS GRILLES" 2280 FOR T=1 TO 1500:NEXT T 2290 CLS 2300 MODE 1:LOCATE 2,2:PRINT "Car en effet PRONOFOOT peut vous aider":LOCATE 5,6:PRINT"a reussir vos pronostics sur les ":LOCATE 4,10:PRINT"matches de football proposes par la " 2310 LOCATE 5,14:PRINT"nouvelle formule du loto sportif.":LOCATE 11,18:PEN 1:PRINT "COMMENT PROCEDER ?" 2320 FOR t=1 TO 2500:NEXT t:CLS 2330 BORDER 1:MODE 2 2340 LOCATE 1,2:PRINT "===> Le MENU 1 vous propose d'abord d'entrer les donnees ( Appuyez sur B )" 2350 PRINT:PRINT:PRINT:PRINT"===> Deux choix d'entree sont possibles dans le MENU 2 2360 PRINT:PRINT" -- ENTREE MANUELLE: instructions incluses (N.B. pour le classement, n'inscrire que le nombre. Exemple : 18 pour 18eme). 2370 PRINT:PRINT" -- LECTURE PRONOSTICS SUR K7: instructions incluses (N.B. pour la date, bien respecter le modele JJ/MM/AA .Exemple : 29/09/85)." 2380 PRINT"Pour facilement retrouver les donnees, il est bien entendu necessaire d'avoir correctenent noter la date d'enregistrement a la sauvegarde.":PRINT 2390 PRINT:PRINT:PRINT"===> Enfin dans le MENU 3, les options sont clairement enoncees, notez quand " 2400 PRINT"meme que 'PRONOSTIC SUR UN MATCH' donne en plus les 'chances' de victoire de chaque equipe et que pour SAUVEGARDE SUR K7, voyez les renseignements plus haut." 2410 GOSUB 3330 2420 CLS:LOCATE 28,1:PRINT"-----------------------" 2430 LOCATE 28,2:PRINT"I DERNIERES REMARQUES I" 2440 LOCATE 28,3:PRINT"-----------------------" 2450 LOCATE 7,10:PRINT"PRONOFOOT vous donne bien sur les resultats dits 'normaux'." 2460 LOCATE 7,15:PRINT"Un conseil encore: il est necessaire d'avoir le classement le plus precis possible et bien sur le fait de connaitre le resultat du meme match l'annee":PRINT"precedente 'affine' le pronostic." 2480 FOR t=1 TO 3500:NEXT t 2490 GOTO 110 2500 ' 2510 '-------------------------- 2520 ' PRESENTATION 2530 '-------------------------- 2540 ' 2550 MODE 0:BORDER 1:PAPER 0:PEN 1 2560 CLS:LOCATE 3,8:PRINT "BOUQUET DIDIER":LOCATE 7,16:PRINT "presente" 2570 FOR T=1 TO 1500:NEXT:CLS 2580 SYMBOL 240,&E0,&F8,&FC,&FC,&FE,&FE,&FF,&FF 2590 SYMBOL 241,&7,&1F,&3F,&3F,&7F,&7F,&FF,&FF 2600 SYMBOL 242,&FF,&FF,&FE,&FE,&FC,&FC,&F8,&E0 2610 SYMBOL 243,&FF,&FF,&7F,&7F,&3F,&3F,&1F,&7 2620 INK 8,1:INK 9,1:INK 10,1:INK 11,1:INK 12,1:INK 13,1:INK 14,1 2630 FOR n=1 TO 9 2640 READ ch(n),l(n) 2650 NEXT n 2660 FOR q=1 TO 9 2670 FOR p=1 TO l(q) 2680 READ x,y,i:LOCATE x,y:PEN i:PRINT CHR$(ch(q)) 2690 NEXT p 2700 NEXT q 2710 DATA 143,10,240,8,241,5,133,42,138,33,243,4,242,6,209,6,211,6 2720 DATA 4,4,8,7,4,9,4,7,8,7,7,9,7,8,9,4,16,11,5,16,11,16,16,12,17,16,12,4,19,11 2730 DATA 5,4,8,8,4,9,11,4,13,14,4,10,17,4,13,8,8,9,9,16,13,13,16,13 2740 DATA 10,4,13,13,4,10,16,4,13,8,16,13,12,16,13 2750 DATA 4,5,8,7,5,9,10,5,13,13,5,10,16,5,13,4,6,8,7,6,9,10,6,13,13,6,10,16,6,13,10,7,13,13,7,10,16,7,13,4,8,8,10,8,13,13,8,10,16,8,13,4,9,8,7,9,9,10,9,13,13,9,10,16,9,13,4,10,8,7,10,9,13,10,10,11,13,14,4,17,11,8,17,13,12,17,13,4,18,11,8,18,13,12,18,13 2760 DATA 5,19,11,8,19,13,12,19,13,4,20,11,8,20,13,12,20,13,4,21,11,8,21,13,12,21,13,4,22,11 2770 DATA 5,5,8,8,5,9,11,5,13,14,5,10,17,5,13,5,6,8,8,6,9,11,6,13,14,6,10,17,6,13,11,7,13,14,7,10,17,7,13,11,8,13,14,8,10,17,8,13,8,9,9,11,9,13,14,9,10,17,9,13,8,10,9,14,10,10,10,13,14,9,17,13,13,17,13,9,18,13,13,18,13,9,19,13,13,19,13,9,20,13,13,20,13 2780 DATA 9,21,13,13,21,13 2790 DATA 10,10,13,16,10,13,8,22,13,12,22,13 2800 DATA 5,7,8,8,7,9,11,10,13,17,10,13,9,22,13,13,22,13 2810 DATA 16,17,12,16,18,12,16,19,12,16,20,12,16,21,12,16,22,12 2820 DATA 17,17,12,17,18,12,17,19,12,17,20,12,17,21,12,17,22,12 2830 SPEED INK 20,100:BORDER 7 2840 INK 8,1,10:INK 9,1,17:INK 10,1,14:INK 11,1,16:INK 12,1,8:INK 13,1,22:INK 14,1,6 2850 INK 8,1,24 2860 GOSUB 3000 2870 FOR t=1 TO 1000:NEXT t 2880 RETURN 2890 ' 2900 '-------------------------- 2910 ' FIN 2920 '-------------------------- 2930 ' 2940 MODE 0:BORDER 15:PAPER 1:PEN 0:CLS 2950 LOCATE 5,9:PRINT"BONNE CHANCE" 2960 LOCATE 10,13:PRINT"A":LOCATE 7,17:PRINT"BIENTOT" 2970 GOSUB 3240:FOR T=1 TO 4300 :NEXT T 2980 MODE 1:BORDER 1:PAPER 0:PEN 1:CLS 2990 END 3000 ' 3010 '-------------------------- 3020 ' MUSIQUE 3030 '-------------------------- 3040 FOR n=1 TO 85 3050 READ note%,temps% 3060 SOUND 1,note%,temps% 3070 NEXT n 3080 DATA 213,20,201,20,190,20,119,40,190,20,119,40,190,20,119,70,0,20,119,20,106,20,100,20,95,20,119,20,106,20,95,40,127,20,106,40,119,70,0,20,213,20,201,20,190,20,119,40,190,20,119,40,190,20,119,70,0,20 3090 DATA 142,20,159,20,169,20,142,20,119,20,95,40,106,20,119,20,142,20,106,70,0,20,213,20,201,20,190,20,119,40,190,20,119,40,190,20,119,70,0,20,119,20,106,20,100,20,95,20,119,20,106,20,95,40,127,20,106,40,119,70,0,20 3100 DATA 119,20,106,20,95,20,119,20,106,20,95,40,119,20,106,20,119,20,95,20,119,20,106,20,95,40,119,20,106,20,119,20,95,20,119,20,106,20,95,40,127,20,106,40,119,60,119,20,0,20 3110 RETURN 3120 '----- 3130 FOR j=1 TO 15 3140 READ note%,t 3150 SOUND 2,note%,t 3160 NEXT 3170 DATA 239,20,213,20,190,20,179,20,159,20,0,5,159,20,0,5,159,40,0,5,239,20,213,20,190,20,179,20,159,40 3180 RETURN 3190 '----- 3200 FOR j%=163 TO 188 STEP 4 3210 SOUND 2,j%,5,5 3220 NEXT j% 3230 RETURN 3240 '----- 3250 RESTORE 3300 3260 FOR n=1 TO 7 3270 READ note%,temps% 3280 SOUND 2,note%,temps% 3290 NEXT n 3300 DATA 119,120,127,40,119,20,95,120,106,60,119,200,0,40 3310 RETURN 3320 '----- 3330 RESTORE 3380 3340 FOR n=1 TO 100 3350 READ note%,temps% 3360 SOUND 2,note%,temps%,3 3370 NEXT 3380 DATA 319,30,0,15,319,45,268,35,239,30,319,30,0,15,319,45,358,30,338,30,319,30,0,15,319,45,268,30,239,30,319,30,0,15,319,45,358,30,338,30,268,15,319,15,426,135,268,15,319,15,451,135,268,15,319,15,478,135,268,15,239,15,0,30 3390 DATA 358,30,338,30,319,30,0,15,319,45,268,30,239,30,319,30,0,15,319,45,358,30,338,30,319,30,0,15,319,45,268,30,239,30,268,15,319,15,169,135,268,15 3400 DATA 319,15,179,135,268,15,319,15,190,135,201,15,213,15,0,15,319,45,268,30,239,30,201,15,239,15,319,135,201,15,239,15,338,135,201,15,239,15 3410 DATA 358,135,402,15,358,15,0,30,402,30,358,30,268,15,319,15,169,135,253,15,319,15,179,135,268,15,319,15,190,135,201,15,213,15,0,15,319,45,268,30,239,30,319,30,0,15,319,45,0,15,179,15,159,135,0,15 3420 RETURN |