1

voila donc j'ai fait un prog pour calculer la moyenne au bac ainsi que le nb de points smile , truc basique mais bon vu que je suis nul en programmation faut bien que je me lance ac des trucs pourri . donc voila mon prog marche mais j'arrrive pas a avoir ce que je veux. il me donne bien ma moyenne et le nb de points mais je veux qu'il affiche un msg en fonction du nb de points donc j'ai defini quelque msg avec la commande if mais il me dit test sans succes vrai ou faux sorry
et au passage corriger mon prog et comment nomme t'on une chaine pour eviter de se la retaper a chaque fois . merci

voila le prog :

()
Prgm
EffES
Disp " <*-Moyenne-bac-*>"
Disp " Bienvenue sur Moyenne-bac"
Disp "Moyenne de maths"
Prompt a
Disp "Moyenne de physique-Chimie"
Prompt b
Disp "Moyenne de SVT"
Prompt c
Disp "Moyenne d'anglais"
Prompt d
Disp "Moyenne d'espagnol"
Prompt e
Disp "Moyenne d'histoire"
Prompt f
Disp "Moyenne de philosophie"
Prompt g

Disp "Moyenne de Sport"
Prompt h
Disp "Moyenne Francais ecrit"
Prompt i
Disp "Moyenne Francais oral"
Prompt j
Disp "Moyenne de TPE"
Prompt k
Disp "Moyenne bac:"&chaîne(approx((a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)/(9+6+6+3+3+3+2+2+2+2+2)))
Disp "sur 20"
Pause
Disp "nb de points:"&chaîne(a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)
Disp "sur "&chaîne(20*9+20*6+20*6+20*3+20*3+20*3+20*2+20*2+20*2+20*2+20*2)
If "&chaîne(a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)"=400
Disp "*t'*as*ton*bac!!!*"
End
If "&chaîne(a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)<320"
Disp "*t'*as*pas*ton*bac*gros*nul*"
EndIf
If "&chaîne(a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)ž320" and
If "&chaîne(a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)<800"
Disp "*t'*es*a*la*repeche*fion*"
EndIf

EndPrgm

2

C'est normal tu compares une chaîne de caractères avec un nombre, et le Basic de la TI n'accepte pas ça.

Il suffit de faire simplement :

If (a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)=400

pour tester les valeurs

3

ou bien pour éviter de se retaper le calcul 50 fois :

somme<-a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2

if somme=400 then
...
elseif somme<320 then
...
endif
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

4

ah j'avais pas vu que c'était 50 fois le même calcul triso donc tu mets en plus ce qu'a dit zephyr, et juste avant ton "effES", tu mets un "local somme" pour éviter que la mémoire ne soit parasitée.

(par contre, la flèche est dans l'autre sens tongue)

5

ué, modulo les quelques erreurs; je sais plus du tout comment s'écrit le ti-basic
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

6

merci yosh mais j'ai toujours une erreur qui persiste il me dit manque d'une instruction de debut ou de fin de bloc ou est l'erreur :

prog corrigé smile :

()
Prgm
EffES
Disp " <*-Moyenne-bac-*>"
Disp " Bienvenue sur Moyenne-bac"
Disp "Moyenne de maths"
Prompt a
Disp "Moyenne de physique-Chimie"
Prompt b
Disp "Moyenne de SVT"
Prompt c
Disp "Moyenne d'anglais"
Prompt d
Disp "Moyenne d'espagnol"
Prompt e
Disp "Moyenne d'histoire"
Prompt f
Disp "Moyenne de philosophie"
Prompt g

Disp "Moyenne de Sport"
Prompt h
Disp "Moyenne Francais ecrit"
Prompt i
Disp "Moyenne Francais oral"
Prompt j
Disp "Moyenne de TPE"
Prompt k
Disp "Moyenne bac:"&chaîne(approx((a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)/(9+6+6+3+3+3+2+2+2+2+2)))
Disp "sur 20"
Pause
Disp "nb de points:"&chaîne(a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)
Disp "sur "&chaîne(20*9+20*6+20*6+20*3+20*3+20*3+20*2+20*2+20*2+20*2+20*2)
If (a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)=400
Disp "*t'*as*ton*bac!!!*"
EndIf
If (a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)<320
Disp "*t'*as*pas*ton*bac*gros*nul*"
EndIf
If (a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)ž320 and
If a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)<400
Disp "*t'*es*a*la*repeche*fion*"
EndIf

