J'aimerais faire comme dans les machines a calculer avec la fonction 'lbl' et la fonction 'goto'
s/fonction/instruction/g
C'est surement possible
Surement pas. Enfin, pas en Python, ni dans aucun langage de haut niveau. Heureusement.
mais je n'ai rien vu par rapport à ça
Regarde du côté des exceptions et des générateurs.
Laurent Pointal
wrote:
Bonjour,
Un problème de boucle,
J'aimerais faire comme dans les machines a calculer avec la fonction 'lbl' et la fonction 'goto'
<quirk: trois morts dans les lecteurs>
C'est surement possible mais je n'ai rien vu par rapport à ça
Pas de goto en Python, pas de goto dans la majeure partie des langages récents. Tu peux faire des boucles via for ou while, il faut que tu réorganise ton code dans ce sens - au besoin poste un petit bout de code et on verra comment le restructurer.
J'aimerais faire comme dans les machines a calculer avec la fonction
'lbl' et la fonction 'goto'
<quirk: trois morts dans les lecteurs>
C'est surement possible mais je n'ai rien vu par rapport à ça
Pas de goto en Python, pas de goto dans la majeure partie des langages
récents. Tu peux faire des boucles via for ou while, il faut que tu
réorganise ton code dans ce sens - au besoin poste un petit bout de code et
on verra comment le restructurer.
A+
Laurent
PS. Pour le fun, il y a un "goto" Python ici: http://www.entrian.com/goto/
J'aimerais faire comme dans les machines a calculer avec la fonction 'lbl' et la fonction 'goto'
<quirk: trois morts dans les lecteurs>
C'est surement possible mais je n'ai rien vu par rapport à ça
Pas de goto en Python, pas de goto dans la majeure partie des langages récents. Tu peux faire des boucles via for ou while, il faut que tu réorganise ton code dans ce sens - au besoin poste un petit bout de code et on verra comment le restructurer.
"Ensuite vient le GOTOGOTO..." "le GOTOGOTO requiert, en plus du label, un pourcentage de réussite qui va permettre de calculer la probabilité pour que le GOTOGOTO vous envoie vraiment à cette étiquette"
Extrait de la doc :
"Ensuite vient le GOTOGOTO..."
"le GOTOGOTO requiert, en plus du label, un pourcentage de
réussite qui va permettre de calculer la probabilité pour
que le GOTOGOTO vous envoie vraiment à cette étiquette"
"Ensuite vient le GOTOGOTO..." "le GOTOGOTO requiert, en plus du label, un pourcentage de réussite qui va permettre de calculer la probabilité pour que le GOTOGOTO vous envoie vraiment à cette étiquette"
fred1599
Extrait de la doc :
"Ensuite vient le GOTOGOTO..." "le GOTOGOTO requiert, en plus du label, un pourcentage de réussite qui va permettre de calculer la probabilité pour que le GOTOGOTO vous envoie vraiment à cette étiquette"
Bon je te passe un code exemple que je me suis amusé a faire pour faire cette boucle
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
# Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :')) b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 : c=((a*b)/100) d= (a-c) print 'vous avez demandé sur votre article d'une valeur de' , a , 'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale pour votre article de :' , d elif a < 0 and b > 0 : print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le programme' elif a > 0 and b < 0 : print 'votre pourcentage ne peut pas être négatif!!! Recommencez le programme' elif a < 0 and b < 0 : print 'soyons logique, recommencez le programme'
raw_input()
Voila, maintenant, une fois que j'appuis sur une nouvelle touche, j'aimerais que le programme revienne au point de départ en me redemendant la valeur a et la valeur b
Merci par avance
Extrait de la doc :
"Ensuite vient le GOTOGOTO..."
"le GOTOGOTO requiert, en plus du label, un pourcentage de
réussite qui va permettre de calculer la probabilité pour
que le GOTOGOTO vous envoie vraiment à cette étiquette"
Bon je te passe un code exemple que je me suis amusé a faire pour
faire cette boucle
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
# Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :'))
b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 :
c=((a*b)/100)
d= (a-c)
print 'vous avez demandé sur votre article d'une valeur de' , a ,
'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale
pour votre article de :' , d
elif a < 0 and b > 0 :
print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le
programme'
elif a > 0 and b < 0 :
print 'votre pourcentage ne peut pas être négatif!!! Recommencez le
programme'
elif a < 0 and b < 0 :
print 'soyons logique, recommencez le programme'
raw_input()
Voila, maintenant, une fois que j'appuis sur une nouvelle touche,
j'aimerais que le programme revienne au point de départ en me
redemendant la valeur a et la valeur b
"Ensuite vient le GOTOGOTO..." "le GOTOGOTO requiert, en plus du label, un pourcentage de réussite qui va permettre de calculer la probabilité pour que le GOTOGOTO vous envoie vraiment à cette étiquette"
Bon je te passe un code exemple que je me suis amusé a faire pour faire cette boucle
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
# Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :')) b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 : c=((a*b)/100) d= (a-c) print 'vous avez demandé sur votre article d'une valeur de' , a , 'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale pour votre article de :' , d elif a < 0 and b > 0 : print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le programme' elif a > 0 and b < 0 : print 'votre pourcentage ne peut pas être négatif!!! Recommencez le programme' elif a < 0 and b < 0 : print 'soyons logique, recommencez le programme'
raw_input()
Voila, maintenant, une fois que j'appuis sur une nouvelle touche, j'aimerais que le programme revienne au point de départ en me redemendant la valeur a et la valeur b
Je te conseille d'essayer le langage GOTO++
(http://gpp.niacland.net/presentation.html.fr)
Mais c'est très bon ça ! Domage, ça ne fonctionne pas sur windows 95,
J'aimerais faire comme dans les machines a calculer avec la fonction 'lbl' et la fonction 'goto'
Il y a quelques temps, j'avais trouvé sur un forum ce qui suit pour le goto. Je me rappelle l'avoir utilisé pour la migration d'une vieille application en basic (on verse une larme). Le deuxième est un lien vers un module qui ajoute le goto à python. http://entrian.com/goto/index.html Je n'ai pas vérifié si ça marche.
A+ jm
""" 10 i=0 20 if i>10: goto(100) 30 print 'i=',i 40 i += 1 50 goto(20) 100 print 'ok' """ z = dict((int(x[0]), " ".join(x[1:])) for x in (y.split() for y in (__doc__ or _).strip().splitlines())); k = [0] + sorted(z.keys()); m = dict((b,a) for a,b in enumerate(k)); l = k[1]
def goto(n): global l; l = k[m[n]-1]
while l and l <= k[-1]: exec z[l]; l = l != k[-1] and k[m[l]+1]
Bonjour,
J'aimerais faire comme dans les machines a calculer avec la fonction
'lbl' et la fonction 'goto'
Il y a quelques temps, j'avais trouvé sur un forum ce qui suit pour le goto.
Je me rappelle l'avoir utilisé pour la migration d'une vieille
application en basic (on verse une larme).
Le deuxième est un lien vers un module qui ajoute le goto à python.
http://entrian.com/goto/index.html
Je n'ai pas vérifié si ça marche.
A+
jm
"""
10 i=0
20 if i>10: goto(100)
30 print 'i=',i
40 i += 1
50 goto(20)
100 print 'ok'
"""
z = dict((int(x[0]), " ".join(x[1:])) for x in (y.split() for y in (__doc__
or _).strip().splitlines())); k = [0] + sorted(z.keys()); m = dict((b,a) for
a,b in enumerate(k)); l = k[1]
def goto(n): global l; l = k[m[n]-1]
while l and l <= k[-1]: exec z[l]; l = l != k[-1] and k[m[l]+1]
J'aimerais faire comme dans les machines a calculer avec la fonction 'lbl' et la fonction 'goto'
Il y a quelques temps, j'avais trouvé sur un forum ce qui suit pour le goto. Je me rappelle l'avoir utilisé pour la migration d'une vieille application en basic (on verse une larme). Le deuxième est un lien vers un module qui ajoute le goto à python. http://entrian.com/goto/index.html Je n'ai pas vérifié si ça marche.
A+ jm
""" 10 i=0 20 if i>10: goto(100) 30 print 'i=',i 40 i += 1 50 goto(20) 100 print 'ok' """ z = dict((int(x[0]), " ".join(x[1:])) for x in (y.split() for y in (__doc__ or _).strip().splitlines())); k = [0] + sorted(z.keys()); m = dict((b,a) for a,b in enumerate(k)); l = k[1]
def goto(n): global l; l = k[m[n]-1]
while l and l <= k[-1]: exec z[l]; l = l != k[-1] and k[m[l]+1]
Laurent Pointal
Extrait de la doc :
"Ensuite vient le GOTOGOTO..." "le GOTOGOTO requiert, en plus du label, un pourcentage de réussite qui va permettre de calculer la probabilité pour que le GOTOGOTO vous envoie vraiment à cette étiquette"
Bon je te passe un code exemple que je me suis amusé a faire pour faire cette boucle
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
# Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :')) b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 : c=((a*b)/100) d= (a-c) print 'vous avez demandé sur votre article d'une valeur de' , a , 'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale pour votre article de :' , d elif a < 0 and b > 0 : print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le programme' elif a > 0 and b < 0 : print 'votre pourcentage ne peut pas être négatif!!! Recommencez le programme' elif a < 0 and b < 0 : print 'soyons logique, recommencez le programme'
raw_input()
Voila, maintenant, une fois que j'appuis sur une nouvelle touche, j'aimerais que le programme revienne au point de départ en me redemendant la valeur a et la valeur b
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
while True: # (ton code, indenté d'un cran à droite:) # Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :')) b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 : c=((a*b)/100) d= (a-c) print 'vous avez demandé sur votre article d'une valeur de' , a , 'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale pour votre article de :' , d elif a < 0 and b > 0 : print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le programme' elif a > 0 and b < 0 : print 'votre pourcentage ne peut pas être négatif!!! Recommencez le programme' elif a < 0 and b < 0 : print 'soyons logique, recommencez le programme'
raw_input()
Si tu veux sortir, tu peux faire qq chose sur la dernière ligne comme:
if raw_input("Continuer (O/N) ?").upper() in ("N","NON","NO) : break
Extrait de la doc :
"Ensuite vient le GOTOGOTO..."
"le GOTOGOTO requiert, en plus du label, un pourcentage de
réussite qui va permettre de calculer la probabilité pour
que le GOTOGOTO vous envoie vraiment à cette étiquette"
Bon je te passe un code exemple que je me suis amusé a faire pour
faire cette boucle
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
# Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :'))
b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 :
c=((a*b)/100)
d= (a-c)
print 'vous avez demandé sur votre article d'une valeur de' , a ,
'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale
pour votre article de :' , d
elif a < 0 and b > 0 :
print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le
programme'
elif a > 0 and b < 0 :
print 'votre pourcentage ne peut pas être négatif!!! Recommencez le
programme'
elif a < 0 and b < 0 :
print 'soyons logique, recommencez le programme'
raw_input()
Voila, maintenant, une fois que j'appuis sur une nouvelle touche,
j'aimerais que le programme revienne au point de départ en me
redemendant la valeur a et la valeur b
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
while True:
# (ton code, indenté d'un cran à droite:)
# Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :'))
b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 :
c=((a*b)/100)
d= (a-c)
print 'vous avez demandé sur votre article d'une valeur de' , a ,
'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale
pour votre article de :' , d
elif a < 0 and b > 0 :
print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le
programme'
elif a > 0 and b < 0 :
print 'votre pourcentage ne peut pas être négatif!!! Recommencez le
programme'
elif a < 0 and b < 0 :
print 'soyons logique, recommencez le programme'
raw_input()
Si tu veux sortir, tu peux faire qq chose sur la dernière ligne comme:
if raw_input("Continuer (O/N) ?").upper() in ("N","NON","NO) : break
"Ensuite vient le GOTOGOTO..." "le GOTOGOTO requiert, en plus du label, un pourcentage de réussite qui va permettre de calculer la probabilité pour que le GOTOGOTO vous envoie vraiment à cette étiquette"
Bon je te passe un code exemple que je me suis amusé a faire pour faire cette boucle
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
# Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :')) b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 : c=((a*b)/100) d= (a-c) print 'vous avez demandé sur votre article d'une valeur de' , a , 'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale pour votre article de :' , d elif a < 0 and b > 0 : print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le programme' elif a > 0 and b < 0 : print 'votre pourcentage ne peut pas être négatif!!! Recommencez le programme' elif a < 0 and b < 0 : print 'soyons logique, recommencez le programme'
raw_input()
Voila, maintenant, une fois que j'appuis sur une nouvelle touche, j'aimerais que le programme revienne au point de départ en me redemendant la valeur a et la valeur b
# _*_ coding:Utf-8 _*_
print 'voila un petit programme afin de calculer un pourcentage'
while True: # (ton code, indenté d'un cran à droite:) # Les chiffres dont on a besoin
a = float(raw_input('Donner la valeur de votre article :')) b = float(raw_input('Donner la valeur de votre pourcentage :'))
if a > 0 and b > 0 : c=((a*b)/100) d= (a-c) print 'vous avez demandé sur votre article d'une valeur de' , a , 'euros, un pourcentage de' , b , '%, ce qui donne une valeur finale pour votre article de :' , d elif a < 0 and b > 0 : print 'vous ne pouvez pas avoir une valeur négative!!! Recommencez le programme' elif a > 0 and b < 0 : print 'votre pourcentage ne peut pas être négatif!!! Recommencez le programme' elif a < 0 and b < 0 : print 'soyons logique, recommencez le programme'
raw_input()
Si tu veux sortir, tu peux faire qq chose sur la dernière ligne comme:
if raw_input("Continuer (O/N) ?").upper() in ("N","NON","NO) : break
fred1599
Et bien moi j'ai vérifié si ça fonctionne, et je te dis que ca marche au poil.
Merci beaucoup ca me simplifie énormément la vie.
Bye
Bonjour,
J'aimerais faire comme dans les machines a calculer avec la fonction 'lbl' et la fonction 'goto'
Il y a quelques temps, j'avais trouvé sur un forum ce qui suit pour le goto. Je me rappelle l'avoir utilisé pour la migration d'une vieille application en basic (on verse une larme). Le deuxième est un lien vers un module qui ajoute le goto à python. http://entrian.com/goto/index.html Je n'ai pas vérifié si ça marche.
A+ jm
""" 10 i=0 20 if i>10: goto(100) 30 print 'i=',i 40 i += 1 50 goto(20) 100 print 'ok' """ z = dict((int(x[0]), " ".join(x[1:])) for x in (y.split() for y in (__d oc__ or _).strip().splitlines())); k = [0] + sorted(z.keys()); m = dict((b ,a) for a,b in enumerate(k)); l = k[1]
def goto(n): global l; l = k[m[n]-1]
while l and l <= k[-1]: exec z[l]; l = l != k[-1] and k[m[l]+1]
Et bien moi j'ai vérifié si ça fonctionne, et je te dis que ca marche
au poil.
Merci beaucoup ca me simplifie énormément la vie.
Bye
Bonjour,
J'aimerais faire comme dans les machines a calculer avec la fonction
'lbl' et la fonction 'goto'
Il y a quelques temps, j'avais trouvé sur un forum ce qui suit pour le goto.
Je me rappelle l'avoir utilisé pour la migration d'une vieille
application en basic (on verse une larme).
Le deuxième est un lien vers un module qui ajoute le goto à python.
http://entrian.com/goto/index.html
Je n'ai pas vérifié si ça marche.
A+
jm
"""
10 i=0
20 if i>10: goto(100)
30 print 'i=',i
40 i += 1
50 goto(20)
100 print 'ok'
"""
z = dict((int(x[0]), " ".join(x[1:])) for x in (y.split() for y in (__d oc__
or _).strip().splitlines())); k = [0] + sorted(z.keys()); m = dict((b ,a) for
a,b in enumerate(k)); l = k[1]
def goto(n): global l; l = k[m[n]-1]
while l and l <= k[-1]: exec z[l]; l = l != k[-1] and k[m[l]+1]
Et bien moi j'ai vérifié si ça fonctionne, et je te dis que ca marche au poil.
Merci beaucoup ca me simplifie énormément la vie.
Bye
Bonjour,
J'aimerais faire comme dans les machines a calculer avec la fonction 'lbl' et la fonction 'goto'
Il y a quelques temps, j'avais trouvé sur un forum ce qui suit pour le goto. Je me rappelle l'avoir utilisé pour la migration d'une vieille application en basic (on verse une larme). Le deuxième est un lien vers un module qui ajoute le goto à python. http://entrian.com/goto/index.html Je n'ai pas vérifié si ça marche.
A+ jm
""" 10 i=0 20 if i>10: goto(100) 30 print 'i=',i 40 i += 1 50 goto(20) 100 print 'ok' """ z = dict((int(x[0]), " ".join(x[1:])) for x in (y.split() for y in (__d oc__ or _).strip().splitlines())); k = [0] + sorted(z.keys()); m = dict((b ,a) for a,b in enumerate(k)); l = k[1]
def goto(n): global l; l = k[m[n]-1]
while l and l <= k[-1]: exec z[l]; l = l != k[-1] and k[m[l]+1]