Inscription / Connexion Nouveau Sujet

1 2 +


Niveau seconde
Partager :

Simplification de racine carrée

Posté par
canonique
31-05-11 à 19:27

Bonjour,
en ce moment je suis à fond dans les algorithmes et je m'intéresse à créer un algorithme en particulier !
--> L'algorithme pour simplifier et réduire une racine carrée
exemple --> 32 = 4(8) = 22(4) = 42

J'en ai trouvé un mais il est pour les calculatrices Casio :

Entrée A
C := 1
F := 2
"1"
F2 := F*F
"2"
Est-ce que F2 divise A ?
oui : alors,
remplacer C par C*F
remplacer A par A / F2
est-ce que A > 1 ?
oui : alors, aller en "2"
non : alors, le résultat est C ; fin
non : alors,
est-ce que F2 < A ?
oui : remplacer F par F + 1 et aller en "1"
non : le résultat est CA ; fin

---------------------------------------------------------------------------------

Le problème c'est que ayant une TI-84 +, je suis mal parce que je ne comprends absolument rien.

Merci pour votre aide !

Posté par
azalee
re : Simplification de racine carrée 01-06-11 à 06:40

re-bonjour canonique

voilà un programme qui a l'air de tourner :



input A
1->C                                *** C sera le nb à sortir de la racine
2->I                                 *** on ne commence pas à 1 qui servirait à rien
while I²A                      *** on teste tous les entiers de 2 à A, A évoluant au cours du programme
   while int(A/I²)=A/I²      *** Tant que I² divise A  (il faut pouvoir faire plusieurs tests avec le même I)
     I*C->C
     A/I²->A
   end
   I+1->I
end
disp C
disp A

(je ne sais pas écrire sur une même ligne C racine A)

Amuse-toi bien !

et si tu veux d'autres algo ...

Posté par
canonique
re : Simplification de racine carrée 01-06-11 à 13:05

Merci beaucoup pour ton aide Azalee !
J'ai trouvé pour :

Citation :
(je ne sais pas écrire sur une même ligne C racine A)

Disp "Racine carrée extraite:", C, "", A

Et ça marche pour ma calculette !

Pour d'autres programmes, c'est vraiment gentil de ton aide !
Je serai intéressé par les simplifications de fractions. Mais après je suis sur qu'il y a pleins d'algorithmes intéressant mais je ne les connais pas ! Pourrais-tu m'inspirer ou me donner des exemples !?

merci encore

Posté par
azalee
re : Simplification de racine carrée 01-06-11 à 13:17

Citation :
Disp "Racine carrée extraite:", C, "", A
Et ça marche pour ma calculette !
mais pas sur la mienne !

pour simplifier des fractions : tu demandes numérateur, N, dénominateur, D.
ensuite tu cherches le pgcd x et tu remplaces N par N/x et D par D/x, mais ta calculatrice fait ça très bien avec "frac" ; de même pour additonner des fractions
Mais, pour t'entraîner, tu peux essayer de faire des programmes.
Tout dépend si tu veux des programmes utilitaires ou bien si tu veux t'entraîner à faire des programmes

Posté par
canonique
re : Simplification de racine carrée 01-06-11 à 13:35

Je voudrais plus des programmes utilitaires.

Posté par
canonique
re : Simplification de racine carrée 01-06-11 à 13:40

Par exemple, savoir si deux vecteurs sont colinéaires avec des coordonnées.

Posté par
azalee
re : Simplification de racine carrée 01-06-11 à 15:06

trop facile

as-tu une piste ? ou bien tu préfères du "tout cuit"

Posté par
canonique
re : Simplification de racine carrée 01-06-11 à 19:50

Je tente !
Pour deux vecteurs u et v, de coordonnées u(x;y) et v(x';y'),
--> Ils sont colinéaires si xy'- x'y =0

Donc
input "xu=",A
input "yu=",B
input "xv=",C
input "yv=",D
A(D) - B(C) --> M
If M=0
Disp "Les vecteurs sont colinéaires"
End
If M0
Disp "Les vecteurs ne sont pas colinéaires"
End


Je sais pas si c'est bon ?

Posté par
azalee
re : Simplification de racine carrée 01-06-11 à 22:17

oui, ça devrait marcher ;  tu t'es très bien débrouillé.

