Trouve le nombre (ULTRA COMPACT !) |
Auteur |
Message |
hellknight71
Autorisation : Membre
Nb de messages : 48
Inscrit le : Lun 14 Déc 2015, 12:49
|
Posté le : Jeu 17 Déc 2015, 14:31
|
|
|
Salut à tous
Ceci est un tout pitipitit programme dont le but est de trouver un nombre entre 1 et 1000. (140 octets)
Bref le voici :
Code |
:EffEcr // EffEcr ou ClrHome selon votre ti
:Disp "TROUVE UN NOMBRE","ENTRE 1 ET 1000
:0->V
:entAléat(1,1000->A
:While V=0
:Input "=",N
:If N<A:Disp "C'EST PLUS
:If N>A:Disp "C'EST MOINS
:If N=A:Disp "BRAVO !":1->V
:End
|
Je ne pense pas qu'on puisse faire plus court.
Précisez moi si quelque chose ne va pas.
.
|
|
|
|
Ruadh
Autorisation : Membre
Nb de messages : 30
Inscrit le : Ven 06 Nov 2015, 14:08
|
Posté le : Jeu 17 Déc 2015, 16:58
|
|
|
Bonjour !
Ton programme ne fonctionne pas et on peut faire beaucoup plus court. Je te laisse chercher
|
|
|
|
hellknight71
Autorisation : Membre
Nb de messages : 48
Inscrit le : Lun 14 Déc 2015, 12:49
|
Posté le : Jeu 17 Déc 2015, 18:00
|
|
|
Tu l'as vraiment testé ?
|
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
hellknight71
Autorisation : Membre
Nb de messages : 48
Inscrit le : Lun 14 Déc 2015, 12:49
|
Posté le : Jeu 17 Déc 2015, 19:06
|
|
|
Excuse moi j'ai mal formulé effectivement
Mais je veux bien connaître ton programme car je ne sais pas comment faire encore plus court
|
|
|
|
Ruadh
Autorisation : Membre
Nb de messages : 30
Inscrit le : Ven 06 Nov 2015, 14:08
|
Posté le : Jeu 17 Déc 2015, 21:14
|
|
|
T'as vraiment essayé ton programme ? Comme je l'ai dit plus haut, il ne fonctionne pas.
C'est cette ligne là qui pose problème :
Code | :If N=A:Disp "BRAVO !":1->V |
V prendra la valeur 1 que N soit égal à A ou non, donc ton programme s'arrêtera après une seule itération.
Voilà ton programme optimisé (105 octets) :
Code | :EffEcr
:Disp "TROUVE UN NOMBRE","ENTRE 1 ET 1000
:entAléat(1,E3 //Le E obtenu par 2nde+,
:Repeat Rép=N
:Prompt N
:If N>Rép
:Disp "C'EST MOINS
:If N<Rép
:Disp "C'EST PLUS
:End
:"BRAVO |
|
|
|
|
hellknight71
Autorisation : Membre
Nb de messages : 48
Inscrit le : Lun 14 Déc 2015, 12:49
|
Posté le : Ven 18 Déc 2015, 10:05
|
|
|
Oui je l'ai testé et effectivement j'ai mal tapé le programme.
En tout cas merci pour le programme de 105 octets, je ne savais pas qu'on pouvait faire aussi court.
Merci pour l'astuce car je ne savais pas utiliser le Rep.
|
|
|
|
hellknight71
Autorisation : Membre
Nb de messages : 48
Inscrit le : Lun 14 Déc 2015, 12:49
|
Posté le : Jeu 11 Fév 2016, 8:33
|
|
|
Slt je viens d'en trouver un de 87 octets en cherchant un peu...
prgmTrouve
Code |
:Disp "1/1000
:entAléat(1,1000->N
:While A#N
:Prompt A
:If A>N:Disp "MOINS
:If A<N:Disp "PLUS
:If A=N:Then:Disp "BRAVO":End
:End
|
|
|
|
|
Ti82-Lexilus
Autorisation : Membre
Nb de messages : 85
Inscrit le : Dim 13 Déc 2015, 16:27
|
Posté le : Jeu 11 Fév 2016, 9:00
|
|
|
Ey on peut faire encore mieux !!!
Code |
Effecr
Disp "1/e3
EntAleat(1,e3 ~>B
While B=/=A
Prompt B
If A<B
Pause "-"
If A>B
Pause "+"
End
"Bravo"
|
---------------------- La programmation : l'avenir d'hier ...........
mes prgm pour ti82 : PrgmHEURE , PrgmCHRONOMÈTRE , PrgmQUITTER |
|
|
|
hellknight71
Autorisation : Membre
Nb de messages : 48
Inscrit le : Lun 14 Déc 2015, 12:49
|
Posté le : Jeu 11 Fév 2016, 14:45
|
|
|
Heuuu... Pour moi il marche pas.
Le nombre est tout le temps 0
|
|
|
|
Ti82-Lexilus
Autorisation : Membre
Nb de messages : 85
Inscrit le : Dim 13 Déc 2015, 16:27
|
Posté le : Jeu 11 Fév 2016, 16:10
|
|
|
Salut
le "e" s obtient en appuyant les touches suivantes :
[2nd] + ,
Il signifie x 10 ^ ( n )
---------------------- La programmation : l'avenir d'hier ...........
mes prgm pour ti82 : PrgmHEURE , PrgmCHRONOMÈTRE , PrgmQUITTER |
|
|
|
hellknight71
Autorisation : Membre
Nb de messages : 48
Inscrit le : Lun 14 Déc 2015, 12:49
|
Posté le : Ven 12 Fév 2016, 8:31
|
|
|
Ok mais alors il faudrait mettre 1e3
|
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
Mingerton
Autorisation : Membre
Nb de messages : 504
Inscrit le : Ven 07 Déc 2012, 20:09
|
Posté le : Sam 13 Fév 2016, 13:31
|
|
|
Le 1 est inutile, ca serait comme écrire 1*1000
---------------------- Mes articles
Mes programmes en ligne (je termine peu de projets)
Guide traduction Algo-Basic, par Linkakro
Catalogue des fonctions 82/83/84 FR/EN |
|
|
|
Ti82-Lexilus
Autorisation : Membre
Nb de messages : 85
Inscrit le : Dim 13 Déc 2015, 16:27
|
Posté le : Sam 13 Fév 2016, 21:50
|
|
|
Oui car e signifie 10 ^ ( n )
---------------------- La programmation : l'avenir d'hier ...........
mes prgm pour ti82 : PrgmHEURE , PrgmCHRONOMÈTRE , PrgmQUITTER |
|
|
|
hellknight71
Autorisation : Membre
Nb de messages : 48
Inscrit le : Lun 14 Déc 2015, 12:49
|
Posté le : Dim 03 Avr 2016, 15:01
|
|
|
Je viens d'en trouver un de 68 octets.
Le voici:
Code |
:entAléat(1,e3->N
:While 1
:Prompt A
:If A>N:Disp "-
:If A<N:Disp "+
:If A=N:Then:Disp "BRAVO
:Stop
:End
:End
|
Cette fois ci, je pense que c'est le jeu le plus léger qu'on puisse faire sur TI.
|
|
|
|
Ruadh
Autorisation : Membre
Nb de messages : 30
Inscrit le : Ven 06 Nov 2015, 14:08
|
Posté le : Dim 03 Avr 2016, 16:57
|
|
|
À force de chercher, tu finiras bien par trouver J'arrive à économiser 12 octets en utilisant le même algorithme que celui que j'ai posté plus haut et en utilisant les mêmes textes que toi
|
|
|
|