EndPrgm

7

il te manque des "then" à la fin de tes if
avatar

8

If (a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)<320 and If a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2)<400 

pas besoin de mettre deux IF. Vire le deuxième.

9

bon alors j'ai suivi toutes vos correction mais il ne veut pas se lancer il me dit : ( manquant

prog :

()
Prgm
somme>-a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2
local somme
EffES
Disp " <*-Moyenne-bac-*>"
Disp " Bienvenue sur Moyenne-bac"
Disp "Moyenne de maths"
Prompt a
Disp "Moyenne de physique-Chimie"
Prompt b
Disp "Moyenne de SVT"
Prompt c
Disp "Moyenne d'anglais"
Prompt d
Disp "Moyenne d'espagnol"
Prompt e
Disp "Moyenne d'histoire"
Prompt f
Disp "Moyenne de philosophie"
Prompt g
Disp "Moyenne de Sport"
Prompt h
Disp "Moyenne Francais ecrit"
Prompt i
Disp "Moyenne Francais oral"
Prompt j
Disp "Moyenne de TPE"
Prompt k
Disp "Moyenne bac:"&chaîne(approx((somme)/(9+6+6+3+3+3+2+2+2+2+2)))"
Disp "sur 20"
Pause
Disp "nb de points:"&chaîne(somme)"
Disp "sur "&chaîne(somme)"
If somme=400 then Disp "*t'*as*ton*bac!!!*"
If somme<320 then Disp "*t'*as*pas*ton*bac*gros*nul*"
If 320œsomme<400 then Disp "*t'*es*a*la*repeche*fion*"
EndIf

EndPrgm

10

je crois que somme est un mot réservé... Essaye avec somm ou som.
et le local somme c'est au tout début du prog, juste après le prgm.
et ta définition de somme est au mauvais endroit : mets-le après disp "sur 20"

11

c'est pas somme>-a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2 mais a*9+b*6+c*6+d*3+e*3+f*3+g*2+h*2+i*2+j*2+k*2->somme ^^

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

12