qq modif qd même : revoit la syntaxe du "if"
if <condition>
   then...
   else ...
end

c-à-d :
si <condition>
   alors...
    sinon ...
finsi

(je ne crois pas que l'on puisse écrire un "if" sans un "then"
et il est préférable d'utiliser le "else", plutôt qu'un autre "if")

Tu n'es pas obligé de prendre une nouvelle variable M

input "xu=",A
input "yu=",B
input "xv=",C
input "yv=",D
je remplacerai ces lignes :
                A(D) - B(C) --> M
                If M=0
                Disp "Les vecteurs sont colinéaires"
                End
                 If M≠0
                 Disp "Les vecteurs ne sont pas colinéaires"
                 End


par celles-ci

if A*D-B*C=0
   then
    disp "colinéaires"
   else
    disp "non colinéaires"
end

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 11:25

bonjour canonique

voilà une autre idée de programmation(Lien cassé)
essaie de deviner ce que va faire le programme
puis traduis le pour ta TI
(sachant que
"x!=1" veut dire x≠1
"x...2==0"  veut dire "si x est pair"

Posté par
canonique
re : Simplification de racine carrée 02-06-11 à 13:26

Ça y est j'ai fait les modifications sur le programme pour les vecteurs colinéaires et ça marche !

Maintenant :

N --> 0
Input X
While x!=1
N--> N+1
If int(x/2)=x/2
Then
x-->x/2
End
Else
x-->3x+1
End
End
Disp N

Je ne suis pas certains de ce que j'ai écrit !

Simplification de racine carrée

Posté par
canonique
re : Simplification de racine carrée 02-06-11 à 13:39

Sur Algobox, j'ai fait des tests et ça me donne :
x= 1, alors n=0
x= 2, alors n=1
x= 3, alors n=7
x= 4, alors n=2
x= 5, alors n=5
x= 6, alors n=8
x= 7, alors n=16
x= 8, alors n=3
x= 9, alors n=19
x=10, alors n=6

Mais je ne vois pas ce que c'est !
La suite de Fibonacci ?

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 14:13

oui, c'est la suite de Fibonacci. si tu veux voir plus précisément, fais lui afficher x dans chaque boucle avec une pause pour avoir le temps de lire, ou bien tu le fais compter jusqu'à 100, à moins que tu aies une instruction"delay"


"End
Else
x-->3x+1
End
************
End
Disp N"

entre les deux end :
disp X
for (I,1,100)  **************une boucle pour rien, juste pour le faire attendre
endfor

Posté par
canonique
re : Simplification de racine carrée 02-06-11 à 14:17

Ce que j'ai écrit c'était bon ?
Je ne comprends pas en quoi consiste la suite Fibonacci
Pour x=9, n = 19 --> je comprends mais pour x=4, alors n=2 je ne comprends pas !

-------------------------------------------------------------------------------
J'ai un autre algo :
Mais je ne sais pas pourquoi il ne marche pas !
Peux-tu me mettre ce que tu rentrerais :
C'est pour les nombres triangulaires :
-->

Simplification de racine carrée

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 14:31

suite de Fibonacci :
tu pars de n'importe quel nombre
et ensuite, en boucle, s'il est pair tu divises par 2 sinon tu multiplies par 3 et tu ajoutes 1

10 - 5 - 16 - 8 - 4 - 2 - 1

25 - 76 - 38 - 19 - 58 - 29 - 88 - 44 - 22 - 11 - 34 - 17 - 52 - 26 - 13 - 40 - 20 - 10 - ...

(ça se termine tjs par 4 - 2 - 1.)

je regarde l'algo tt à l'h

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 14:33

l'algo tel qu'il est là, ne peut sûrement pas marcher.
Je le corrigerai + tard

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 15:51

je reviens d'abord sur Fibonacci :
N --> 0
Input X
While x!=1
N--> N+1  ****************
If int(x/2)=x/2
Then
x-->x/2   *****************
End
Else
x-->3x+1   ***************
End
for (i,1,100)  *************** on le fait compter jusqu'à 100
end
End
Disp N

attribuer une valeur à une variable, s'appelle l'affectation.

et c'est T_n pred pour valeur (T_n)+i le i n'est pas en indice.


(tu peux jeter un oeil ici :
dans algobox c'est sous la forme x prend pour valeur 3.
sur la Ti la syntaxe est on stocke 3 dans x, c-à-d 3->x
tu dois donc modifier les 3 lignes signalées + haut


______________________________________________________
pour les nb triangulaires

il faut initialiser T_n au début de l'algorithme, avant ou après "lire n" :
0->T_n

et ensuite tu ajoutes au fur et à mesure, toutes les valeurs de i, de 1 à n.
Donc T_n= 1+2+3+...+n

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 15:53

il y a eu un mélange de lignes, j'en ai perdu la moitié ! je recommencerai + tard)

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 16:12

(j'ai un clavier caractériel, qui se met en majuscules, qui sélectionne n'importe quoi, qui s'emballe sur la dernière lettre tapée .... bref, je fais avec, mais ça m'énerve )

donc, je recommence entièrement le dernier post :


je reviens d'abord sur Fibonacci :
N --> 0
Input X
While x!=1
N--> N+1  ****************
If int(x/2)=x/2
Then
x-->x/2   *****************
End
Else
x-->3x+1   ***************
End
for (i,1,100)  *************** on le fait compter jusqu'à 100
end
End
Disp N

attribuer une valeur à une variable, s'appelle l'affectation.
dans algobox, ça se fait sous la forme x prend pour valeur 3
Sur la TI, on stocke 3 dans x qui s'écrit 3->x

tu dois donc changer les 3 lignes que j'ai signalées dans le programme.


(mais ton programme tournait bien ?)
____________________________________________________
pour les nb triangulaires

il faut initialiser T_n au début de l'algorithme, avant ou après "lire n" :
0->T_n

et ensuite tu ajoutes au fur et à mesure, toutes les valeurs de i, de 1 à n.
Donc T_n= 1+2+3+...+n

et c'est T_n prend pour valeur (T_n)+i le i n'est pas en indice.


(tu peux jeter un oeil ici : [http://fr.wikipedia.org/wiki/Nombre_triangulaire] )

Posté par
canonique
re : Simplification de racine carrée 02-06-11 à 17:40

0 --> N
Input X
While x!=1
N+1 --> N  ****************
If int(x/2)=x/2
Then
X/2 --> X   *****************
End
Else
3x+1-->X   ***************
End
for (i,1,100)  *************** on le fait compter jusqu'à 100
end
End
Disp N

J'ai tout modifié mais ça ne marche pas !

Pour les nombres triangulaires, je regarde après avoir fini celui-ci.

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 17:50


0 --> N
Input X
While x!=1
N+1 --> N  
If int(x/2)=x/2
Then
X/2 --> X  
End    <---------------tu as un end en trop ici je pense. Supprime cette ligne
Else
3x+1-->X  
End      <------------ ou alors il faut en rajouter un 2èmé ici
for (i,1,100)  
end
End
Disp N

Posté par
canonique
re : Simplification de racine carrée 02-06-11 à 18:02

Non ça ne marche pas !

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 18:29

et ça :"While x!=1" tu l'as écrit comme ça ?
ou bien x≠1 ?

et qu'est-ce qui ne marche pas ?
Si tu veux voir défiler les nb, il faut lui demander de les afficher. Tu n'affiches que N qui est le nb de calculs qu'il a fait


0 --> N
Input X
While x!=1
N+1 --> N  
If int(x/2)=x/2
Then
X/2 --> X  
End    
Else
3x+1-->X  
End  
            <--------------------------après le "end", rajoute : "disp X"    
for (i,1,100)  
end
End
Disp N

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 18:29

*faits

Posté par
canonique
re : Simplification de racine carrée 02-06-11 à 19:45

Je rentre X et il me dit ERREUR.
Là, je fais Goto et il me redirige soit sur le ELSE ou sur le deuxième End de la série de deux à la fin.
Je ne sais plus quoi faire !

Posté par
canonique
re : Simplification de racine carrée 02-06-11 à 19:46

Je rentre avec X!=1

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 19:51

et c'est comme ça que l'on écrit x≠1 sur ta calculatrice ?

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 19:57

dans le programme d'hier sur la colinéarité, tu avais utiliséé le if ...then... else ... ?
avec ou sans "end" ?

Sinon, essaie Fibonacci avec 2 "if
if X pair...

if x non  pair ...

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 19:58

*utilisé

Posté par
canonique
re : Simplification de racine carrée 02-06-11 à 20:17

J'avais utilisé IF, THEN, ELSE.

Posté par
azalee
re : Simplification de racine carrée 02-06-11 à 20:22

et comment avais-tu mis les "end" ?
fais la même chose aujourd'hui

et si ça ne marche toujours pas, utilise deux "if"

Posté par
canonique
re : Simplification de racine carrée 03-06-11 à 09:50

Ça marche toujours pas !
Mais peux tu me donner l'écriture avec les IF parce que je comprends pas très bien le truc là !
Merci encore

Posté par
azalee
re : Simplification de racine carrée 03-06-11 à 10:18

qd tu dis que ça nemarche pas, il te mets une erreur ou bien tu ne vois pas ce qu'il fait ?
une fois le programme achevé regarde ce qu'il y a dans X (tu fais X <entrée>) et dans n.

Je te conseilles de tout effacer et de recommencer ; qqfois c'est une erreur de saisie infime que l'on ne voit pas

je te donne le prgr tel qu'il est sur ma calculatrice (vieille TI82) et il tourne très bien

input X
while x≠1  (et c'est bien le signe ≠, pris dans le menu "test")
if int(X/2)=X/2
then
X/2->X
else
3X+1->X
end
disp x
for (I,1,100)
end
end
ce prgr affiche les nb de la suite, mais pas combien de bouclesz il fait.


S'il tourne comme ça, tu peux ensuite ajouter un competeur de boucles :

input X
             <--------------  0->n
while x≠1  
if int(X/2)=X/2
then
X/2->X
else
3X+1->X
end
             <---------------  n+1->n
disp x
for (I,1,100)
end
             <----------------  disp n
end


si la première mouture ne tourne pas remplace ces 6 lignes :
       if int(X/2)=X/2
          then
            X/2->X
          else
            3X+1->X
       end

par :
        if int(X/2)=X/2
          then
            X/2->X
        end
        if int(X/2)≠X/2
          then
            3X+1->X
         end

tu pourras ensuite rajouter le compteur

Posté par
canonique
re : Simplification de racine carrée 03-06-11 à 22:57

Bonsoir,
En suivant votre conseil, j'ai recopié l'algorithme et il marche maintenant à merveille !
J'avais en fait fait une faute de frappe !

Mais à quoi sert le compteur de boucle ? qu'est-ce que c'est ces boucles ?

Je me concentre après sur l'algorithme des nombres triangulaires !

Posté par
azalee
re : Simplification de racine carrée 04-06-11 à 07:04

bonjour canonique


je suis contente que cela marche enfin.

les boucles
en programmation, il y a 3 sortes de boucles (une suite d'instructions répétées plusieurs fois avec un changement d'une ou plusieurs variables à chaque "tour")
- pour i allant de 1 à n    : on sait d'avance qu'il faut faire n boucles.
- tant que ....  fin  : répéter des actions tant que l'on n'a pas le résultat voulu. Il faut être sûr que cette suite de boucles s'arrêtera ! mais on ne sait pas combien il y aura de boucles, c-à-d combien de fois ces instructions seront effectuées.
- répéter .... jusqu'à  (qui ressemble beaucoup à l'instruction tant que...)


le compteur :
dans Fibonacci, as-tu vu défiler la liste des nb ? si  le défilement est trop rapide fais le compter plus longtemps
for(i, 1, 300)
end
tu as pu voir que qqfois  il arrive vite aux 3 derniers nb (4, 2, 1) mais d'autres fois, la liste est plus longue.
pour avoir la longueur de cette liste, on place un compteur n (souvent, en programmation on appelle cette variable cpt, pour donner des noms plus parlant, mais ce n'est pas possible sur les calculatrice):
on initialise n à 0 avant le programme, et dans chaque boucle du "tant que", on  lui rajoute 1 ; c'est le n+1->n. à la fin, le prgr te donne le nb de boucles.

amuse-toi bien avec les nb triangulaires

autre pistes de programme :
- le jeu "c'est plus - c'est moins" (et tu peux compter en combien de coups on trouve)
- demander les coord. de 4 points et dire si l'on a un parallélogramme ou pas (attention, 2 cas de figures possibles)
- additionner deux fractions après avoir calculé pgcd et ppcm



bonne journée

(je ne serai pas là aujourd'hui)

Posté par
canonique
re : Simplification de racine carrée 04-06-11 à 14:56

Ça y est, j'ai fait l'algorithme sur les nombres triangulaires et il marche ! Je m'étonne moi-même...
0-->K
Input "N:",N
For(I,1,N)
K+I-->K
End
Disp "T2N:",K

Voilà ! Maintenant, je m'intéresse aux autres idées d'algorithmes !
Merci encore.

Posté par
canonique
re : Simplification de racine carrée 04-06-11 à 15:08

Le programme du jeu "C'est plus-C'est moins" m'intéresse fortement !
Les autres me déplaisent pas, mais après !
J'y réfléchis et j'écris le programme mais qui me semble bon !

Bonne journée

Posté par
canonique
re : Simplification de racine carrée 04-06-11 à 18:05

Pour le jeu du "C'est plus, c'est moins", j'ai fait deux programmes.

Le premier où le joueur doit trouver le nombre aléatoire généré par la calculatrice :
randInt(0,1000) --> Y  ***** on choisit de générer un nombre aléatoire entier sur l'intervalle [0,1000]
Disp "Donner 1 Entier"
Disp "Entre 0 et 1000"
Input "NB:",X
1 --> I
While XY
If X>Y
Then
Disp "C'est moins"
Else
Disp "C'est plus"
End
1 + I --> I
Prompt X
End
Disp "Reponse:",Y
Disp "Nombres de parties, de tours",I
Disp "Bravo !"

----------------------------------------------------------------------------------------------

Le jeu 2, je l'ai crée par dichotomie:
C'est nous qui pensons à un nombre et c'est le programme qui doit le trouver !

CLrHome
0-->A
100 --> B
While B-A>2
ClrHome
int((A+B)/2)--> C
Disp "C:",C
Disp "+ Petit taper 1"
Disp "Plus grand taper 2"
Disp "Trouvé taper 3"
Input "X:",X
If X=1
Then
C --> B
End
If X=2
Then
C --> A
End
If X=3
Then
C --> A
C --> B
End
End
int((A+B)/2) --> C
Disp "Eureka, j'ai trouvé", C

-----------------------------------------------------------------------------------

Voilà, je me suis beaucoup amusé à faire ces deux programmes ! C'était génial ! Merci
Est-ce que il existe d'autres jeux que l'on peut faire comme ça ? Ça serait tellement génial et cool de ta part de m'aider à les faire !

Je m'occupe des deux autres demain !
Bonsoir

Posté par
azalee
re : Simplification de racine carrée 04-06-11 à 22:58

tu as bien "travaillé" !

_________________________________
les nb triangulaires

0-->K
Input "N:",N
For(I,1,N)
K+I-->K
End
Disp "T2N:",K   <---------------pourquoi le 2 de T2N  ?

oui, c'était bien le principe. En fait, tu apprendras bientôt que Tn=n(n+1)/2
___________________________________
"c'est + c'est -"

progr. 1
Le premier où le joueur doit trouver le nombre aléatoire généré par la calculatrice :
randInt(0,1000) --> Y  
Disp "Donner 1 Entier"
Disp "Entre 0 et 1000"
Input "NB:",X
1 --> I
While X≠Y
If X>Y
Then
Disp "C'est moins"
Else
Disp "C'est plus"
End
1 + I --> I
Prompt X      <-------------------que fait cette instruction ?(je ne la connais pas)
End
Disp "Reponse:",Y
Disp "Nombres de parties, de tours",I
Disp "Bravo !"

_____________________________________
progr.2

CLrHome
0-->A
100 --> B
While B-A>2    
ClrHome
int((A+B)/2)--> C
Disp "C:",C
Disp "+ Petit taper 1"
Disp "Plus grand taper 2"
Disp "Trouvé taper 3"
Input "X:",X
If X=1
Then
C --> B
End
If X=2
Then
C --> A
End
If X=3
Then
C --> A
C --> B
End
End  
int((A+B)/2) --> C      <------------cette instruction me semble inutile car qd tu arrives à cette ligne, tu as déjà A=B=C.
                                       essaie de la supprimer
Disp "Eureka, j'ai trouvé", C


________________________

à part ça, je n'ai pas d'autres idées de jeux que je pourrais t'aider à programmer.

Un autre programme possible (tu n'as pas un petit frère ou un petite soeur dans le primaire ?) : faire réciter les tables de multiplication :
tu choisis aléatoirement 10 fois 2 nb entre 1 et 9 (ou 10) et tu demandes le résultat.
Tu affiches ensuite vrai ou faux ( en donnant la bonne réponse) et à la fin des 10 questions, tu donnes le nb de bonnes réponses.

Posté par
canonique
re : Simplification de racine carrée 04-06-11 à 23:46

T2N = T de N = Tn
J'ai supprimer la ligne de programme et ça marche impeccable apparemment !

Oui ce programme m'intéresse assez avec l'histoire des tables de multiplication ! Je voudrais bien essayer de le faire.
Mais d'abord, j'aimerais me concentrer sur le programme avec les coordonnées de quatre points pour savoir si c'est un parallélogramme.
Pourrais-tu me donner une petite piste de recherche ?

PS : non, je n'ai pas de frères ou soeurs qui soient en primaires ou maternelles

Bonsoir

Posté par
azalee
re : Simplification de racine carrée 05-06-11 à 07:37

bonjour canonique

pour le parallélogramme

tu demande les coord. des 4 points A, B, C et D (donc 8 fois "input") que tu stockes dans 8 variables.
ABCD est un parallélogramme si [AC]et [BD] ont même milieu (il faudra vérifier absc. et ordonnées et donc utiliser le "and")
ou ABDC est un parallélogramme si [AD] et [BC] ont même milieu

utilisation du "and" : un nb est divisible par 6 s'il est divisible par 2 et par 3
if (int(A/2)=A/2) and (int(A/3)=A/3) ...
.

A la fin du programme, tu pourras te payer le luxe d'afficher soit "ABCD est un parallélogramme", soit "ABDC est un parallélogramme"

_________________________________________
une remarque à propos de input (pour le 2ème programme "c'est+c'est-" par ex.) : qd on a l'instruction input, il faut rentrer un nb puis faire entrée.
Dans le cas où tu sais qd tu fais le progr que la réponse ne contiendra qu'un caractère (répondre 1-plus petit, 2 ...ou 3...) tu peux alors utiliser la commande "getkey" ça s'appelle la "saisie au vol"

Disp "+ Petit taper 1"
Disp "Plus grand taper 2"
Disp "Trouvé taper 3"
Input "X:",X              <---------------  et remplacer cette ligne par
    0->X
    while X=0
     getkey() -> X
    end  
                            (l'utilisateur n'aura pas besoin de faire entrée après la saisie) Mais, je ne suis pas très sûre de la syntaxe, n'ayant pas cette instruction sur ma calculatrice

getKey Donne le code de la
      dernière touche enfoncée
       ou 0 si aucune touche n'a
        été enfoncée.

†PRGM
I/O
7:getKey
_________________________________________
autre remarque

au fur et à mesure que tu feras des programmes, il faudra apprendre à "blinder" c-à-d devancer tout risque d'erreur du programme.

par exemple que ce passerait-il dans le même progr. si tu rentrais 4 ou 9 ?
avec la commande getkey,
il faudrait remplacer while X=0
par while (X<1) or(X>3)

avec la commande input :

Citation :
Disp "+ Petit taper 1"
Disp "Plus grand taper 2"
Disp "Trouvé taper 3"
Input "X:",X

il faudrait mettre

0->X
while (X<1)or(X>3)
   Disp "+ Petit taper 1"
   Disp "Plus grand taper 2"
   Disp "Trouvé taper 3"
   Input "X:",X
end


bonne journée

Posté par
canonique
re : Simplification de racine carrée 05-06-11 à 18:09

Pour le programme du parallélogramme, je l'ai fait il marche !

Input "XA:",A
Input "YA:",B
...                     **************** idem pour les points B et C avec les lettres C, D, E, F.
Input "XD:",G
Input "YD:",H
(A+E)/2 --> I
(B+F)/2 --> J
(C+G)/2 --> K
(D+H)/2 --> L
If I=K and J=L
Then
Disp "C'est un parallélogramme"
Else
Disp "Ce n'est pas un parallélogramme"
End

Et il marche !

----------------------------------------------------------------------------------------------

Pour la fonction Getkey, je l'ai trouvé ! Mais je ne sais pas comment l'intégrer !
J'ai trouvé une image qui pourrait nous aider, mais je ne sais pas comment me débrouiller avec le reste

Merci encore



*** je ne comprends rien à ce site

Posté par
canonique
re : Simplification de racine carrée 05-06-11 à 18:31

J'aimerais trouver un programme pour savoir la valeur de la touche !
Mais ils sont tous faux !
merci

Posté par
azalee
re : Simplification de racine carrée 05-06-11 à 21:20

bonsoir

parallélogramme
bravo pour ton prgr, mais, le parallèlogramme pourrait être ABDC et non ABCD ; il te faudrait un deuxème test

getkey
donc, tu as compris ce que fait getkey. Chaque touche a son propre code, qui n'a rien à voir avec la valeur de la touche.

le premier lien que tu as donné ne marche pas ?

tu peux essayer :
0->G
while G≠105
  getkey->G
  if G≠0
    disp G
  end
end

(je suppose que la touche "entrée" a pour code 105)

qd tu lances le proramme,chaque fois que tu appuies sur une touche, il t'affiche, normalement, le code de la touche.
L'as-tu testé ? S'il ne marche pas, dis-moi ce qu'il fait et regarde ce qu'il y a dans la variable G. Marque-t-il un message d'erreur ?

Si 105 n'est pas le code de la touche "entrée", peut-être  que tu auras du mal à sortir du prgr. Tu peux repérer le code de "entrée", éteindre la calculatrice puis modifier la condition d'arrêt G≠105.

une fois que tu auras trouvé le code des touches tu pourras modifier ton prgr avec les touches +,  -, ou 0(pour "gagné")

(je n'aurai pas beaucoup accès à internet pour les 10-12 jours à venir, mais tu peux continuer à poster, je répondrai qd l'occasion se présentera)

Posté par
azalee
re : Simplification de racine carrée 05-06-11 à 22:43

attention, après un if, le "end" est peut-être un "endif" (pour ta machine, je ne sais pas)
Sur la TI92, "entrée" a pour code 13, "=" 61 ;"+" 43 ; "-"45

tu peux essayer :
0->G
while G≠105
  getkey->G
  if G≠0
    disp G
  endif   <---------------
endwhile  <------------

Posté par
canonique
re : Simplification de racine carrée 05-06-11 à 22:45

Quel deuxième test ?


-------------------

Le programme marche ! Mais quand je clique sur Entrer, là il me dit qu'il y a une erreur et il se met sur le dernier End de la fin.

Comment pourrait-on donc intégrer le GetKey dans le programme.

Posté par
canonique
re : Simplification de racine carrée 05-06-11 à 22:50

Les "endif" et "endwhile" n'existe pas sur ma calculatrice.

Posté par
azalee
re : Simplification de racine carrée 05-06-11 à 22:56

je parlais du prgr où l'ordinateur trouve le nb choisi par l'utilisateur.

progr.2

On pourrait modifier cette partie ; as-tu repéré les codes des touches +, -  et de la touche que tu as choisie pour "gagné"
Disp "+ Petit taper 1"     <------------
Disp "Plus grand taper 2"  <------------ tu modifies le message
Disp "Trouvé taper 3"      <-----------
getkey->X
while X=0
  getkey->X
endwhile
If X=1  <-------------  il faut alors modifier les valeurs 1,2 et 3 pour le traitement suivant
Then
C --> B
End
If X=2  <-----------------
Then
C --> A
End
If X=3  <----------------
Then


Si l'utilisateur appuie sur n'importe quelle touche, ça risque de bugger, mais on verra plus tard

Posté par
azalee
re : Simplification de racine carrée 05-06-11 à 22:58

(je te laisse remplacer le endwhile que je viens d'ajouter dans le dernier post)

et je m'arrête là pour ce soir (mais je pourrai regarder demain matin)

Posté par
canonique
re : Simplification de racine carrée 05-06-11 à 23:17

Bonsoir,
Le programme avec le getkey marche mais je ne vois pas la différence entre maintenant et avant ? A part appuyer sur une autre touche ?

PS : Si je clique sur une autre touche, ça ne bugg pas !! Bonne nouvelle !

1 2 +




Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1736 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !