Inscription / Connexion Nouveau Sujet
Niveau algorithmique
Partager :

algorithmique

Posté par
ykj57
23-03-17 à 21:07

Salut à tous
enfaite j'ai besoin de votre avis sur cet algorithme que j'ai ecris.
   Il s'agit d'ecrire un algoritme qui reçoit en entrer un nombre entier de 1 a 10 et affiche en sortie la table de multiplication de ce nombre.

nom de l'algo: Tabledemultiplication
variables:  Prod,n,x = entier
Debut:
  afficher("entrez la valeur de n à multiplier")
  lire(n)
  x=0
tant que (x<10) faire
Prod=(x+1)*n
Fin tant que
affichez("la table de multiplication de n est="prod)
Est ce correcte?
Merci d'avance😊

Posté par
cocolaricotte
re : algorithmique 23-03-17 à 21:14

Bonjour,

Là où tu as placé ton "affichez" il y aura combien de nombres affichés ?

Dans une table de multiplication, il faudrait combien de résultats affichés ?

Posté par
carita
re : algorithmique 23-03-17 à 21:16

bonsoir à tous
et il manque l'incrémentation de x... la boucle va tourner sans fin.

Posté par
ykj57
re : algorithmique 23-03-17 à 21:18

Il y aura 10 resultats vue que la table commence par 1 (enoncé)

Posté par
cocolaricotte
re : algorithmique 23-03-17 à 21:18

Bien vu carita  je n'avais pas remarqué

Posté par
ykj57
re : algorithmique 23-03-17 à 21:20

carita @ 23-03-2017 à 21:16

bonsoir à tous
et il manque l'incrémentation de x... la boucle va tourner sans fin.

D'apres la condition, La boucle prendra fin lorsque x=10 n'est ce pas?

Posté par
cocolaricotte
re : algorithmique 23-03-17 à 21:23

Citation :
D'apres la condition, La boucle prendra fin lorsque x=10 n'est ce pas?


Mais comme la variable x est initialisée à 0 et ne change jamais de valeur dans ton algorithme, alors elle ne prendra jamais la valeur 10. Elle vaudra 0 tout le temps !  

Posté par
carita
re : algorithmique 23-03-17 à 21:24

oui, encore faut-il écrire l'instruction qui augmente x avec un pas de 1;
sinon, tu n'afficheras que le calcul de 1*n.

il y a d'autres choses importantes à reprendre dans ton algo :
lis le message de cocolaricotte.

je vous laisse poursuivre.
bonne soirée à vous deux

Posté par
verdurin
re : algorithmique 23-03-17 à 21:28

Bonsoir,
Comme l'a dit carita le problème est que ton algorithme ne modifie pas la valeur de  x.
Comme il vaut 0 au départ, il reste toujours égal à 0 et la condition x<10  peut s'écrire 0<10 ce qui est est toujours vrai : la boucle ne termine jamais.

Posté par
ykj57
re : algorithmique 23-03-17 à 21:29

enfaite x=0
prod=(x+1)*n
De là on aura prod=(0+1)*n or x sera egal a 1 qui est inferieur a 10 donc la boucle continue prod=(1+1)*n
.
.
.
.
.
.

C'est ce que je me dis

Posté par
ykj57
re : algorithmique 23-03-17 à 21:32

verdurin @ 23-03-2017 à 21:28

Bonsoir,
Comme l'a dit carita le problème est que ton algorithme ne modifie pas la valeur de  x.
Comme il vaut 0 au départ, il reste toujours égal à 0 et la condition x<10  peut s'écrire 0<10 ce qui est est toujours vrai : la boucle ne termine jamais.

Ah oui j'avais pas remarqué
Mais comment l'ecrire correctement svp?

Posté par
cocolaricotte
re : algorithmique 23-03-17 à 21:34

MAis c'est pas vraiment réaliste !

Ouvre ton livre
Cherche un algorithme qui permet de trouver une suite de nombres entiers qui commence par la valeur 0 et qui prend les valeurs 1 , puis 2 , puis 3 , puis ........ jusqu'à la valeur 10

Posté par
ykj57
re : algorithmique 23-03-17 à 21:47

Ok,  j'ai vraiment besoin d'un exemple sur lequel m'appuyer

Posté par
cocolaricotte
re : algorithmique 23-03-17 à 22:10

Exemples

Pour faire afficher tous les nombres paires compris entre 2 et 300

variable : n un entier
n prend la valeur 2
Tant que n 300
  afficher n
  n prend la valeur n + 2
  fin Tant que
Fin

Pour faire afficher tous les nombres impaires compris entre 1 et 199

variable : n un entier
n prend la valeur 1
Tant que n 199
  afficher n
  n prend la valeur n + 2
  fin Tant que
Fin

Tu essayes de comprendre et tu modifies ton algorithme.

Posté par
ykj57
re : algorithmique 23-03-17 à 22:47

Merci beaucoups à vous cocolaricotte
Je m'y met

Posté par
cocolaricotte
re : algorithmique 23-03-17 à 23:10

A bientôt et bonnes réflexions.

Répondre à ce sujet

Seuls les membres peuvent poster sur le forum !

Vous devez être connecté pour poster :

Connexion / Inscription Poster un nouveau sujet
Une question ?
Besoin d'aide ?
(Gratuit)
Un modérateur est susceptible de supprimer toute contribution qui ne serait pas en relation avec le thème de discussion abordé, la ligne éditoriale du site, ou qui serait contraire à la loi.


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

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 !