π
<-

Arrêter un programme.

:32tins: :32tinsktpb: :32tinsktpn: :32tinscas: :32tinstpkc: :32tinstpktpb: :32tinstp: :32tinscastp: :32tinscmc: :32tinscx: :32tinscxcas:

Arrêter un programme.

Unread postby ggauny@live.fr » 30 Mar 2021, 12:37

Bonjour,

suite à cela :

Code: Select all
if jdn<2299161 or jdn>5373484:
        print("jdn indéfini car hors limites de validité")


Le programme doit s'arrêter après le print si je suis hors limite, mais le programme continue de "tourner" et, bien sûr, renvoie des résultats faux.

J'ai cherché partout uns instruction pour stopper mais je n'ai rien trouvé.

Avez-vous une idée ?

Merci.
User avatar
ggauny@live.frPremium
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Level up: 48.4%
 
Posts: 296
Joined: 11 Mar 2015, 20:43
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Arrêter un programme.

Unread postby Adriweb » 30 Mar 2021, 13:58

Tu peux essayer de remplacer le "print(...)" par "raise Exception(...)"

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 79.7%
 
Posts: 14819
Images: 1131
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Arrêter un programme.

Unread postby ggauny@live.fr » 30 Mar 2021, 15:44

Bonjour à tous,

Un premier jet de mes programmes calendaires portés en python. (Ce n'est pas une sinécure !)
Mais j'y arriverai :)

Code: Select all
# Date calendaire d'un JDN donné.
# Validité du 01/01/-4712 au 31/12/9999.
# jdn signifie Julian Day Number en anglais soit : Numéro du jour Julien.

from math import *

def j2d(jdn):
   
    z=A=a=b=c=E=R=0
    d=j=m=an=s=0
    R=1
    if jdn<=0 or jdn>5373484:
        raise Exception("jdn indéfini car hors limites de validité")
        #print("jdn indéfini car hors limites de validité")
       
    z=int(jdn)
     
   
    a=int((z-1867216.25)/36524.25)
         
    A=z+1+a-int(a/4)
       
    b=A+1524; c=int((b-122.1)/365.25);
    d= int(365.25*c); E=int((b-d)/30.6001);
     
    j=b-d-int(30.6001*E)
   
    if E<14:
        m=E-1
       
    if E==14 or E==15:
        m=E-13
       
    if m<3:
        an=c-4715
       
    if m>2:
        an=c-4716 
       
    if an<0:
        R=-1
   
       
    s=R*(fabs(j)+ fabs(m/100)+ fabs(an/1000000))
    s=round(s,7)
   
    print(s)



Peut-être des maladresses à rectifier ? Sûrement...

par exemples :

jdn = 1 507 900 donne 22 mai -584 (585 av JC) en date julienne, 28 mai en date grégorienne
jdn = 1 842 713 donne 28 janvier 0333, parfois 27 selon les modes d'arrondis
jdn = 2 427 857 donne 23 février 1935
etc.
Merci à Adriweb.
User avatar
ggauny@live.frPremium
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Level up: 48.4%
 
Posts: 296
Joined: 11 Mar 2015, 20:43
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Arrêter un programme.

Unread postby Bisam » 31 Mar 2021, 08:16

Le python permet d'utiliser des listes comme valeur de retour.
Tu pourrais renvoyer un triplet [jour, mois, année], plutôt que d'imprimer un résultat...
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile


Return to Problèmes divers / Aide débutants

Who is online

Users browsing this forum: ClaudeBot [spider] and 15 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
959 utilisateurs:
>932 invités
>21 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)