Un bon truc pour aléger ton programme : au lieu de mettre "Disp [ce que tu veux comme texte]" puis "Prompt [ta variable]", utilise "Input" (va voir la syntaxe dans ton manuel)
Si tu veux mettre deux textes avec "Disp" à la suite, tu peux utiliser "Disp [texte1],[texte2],..." (je te donne la syntaxe car tu connais l'instruction)
Somme est une fonction dans la version Française, donc tu ne peut pas l'utiliser comme nom de variable.
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

13

tu devrais lire le manuel un minimum au lieu d'essayer de deviner la syntaxe du basic -_-
avatar

14

bien d'abord merci a tous tout fonctionne , le calcul moyenne calcul de points et affichage d'un msg differents suivant le nb de points gringrin perfectoo
mais il me manque 2 3 ptite commande smile
d'abord j'ai mis un popup a la fin qui permet soi de relancer le prog soit de le quitter , pour le relancer sa marche mais pour le fermer sa marche pas je dois mettre koi comme commande :

PopUp {"Recalculer","Quitter"},choix
If choix=1 Then
moyenn()
EndIf
If choix=2 Then

EndIf

donc voila que doit-je mettre pour que le choix "quitter" ferme le programmesmile

15

puis je souhaiterais mettre un popup qui donne un choix et selon ce choix genre choix 1 : sa lance une partie du prog ( ds laquelle il y a tout le prog du debut ac demande des variable etc ) et choix2: que sa lance une autre partie du prog ( ds laquelle je met le mm prog mais ac des operation differente) en clair comment definir une partie du prog avec un nom pour pouvoir apres la lancer si vous aviez une idée sa 'arangerais grin

16

oula non c'est pas beau du tout ça grin

pour refaire un calcul tu ne dois pas rappeler le programme parceque en faisant ça tu ne quittes pas le programme déjà en cours. ce qui veut dire rn gros que tu auras plusieurs fois le même programme lancé
à la place tu dois plutot faire une boucle qui revient au début du programme (ou un goto ça ira plus vite mais c'est moins beau)

pour quitter le programme en fait quand tu fais ça le programme a quand mêem quitté mais l'écran IO est toujours affiché
utilise la commande disphome

cross:
pour ta troisieme question, tu peux par exemple mettre une partie du prog à l'intérieur d'un if
avatar

17

je me posais une question pck la avec mes faibles connaissance je vais pas m'en sortir pour faire ce que je veux sorry
donc je me disais pourquoi pas utiliser une toolbar avec en title 1 le choix des classes pour calculer la moyenne bac ( cad Terminale S ou ES ou L ou STG ou autres )
en title 2 quitter grin. et pour les items du title 1 jutilise les Lbl m0 m1 m2 etc.. et apres je cree les Lbl en y mettant toutes les serie de calcul necessaire so good non ? grin

18

peu importe la manière de présenter ton menu (toolbar, popup, dropdown, etc)
ce qui est important c'est comment est organisé ton programme (comment tu vas executer juste une partie du programme, etc). réfléchis surtout à ça
avatar

19

je poste ma v1.00 :P ds 5 min tu me dis ske t'en pense et tu me conseille sur l'architecture plz grin

20

alors voila la v1.00 grin donc le prog marche mais ma Lbl pour fermer s'execute mais ne ferme pas le prog elle me ferme la toolbar et m'en met une ac tout grisé sauf F5 (ESPrgm) et les Lbl non rempli le seront plus tard car pr le moment j'ai pas les info necessairesmile. si t'a des corrections ou conseils a me fournir je suis preneur voili voilou merci:
()
Prgm
©MOYENNE-BAC par [FEAR]<FLO>
EffES
défGraph("AXES","OFF")
Output 0,100,"¤ v1.00 ¤"
Output 20,40," MOYENNES "
Output 30,25," BAC "
Output 50,35,"Par «FLO»®"

Lbl start
Toolbar
Title "Serie"
Item "Terminale S maths",m0
Item "Terminale S SVT",m1
Item "Terminale S phisic",m2
Item "Terminale ES",m3
Item "Terminale L",m4
Item "Terminale STG",m5
Item "Terminale STI",m6
Title "QUITTER",kuit
EndTBar

Goto start
Lbl m0
Disp "Moyenne de maths"
Prompt a
Disp "Moyenne de physique-Chimie"
Prompt b
Disp "Moyenne de SVT"
Prompt c
Disp "Moyenne d'anglais"
Prompt d
Disp "Moyenne d'espagnol"
Prompt e
Disp "Moyenne d'histoire"
Prompt f
Disp "Moyenne de philosophie"
Prompt g
Disp "Moyenne de Sport"
Prompt h
Disp "Moyenne Francais ecrit"
Prompt i
Disp "Moyenne Francais oral"
Prompt j
Disp "Moyenne de TPE"
Prompt k
Disp "Moyenne bac:"&chaîne(approx(a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2)/(9+6+6+3+3+3+2+2+2+2+2))

Disp "sur 20"
Pause
Disp "nb de points:"&chaîne(a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2)

Disp "sur "&chaîne(20*9+20*6+20*6+20*3+20*3+20*3+20*2+20*2+20*2+20*2+20*2)

If a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2=400 Then
Disp "t'as ton bac!!!"
EndIf
If a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<320 Then
Disp "t'as pas ton bac gros nul!!"
EndIf
If 320œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<400 Then
Disp "t'es a la repeche fion"
EndIf
If 480œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<560 Then
Disp "T'as mention assez bien!"
EndIf
If 560œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<640 Then
Disp "t'as mention bien!!"
EndIf
If 640œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2 Then
Disp "t'as mention tres bien!"
EndIf
Goto start

Lbl m1



Goto start

Lbl m2



Goto start

Lbl m3



Goto start

Lbl m4



Goto start

Lbl m5



Goto start

Lbl m6



Goto start

Lbl kuit
ClrIO
DispHome
Stop
EndPrgm

21

premierement utilise une variable pour enregistrer tous tes calculs temporaires puisque tu les réutilises plusieurs fois (comme on te l'a conseillé au ./3 )
parceque là c'est atroce

ensuite des gotos... humpf
bon avec une toolbar tu dois en utiliser mais c'est vraiment moche aussi et un programme devient vite le bordel avec non
dans l'absolu il faudrait n'utiliser que des boucles for, while et loop, et ne réserver les gotos que pour de très rares cas très particuliers
enfin bon là ça gêne pas trop trop, mais si tu fais des programmes plus complexes, fais ça happy
avatar

22

ouai sa sera plus lisible pour le coup des calculs sauf qu'il va falloir que j'en cré au moins 10 variable ( pck calcul different pour chake Lbl la tu les voit pas elle sont tapé mais bon sa dechargera un peu les Lbl pour la lecture du prog au moin .
apres les goto et les boucle je ne sais meme pas a quoi sa sert grin ni comment sa s'utilise donc ... si tu me renseigne je saurais ce que sa permet et ce que sa entraine avantage et inconveniant .

et pour mon pb de fermeture du prog avec la Lbl kuit t'aurais pas une solution pck je desespere la sorry merci pr ton aide smile

23

pour les calculs je t'assure, utilise des variables temporaire
10 variables ? est ce que tu es sur que tu as besoin d'utiliser des variables différentes pour chaque label au lieu de réutiliser les mêmes variables ?

ça ne marche pas comme c'est la fermeture du prog ? hum
j'ai pas essayé mais normalement ça devrait marcher
ça fait quoi actuellement ?
avatar

24

bien pour les variables les calcul sont different pour chaque Lbl u1 u2 u3 P1 P2 P3 dc jvai devoir en créé autant que de Lbl mais bon vu que j'utilise au moin 6 fois le calcul par Lbl sa fait quand meme des economies d'utiliser les variables grin
et pour la fermeture du prog et bien la toolbar se grise ( je peu appuyer sur aucune sauf sur F5 qui correspond a ESPrgm) sans pour autant revenir a la fenetre main je comprend pas pourtan sur un autre prog cette meme Lbl marche sorry

25

non mais à propos des variables, réfléchis si tu ne pourrais pas utiliser UNE SEULE variable temporaire pour tout le programme
(quand je te demandais si tu pouvais, la réponse était bien sur "tu peux" tongue)

ah je vois ce qui cloche... ta calc est en français et les instructions que je t'ai données sont en anglais (disphome et clrio)
ya une table de correspondance je crois dans le manuel
edit: ou pas. comme ya de l'anglais et du français dans ton prog je sais plus trop, et j'ai jamais utilisé le français sur la mienne alors je ne sais pas quelles instructions ont été traduites ou pas
avatar

26

en effet elle est en francais mais je comprend pas ds un autre prog les mm commande marche enfin bon pour les traductions je pensais a sa

clrio : effEcran
disphome: je c pas
stop : pareil en fr smile

pour les variables je ferais sa apres smile

27

DispHome : AffEcran
./13 : si c'est à moi que tu t'adressais, Nue, je ne devine pas la syntaxe, je peux dire que je la connais.
avatar
Je sais qu'il y a marqué "con" sur ma gueule. Je suis né comme ça, je m'y fais. Mais pourquoi toutes les filles qui me plaisent se sentent obligées de rajouter le suffixe "-fident" ?

28

non non ce n'étais pas à toi que je m'adressais ^^
avatar

29

Pour ton unité (je ne sais pas ce que c'est)
()
Prgm
©MOYENNE-BAC par [FEAR]<FLO>
EffES
défGraph("AXES","OFF")
Output 0,100,"¤ v1.00 ¤"
Output 20,40," MOYENNES "
Output 30,25," BAC "
Output 50,35,"Par «FLO»®"
Lbl start
Toolbar
Title "Serie"
Item "Terminale S maths",start
Item "Terminale S SVT",start
Item "Terminale S phisic",start
Item "Terminale ES",start
Item "Terminale L",start
Item "Terminale STG",start
Item "Terminale STI",start
Title "QUITTER",kuit
EndTBar

Goto start
Lbl m0
Disp "Moyenne de maths"
Prompt a
Disp "Moyenne de physique-Chimie"
Prompt b
Disp "Moyenne de SVT"
Prompt c
Disp "Moyenne d'anglais"
Prompt d
Disp "Moyenne d'espagnol"
Prompt e
Disp "Moyenne d'histoire"
Prompt f
Disp "Moyenne de philosophie"
Prompt g
Disp "Moyenne de Sport"
Prompt h
Disp "Moyenne Francais ecrit"
Prompt i
Disp "Moyenne Francais oral"
Prompt j
Disp "Moyenne de TPE"
Prompt k
Disp "Moyenne bac:"&chaîne(approx(a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2)/(9+6+6+3+3+3+2+2+2+2+2))

Disp "sur 20"
Pause
Disp "nb de points:"&chaîne(a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2)

Disp "sur "&chaîne(20*9+20*6+20*6+20*3+20*3+20*3+20*2+20*2+20*2+20*2+20*2)

If a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2=400 Then
Disp "t'as ton bac!!!"
EndIf
If a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<320 Then
Disp "t'as pas ton bac gros nul!!"
EndIf
If 320œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<400 Then
Disp "t'es a la repeche fion"
EndIf
If 480œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<560 Then
Disp "T'as mention assez bien!"
EndIf
If 560œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<640 Then
Disp "t'as mention bien!!"
EndIf
If 640œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2 Then
Disp "t'as mention tres bien!"
EndIf
Goto start

Lbl kuit
ClrIO
DispHome
Stop
EndPrgm


Pour une TI-89/TI-92+:
()
Prgm
©MOYENNE-BAC par [FEAR]<FLO>
EffES
défGraph("AXES","OFF")
Output 0,100,"¤ v1.00 ¤"
Output 20,40," MOYENNES "
Output 30,25," BAC "
Output 50,35,"Par «FLO»®"

Lbl start
Toolbar
Title "Serie"
Item "Terminale S maths",start
Item "Terminale S SVT",start
Item "Terminale S phisic",start
Item "Terminale ES",start
Item "Terminale L",start
Item "Terminale STG",start
Item "Terminale STI",start
Title "QUITTER",kuit
EndTBar

Goto start
Lbl m0
Input "Moyenne de maths",a
Input "Moyenne de physique-Chimie",b
Input "Moyenne de SVT",c
Input "Moyenne d'Anglais",d
Input "Moyenne d'espagnol",e
Input "Moyenne d'histoire",f
Input "Moyenne de Philo",g
Input "Moyenne de Sport",h
Input "Moyenne Francais ecrit",i
Input "Moyenne Francais oral",j
Input "Moyenne de TPE",k

Disp "Moyenne bac:"&string(approx(a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2)/(9+6+6+3+3+3+2+2+2+2+2))
Disp "sur 20"
Pause
Disp "nb de points:"&string(a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2)

Disp "sur "&string(20*9+20*6+20*6+20*3+20*3+20*3+20*2+20*2+20*2+20*2+20*2)

If a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2=400
Disp "t'as ton bac!!!"
If a*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<320
Disp "t'as pas ton bac gros nul!!"
If 320œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<400
Disp "t'es a la repeche fion"
If 480œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<560
Disp "T'as mention assez bien!"
If 560œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2<640
Disp "t'as mention bien!!"
If 640œa*9+b*6+c*6+d*3+e*2+f*3+g*3+h*2+i*2+j*2+k*2
Disp "t'as mention tres bien!"
Goto start

Lbl kuit
ClrIO
DispHome
Stop
EndPrgm


EDIT: Au passage, t'as quoi comme unité, je n'ai jamais vu ce language

30

lol apparemment il a une ti 68k avec le français.

tu as bien fait de créer un groupe de programmation.
...