Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Algorithme

Posté par
Prophecy
26-03-14 à 23:28

Bonsoir, j'ai fais un algorithme sur Algobox et je voudrais savoir si sa la configuration est bonne ou non.


1   VARIABLES
2     N EST_DU_TYPE NOMBRE
3     C EST_DU_TYPE NOMBRE
4   DEBUT_ALGORITHME
5     LIRE N
6     LIRE C
7     N PREND_LA_VALEUR ALGOBOX_ALEA_ENT(10,20)
8     C PREND_LA_VALEUR 0
9     TANT_QUE (N!=C) FAIRE
10      DEBUT_TANT_QUE
11      AFFICHERCALCUL ALGOBOX_ALEA_ENT(10,20)
12      LIRE C
13      SI (N==C) ALORS
14        DEBUT_SI
15        AFFICHER "Vous avez gagné!"
16        SI (N!=C) ALORS
17          DEBUT_SI
18          AFFICHER "Vous avez perdu!"
19          FIN_SI
20        FIN_SI
21      FIN_TANT_QUE
22  FIN_ALGORITHME

Sachant que le texte afin de réaliser l'algorithme est le suivant:

Variables
N,C
Début de l'algorithme
N reçoit un nombre entier au hasard entre 10 et 20
C reçoit  0
Tant que N  C faire
          Afficher << entrez un nombre entier entre 10 et 20 >>
          Saisir C
          Si N = C
                     Alors afficher << Vous avez gagné! >>
                     Sinon afficher << Vous avez perdu! >>
          FinSi
FinTant

Posté par
Barney
re : Algorithme 26-03-14 à 23:32

Bonsoir,

pourquoi demander à l'utilisateur d'entrer une valeur
pour n et c ? ces 2 variables reçoivent une autre valeur juste après !

perte de temps et frein au programme

Posté par
Prophecy
re : Algorithme 26-03-14 à 23:34

Je ne devrais pas mettre les variables? Donc les lignes 5 et 6 ne servent à rien?

Posté par
Prophecy
re : Algorithme 26-03-14 à 23:45

Et sinon, à quoi sert l'algorithme au juste?

Posté par
Barney
re : Algorithme 26-03-14 à 23:46

oui

sans compter les anormalités :
comment veux tu qu'une variable entre 10 et 20 soit égale à 0 ? par quel miracle ?
comment veux tu sortir d'une boucle infinie avec de telles conditions ?

Posté par
Prophecy
re : Algorithme 26-03-14 à 23:49

Dans ce que vous venez de dire, je garde tout ce que j'ai fais, mais j'enlève les lignes 2,3,5 et 6?

Posté par
jeveuxbientaider
re : Algorithme 26-03-14 à 23:55

Bonjour ,

la traduction Algobox de ton algo est archi fausse

Citation :
Variables
N,C


Ta traduction est juste ...

Début de l'algorithme

Citation :
N reçoit un nombre entier au hasard entre 10 et 20

se traduit par .... (pas par ce que tu as traduit en lgne 5)

Citation :
C reçoit  0

se traduit par .... (pas par ce que tu as traduit en lgne §)

Citation :
Tant que N ?? C faire
          Afficher << entrez un nombre entier entre 10 et 20 >>
          Saisir C
          Si N = C
                     Alors afficher << Vous avez gagné! >>
                     Sinon afficher << Vous avez perdu! >>
          FinSi
FinTant


Me semble plutôt bien traduit sauf qu'il nous manque Tant que N ?? C  ??? sont à remplacer par ???

Posté par
Prophecy
re : Algorithme 27-03-14 à 00:01

Je....... ne comprends plus ici....

Posté par
mathafou Moderateur
re : Algorithme 27-03-14 à 00:14

Bonjour,


1   VARIABLES
2     N EST_DU_TYPE NOMBRE
3     C EST_DU_TYPE NOMBRE
4   DEBUT_ALGORITHME
5     LIRE N                                         rien à faire là, virer
6     LIRE C                                         rien à faire là, virer
7     N PREND_LA_VALEUR ALGOBOX_ALEA_ENT(10,20)      OK
8     C PREND_LA_VALEUR 0                            OK
9     TANT_QUE (N!=C) FAIRE                          OK
10      DEBUT_TANT_QUE
11      AFFICHERCALCUL ALGOBOX_ALEA_ENT(10,20)      rien à faire là
                        remplacer par affichage d'un message,
                        du texte "entrez un nombre entier entre 10 et 20"
12      LIRE C                                      OK
13      SI (N==C) ALORS                             OK
14        DEBUT_SI
15        AFFICHER "Vous avez gagné!"               OK
16        SI (N!=C) ALORS                          
                        N ne peut pas être à la fois = à C
                        (on est dans dans ce cas là depuis le 1er SI)
                        et  C (ce nouveau SI)
                        virer ce truc compliqué pour remplacer par la construction
                        SI ... SINON de Algobox prévue pour.
18          AFFICHER "Vous avez perdu!"          dans le SINON du seul et 1er SI

Posté par
Prophecy
re : Algorithme 27-03-14 à 00:22

J'y viens...

Posté par
Prophecy
re : Algorithme 27-03-14 à 00:29

Comme ça?



1   VARIABLES
2     N EST_DU_TYPE NOMBRE
3     C EST_DU_TYPE NOMBRE
4   DEBUT_ALGORITHME
5     N PREND_LA_VALEUR ALGOBOX_ALEA_ENT(10,20)
6     C PREND_LA_VALEUR 0
7     TANT_QUE (N!=C) FAIRE
8       DEBUT_TANT_QUE
9       AFFICHER "Entrez un nombre entier entre 10 et 20"
10      LIRE C
11      SI (N==C) ALORS
12        DEBUT_SI
13        AFFICHER "Vous avez gagné!"
14        FIN_SI
15      SI (N!=C) ALORS
16        DEBUT_SI
17        AFFICHER "Vous avez perdu!"
18        FIN_SI
19      FIN_TANT_QUE
20  FIN_ALGORITHME

Posté par
Prophecy
re : Algorithme 27-03-14 à 00:35

et puis à quoi sert cet algorithme???

Posté par
mathafou Moderateur
re : Algorithme 27-03-14 à 00:49

si tu veux, mais il y un un "SINON" directement dans Algobox. voir la doc
si tu utilises le mode graphique (clicodrome) de Algobox tu as une case à cocher pour générer le SINON lorsque tu définis le SI

c'est un peu lourdingue de mettre
si condition
finsi
si condition_opposéé
finsi

même si ça fonctionne

cet algorithme sert à jouer à un jeu bête :
l'ordinateur choisit un nombre entre 10 et 20 et te demande de le deviner.

Posté par
Prophecy
re : Algorithme 27-03-14 à 00:53

Merci! Et donc pour le sinon je clique sur (dernier algo) la ligne 15? J'appuie sur "Ajouter SINON" et je met "ajouter message" dans la partie SINON?

Posté par
mathafou Moderateur
re : Algorithme 27-03-14 à 01:07


non.
c'est le SI de la ligne 11 qui est à munir d'un SINON :
le SI de la ligne 15 n'a pas lieu d'être. (c'est le "SINON" du SI de la ligne 11)

mais ceci (non usage de SINON) n'empêche pas ton algo de fonctionner tel qu'il est.
c'est juste pas très beau et inefficace d'être obligé de remettre explicitement la condition opposée
d'autant que l'algorithme "en langage naturel" utilise bien un "sinon" dans son expression !

Posté par
Prophecy
re : Algorithme 27-03-14 à 01:08

C'est bon, j'avais résolu en fait

Merci!!!!!



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 1741 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 !