Poster un nouveau sujet Poster une réponse
diviseurs d'un nombre
Auteur Message
monsaibert
Invité
Posté le : Sam 17 Déc 2011, 19:59   Citer 

quelques precision sur ce code ( les diviseurs d'un nombre)

0->P
Input N
ClrList L1
For I, 1, N
N/I ->A
If fPart(A)=0
Then
P+1->P
I -> L1(P)
End
End
Pause L1

1 – la variable P sert à mettre un indice pour chaque diviseur : la machine le fait-elle automatiquement ?
2 -L1(P) pourquoi (P) à L1 ? P est l’indice de chaque diviseur ?
cette instruction sert bien à mettre les diviseur dans L1 ? pourquoi l’indice.
3 - Pause s’applique t-il pour chaque diviseur ou à la fin ? la liste des diviseurs apparaît-elle automatiquement ou Puse la provoque ?

ClrList = EffListe sur une TI en fr ?

Ce code marche mais quand le nombre a beaucoup de diviseurs il ne les donne pas tous et met des points de suspension !! peut-on les avoir tous?

  Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 17 Déc 2011, 23:33   Citer 

Si tu tapes juste L1 cela représente toute la liste.
Si tu ne précise pas d'indice elle ne comprend pas où stocker une valeur.
Ou bien il faut stocker une liste complète.

Code
{1,3,5->L1        // stocke ces nombres dans L1
Disp L1,L1(3      // affiche {1,3,5} puis 5 le troisième terme
2->L1(3)          // remplace le troisième terme par 2.
Disp L1           // affiche {1,3,2



La fonction Pause se trouve à la fin en dehors des boucles donc elle ne s'applique qu'à la fin.
Elle permet accessoirement d'afficher un résultat puis d'attendre.
Mais surtout elle permet de consulter les variables qui dépassent de l'écran en appuyant sur les touches fléchées.
Un résultat hors d'un programme permet lui aussi de défiler avec les touches fléchées mais n'attends pas de pression sur Entrer.
Enfin le résultat de la dernière action du programme est toujours affiché comme un résultat de l'écran principal et on peut alors se passer de Pause.

En conclusion pour ton programme il faut défiler les résultats avec les touches fléchées et tu peux enlever la Pause.
(édité)

ClrList = EffListe

Pour modifier manuellement une liste ou la consulter tu peux utiliser le menu stat>edite.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
The K



Autorisation : Membre
Nb de messages : 878
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Dim 18 Déc 2011, 12:59   Citer 

Tu n'as même pas besoin de disp L1. Tu peux écrire L1 directement, ça t'affichera la liste, et tu pourras te "déplacer" dedans avec les flèches directionelles.

----------------------
La la la ...

Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Un problème de programmation ? Allez consulter ce tutoriel crée pour cela : TUTORIEL PROGRAMMATION
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO

Mes programmes sur le site : Produit scalaire KMorpion Puissance 4 Mastermind

Mes nouveaux programmes de calcul formel : FCarré FPrime

Projet base de données : ici mais abandonné. Trop de travail ...
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Dim 18 Déc 2011, 13:32   Citer 

J'énumérais des lignes de codes qui ne vont pas vraiment dans un programme.
Mais merci tout-de-même pour la précision.
D'ailleurs j'ajoûte une parenthèse à mon message.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
monsaibert
Invité
Posté le : Mer 21 Déc 2011, 19:05   Citer 

j'ai -Pause L1- à la fin et pourtant la machine ne donne pas tous les diviseurs.
pour 60 elle s'arrête à 10 et points de suspension (7 diviseurs)
pour 48 elle s'arrête à 12 et points de suspension (7 diviseurs)

  Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mer 21 Déc 2011, 19:30   Citer 

Appuie sur les touches fléchées pour consulter ce qui dépasse de l'écran. (j'ai oublié de le préciser tant cela me paraît évident alors que cela ne l'est pas.)

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
monsalbert
Invité
Posté le : Mer 28 Déc 2011, 17:51   Citer 

C'est juste j'appuyais sur entrer.
A present on peux lire tout les diviseurs jusqu'à 48 ( pour diviseurs de 48 ),
mais si je continue d'autres nombres apparaissent sans queue ni tête..Est- ce normal à cause de Pause? D'ailleurs la machine se bloque et je suis obligé de l'éteindre et de la rallumer pour effacer l'écran.

  Haut de page Bas de page 
 
The K



Autorisation : Membre
Nb de messages : 878
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Mer 28 Déc 2011, 18:39   Citer 

Ce code sert bien à déterminer si un nombre est premier ou pas ?
En tous cas il me parait bon ... quoique optimisable (mais ce n'est pas le sujet !)
Supprime le pause, et appuie sur les flèches directionelles après que le programme se soit fini, et ça devrait le faire winkle.gif

----------------------
La la la ...

Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Un problème de programmation ? Allez consulter ce tutoriel crée pour cela : TUTORIEL PROGRAMMATION
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO

Mes programmes sur le site : Produit scalaire KMorpion Puissance 4 Mastermind

Mes nouveaux programmes de calcul formel : FCarré FPrime

Projet base de données : ici mais abandonné. Trop de travail ...
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Ven 30 Déc 2011, 0:01   Citer 

Les nombres à la fin de la listes viennent peut-être des utilisations précédentes de cette liste, auquel cas il faut vérifier l'instruction ClrList L1.
Je ne trouve pas d'autre raison qui cause ce bug.

La calculatrice se bloque-t-elle avant ou après la Pause ? Une pression sur Entrer et le programme devrait se terminer. Pour effacer l'écran après la Pause, La fonction EffEcr convient et après le programme une pression sur Annul.

Sinon la Pause est bien facultative ici.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
monsaibert
Invité
Posté le : Mar 03 Jan 2012, 19:43   Citer 

bonsoir,

je ne comprends pas , en touchant uniquement sous les 2 "end" je n'ai plus rien

j'ai essayé sous "end" :
- soit L1 tout seul ou L1(P)
- soit Pause, L1 ou sans la virgule
- soit Pause
L1
soit Pause
Disp L1
je n'ai plus rien, même pas les diviseurs d' avant..

Rq: je rapelle que la TI donnait les diviseurs de N mais elle continuait à donner des nombres anarchiques après. Comble ! je ne me souviens ce j'avais mis alors!!

  Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mar 03 Jan 2012, 20:34   Citer 

t'as qu'à reprendre le code du début non?

Sandro

PS : si tu met juste L1 sur la DERNIERE lige du programme, tu aura automatiquement l'affichage avec défillement, sinon tu met un pause L1 et tu peut défiller jusqu'à ce que t appuie sur entrer.

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
monsaibert
Invité
Posté le : Mer 04 Jan 2012, 19:57   Citer 

C'est ce que je fais! Je vais essayer encore en l'effaçant en entier et en le réecrivant!
Rq :il me semble que j'avais dû changer la ligne apres end

  Haut de page Bas de page 
 
monsalbert
Invité
Posté le : Jeu 05 Jan 2012, 19:10   Citer 

Enfin celà marche mais Pause est obligatoire . L1 seul ,ne donne rien.

  Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Jeu 05 Jan 2012, 19:24   Citer 

normalement, il fonctionne s'il est sur la dernière ligne du programme (attention, les lignes vierges comptent).

Sandro

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Jeu 05 Jan 2012, 20:10   Citer 

Non les lignes vierges ne comptent pas. J'ai testé sur ti82statfr,ti83 et ti84.
Il suffit que ce soit la dernière ligne non-vierge du programme.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
monsalbert
Invité
Posté le : Ven 06 Jan 2012, 18:42   Citer 

Donc que voulez-vous dire ? on peut enlever Pause et mettre L1 tout seul, où ? (je n'ai pas compris "on compte les lignes vierges" -"on ne les compte pas.."
- si on met L1 à la fin on s'en fiche de ce qui se passe avant ?..

Rq: j'allais essayer ce changement mais je ne retrouve plus le programme "diviseur d'un nombre"!...
Est-il possible que la TI supprime des programmes, sans avertir,si la memoire
est pleine ? ( je fais beaucoup d'essais)

  Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Ven 06 Jan 2012, 19:58   Citer 

Aucune variable ne s'efface sans que l'utilisateur le demande via le menu mémoire ou EffVar.

Le programme est inchangé, c'est juste :
Code
DelVar PInput N
ClrList L1  // à vérifier pour ton problème de nombres anarchiques
For(I,1,N
N/I ->A
If fPart(A)=0
Then
P+1->P
I->L1(P)
End
End
L1    // ou bien // Pause L1

Sandro voulais dire que "L1" doit être sur la dernière ligne du programme (pas même de ligne vierge ensuite)
Ce à quoi j'ai répondu FAUX (comme Norman godgrace.gif ) : Il suffit que "L1" soit le dernier calcul/fonction pour que le résultat soit affiché comme un calcul de l'écran principal (et défilement comme une Pause).

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
sandro



Autorisation : Membre
Nb de messages : 1387
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Ven 06 Jan 2012, 21:07   Citer 

Désolé, je n'ai pas fait le test, et je voulais être sur de ne pas être responsable d'une bête erreur là dessus.

Sandro moodforlove.gif

----------------------
mort à l'inutile, place à la mémoire libre et aux programmes
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
cc97431
Invité
Posté le : Mar 05 Avr 2016, 15:53   Citer 

bonjour,
J'essaie de rentrer le programme dans ma ti 82 plus pour trouver les diviseurs d'un nombre .

Je suis partie à partir de ce programme que j'ai essayé d'adapter à ma ti

:ClrHome
:Input "A = ",A
:ClrHome
:If fPart A [différent de] 0 or abs A [différent de] A
:Then
:Output(3,2,"A N EST PAS UN")
:Output(5,2,"ENTIER NATUREL")
:Pause
:ClrHome
:Stop
:End
:0 -> E
:0 -> dim L5 (* pour les TI-82 STATS ":0 -> dim(L5)" *)
:iPart [Racine carré] A -> B
:For(C,1,B)
:A/C -> D
:If iPart D=D
:Then
:E+1 -> E
:E -> dim L5 (* pour les TI-82 STATS ":E -> dim(L5)" *)
:C -> L5(E)
:E+1 -> E
:E -> dim L5 (* pour les TI-82 STATS ":E -> dim(L5)" *)
bigmouth.gif -> L5(E)
:End
:End
:SortA(L5)
:Disp "RESULTAT :"
:Pause L5
:ClrHome

ça donne ça :


:EffEcr
:Input "A = ",A
:EffEcr
:If PartDéc(A≠0) or abs (A≠A)
:Then
:Output(3,2,"A N EST PAS UN")
:Output(5,2,"ENTIER NATUREL")
:Pause
:EffEcr
:Stop
:End
:0 -> E
:0 -> dim L5 (* pour les TI-82 STATS ":0 -> dim(L5)" *)
:ent(A) A-> B
:For(C,1,B)
:A/C -> D
:If ent(D=D)
:Then
:E+1 -> E
:E -> dim (L5)
:C -> L5(E)
:E+1 -> E
:E -> dim (L5)
bigmouth.gif -> L5(E)
:End
:End
:Tricroi (L5)
:Disp "RESULTAT :"
:Pause L5
:EffEcr


Les résultats ne sont pas corrects,
Est ce que quelqu'un peut m'aider?
merci d'avance

  Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink