Inscription / Connexion Nouveau Sujet
Niveau première
Partager :

algorithme et boucle

Posté par Profil romainromain 13-12-17 à 10:22



Bonjour, voici un second algorithme que j'ai du mal à traiter, pouvez-vous m'aider?

Saisir n
A reçoit 2
B reçoit 1
Pour i de 0 jusqu'à n
     B reçoit B + A
Fin Pour
Afficher B

Ensuite on a un tableau à compléter, dans lequel il faut trouver les différentes valeurs de B pour n allant de 0 à 5

Pour n=0, B est deja donné, on a B=3

Puis selon moi on a:
pour n=1, B reçoit 3 + 2 donc B=5
pour n=2, B reçoit 5 + 2 donc B=7
pour n=3, B reçoit 7 + 2 donc B=9
pour n=4, B reçoit 9 + 2 donc B=11
pour n=5, B reçoit 11 + 2 donc B=13

Je ne suis pas du tout certain de ce que j'ai fais, car d'une part j'ai du mal à savoir si à cause de 'A reçoit 2 B reçoit 1' on doit rajouter 2 et 1 à A et B à chaque tour. Et globalement j'ai du mal à voir où la boucle qu'on répète commence. Je pense qu'elle commence à 'Pour i de 0 jusqu'à n'?

Merci

Posté par
mathafou Moderateur
re : algorithme et boucle 13-12-17 à 10:31

re,
même réponse que pour l'autre

(nota : pour n = 0, la boucle est effectuée une fois, ce qui donne bien le B = 3 déja écrit du tableau)

Posté par
fm_31
re : algorithme et boucle 13-12-17 à 10:36

Bonjour ,

il faut noter qu'un boucle  pour  n  de 0 à 5    s'effectue  6 fois  (avec  n = 0 , 1 , 2 , 3 , 4 et 5)

Posté par
mathafou Moderateur
re : algorithme et boucle 13-12-17 à 10:57

ici remplacer n par i ...
"pour i de 0 à n"

si n = 5 elle s'effectue 6 fois
(et si n = 0 elle s'effectue 1 fois comme je le disais)

Posté par
vham
re : algorithme et boucle 13-12-17 à 11:40

Bonjour,

"Pour i de 0 à 5" la boucle s'effectue 6 fois : tout dépend des conventions du langage courant, du langage de l'algorithme ou du langage de programmation...
Tous ont leurs propres conventions qui ne sont pas toujours bien posées ou bien connues...
On ne peut qu'être effrayé par la façon dont on fait poser un "algorithme" au lycée sans toujours lui faire associer les commentaires explicatifs nécessaires.
Sachant la difficulté de comprendre un morceau de programme ( ou d'algorithme) non commenté dans des programmes d'utilisation courante, on risque de ne pas envoyer les élèves sur les bonnes voies...

Posté par
mathafou Moderateur
re : algorithme et boucle 13-12-17 à 12:28

"Pour i de 0 à 5" fait toujours, aussi bien en pur français que traduit dans n'importe quel langage de programmation
i = 0
puis i = 1
etc
puis i = 5 inclus

en maths quand on dit \sum_{i=0}^5 c'est bien de i = 0 à i = 5 inclus
c'est exactement pareil sans qu'on ait besoin de chercher à pinailler sur sa signification

le problème est en fait de la non distinction entre
un algorithme (une description abstraite des opérations à effectuer dans tel ordre)
et un programme (la traduction d'un algorithme dans un langage de programmation donné)

quand on parle de l'algorithme d'Euclide pour chercher le PGCD, on ne parle pas de programmation ni de langage !!
on décrit une méthode, une succession d'opérations à effectuer jusqu'à obtenir le résultat
ceci est général.

évidemment que pour décrire une description abstraite on est amené à utiliser un certain "langage" qui est le pur français
on appelle cela "en langage naturel"
et les "commentaires" font partie de cette description (devraient)

et certains se sont évertués à essayer de "normaliser" ce "langage naturel" de façon plus malheureuse qu'heureuse.
je me suis toujours horrifié de voir des algorithmes "rédigés" à la mode débile :

entrée : bla bla
algorithme : bla bla
fin de l'algorithme
sorties : bla bla
avec des "prend la valeur de" et autres "debut de"

seule l'éducation nationale utilise cette convention (utilisait, mais la "nouvelle façon" n'est guère mieux)

alors certes pour illustrer et le "voir" fonctionner, on est quasiment tout le temps amené à traduire un algorithme dans un langage donné

mais il faut bien faire la différence entre l'algorithme lui-même (c'est des maths) et sa traduction (c'est de l'informatique)

Posté par
vham
re : algorithme et boucle 13-12-17 à 14:06

Bonjour,

Merci  mathafou  de si bien donner une vision bien détaillée.
Il semble qu'Algobox ne soit plus recommandé dans l'éducation nationale ?

"Pour i de 0 à 5" qui effectue 6 fois une boucle, je pensais à
Python pour lequel "for i in range(0:5):" la boucle est effectuée 5 fois...

Posté par
alb12
re : algorithme et boucle 13-12-17 à 14:14

salut,

vham @ 13-12-2017 à 14:06

je pensais à
Python pour lequel "for i in range(0:5):" la boucle est effectuée 5 fois...

ce n'est pas la moindre des difficultes de python pour un lyceen.

Posté par
mathafou Moderateur
re : algorithme et boucle 13-12-17 à 14:57

je ne connais pas Python mais s'il fait ça ses concepteurs sont "débiles" (attention smiley ) :
l'ensemble des nombres entiers de [0; 5] contient 6 éléments
en fait range est [0; 5[ (on se demande bien quelle idée saugrenue est passée dans le cerveau des concepteurs ...)

Posté par
alb12
re : algorithme et boucle 13-12-17 à 15:13

range(valeur_initiale, borne_de_fin, pas)
Le pas peut être positif ou négatif. La valeur de la borne de fin (maximale ou minimale) n'est jamais atteinte.

le pire c'est l'indentation totalement ingerable avec un groupe de 17 eleves.

Posté par
alb12
re : algorithme et boucle 13-12-17 à 15:26


list(range(10))

affiche une liste de longueur 10 commençant à 0. Pas si debile que çà.

Posté par
mathafou Moderateur
re : algorithme et boucle 13-12-17 à 15:30

le fait d'ouvrir l'intervalle de valeurs à droite est loufoque

en fait toute fonction et tout mot clé de tout langage doit être soigneusement étudié dans la spécification détaillée de ce langage avant d'être utilisé,
c'est tout.
c'est comme suivre les règles d'un jeu

ou de plein de jeux sans se mélanger les pinceaux entre adouber, souffler, tackler etc ...

Posté par
alb12
re : algorithme et boucle 13-12-17 à 15:36

oui

Posté par
vham
re : algorithme et boucle 13-12-17 à 17:53

Bonsoir,

Oui, mais penser, sans le connaître,  que Python a été conçu de façon saugrenue mérite bien un smiley  
C'est le fait de commencer les tableaux et listes avec un index 0 plutôt que 1 qui conduit à ce choix...

Posté par Profil romainromainre : algorithme et boucle 13-12-17 à 21:13


Un peu dépassé par les posts je me contenterai de dire merci pour vos réponses ^_^. Et merci spécialement à Mathafou



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