Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Algorithme

Posté par
anais74
04-01-17 à 11:41

Bonjour


Dans un lycée, un code d'accès à la photocopieuse est attribué à chaque professeur. Ce code est un nombre à 4 chiffres choisis dans la liste {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, chaque chiffre pouvant être repéré à l'intérieur d'un même code. Par exemple 0027 et 5855 sont des codes possibles.

1)Combien de codes peut-on ainsi former ?
2)Ce code permet aussi de définir un identifiant pour l'accès au réseau informatique. L'identifiant est constitué du code à 4 chiffres suivie d'une clé calculée à l'aide de l'algorithme suivant :

Entrée : N est le code à 4 chiffres
Initialisation : Affecter à P la valeur de N ;
Affecter à S la valeur 0 ;
Affecter à K la valeur 1.
Traitement : Tant que K 4 :
Affecter à U le chiffre des unités de P ;
Affecter à K la valeur K+1 ;
Affecter à S la valeur S+K*U ;
Affecter à P la valeur P −U/10;
Affecter à R le reste de la division euclidienne de S par 7 ;
Affecter à C la valeur 7-R.
Sortie (la « clé ») : Afficher C.

a) Faire fonctionner l'algorithme avec N = 2 282.

Ce que j'ai fait :
N: 2282
Initialisation : P:2282
S: O
K:1

Premier tour :
U:=2
K=2
S=4
P=228
R=4
C=3

Deuxième tour
U: 8
K=3
S=28
P=22
R=0
C=7

Troisième tour :
U=2
K=4
S=36
P=2
R=1
C=6

Quatrième tour :
U=2
K=5
S=46
P=0
R=4
C=3

Donc  C=3
Sortie 3

Pourriez-vous m'aider à améliorer la présentation, je pense que la mienne n'est pas correcte.

Je vous remercie d'avance et vous souhaite une bonne journée.

Posté par
kalliste
re : Algorithme 04-01-17 à 12:14


Bonjour,

La ligne :
affecter à P la valeur  P-U/10    serait plutôt   (P-U )/10   ,   non ?

Tu peux présenter cela sous forme de tableau:

  U            K            S              P            R           C
  0            0            0          2282        0            0
  0            1            0           2282       0            0
   2           2             4 etc...

Posté par
mathafou Moderateur
re : Algorithme 04-01-17 à 12:29

Bonjour,

cet algorithme est en fait incorrect : il manque la "fin_tant_que"

de sorte que en l'absence de cette instruction il est impossible de savoir ce qui est dans la boucle et ce qui n'y est pas

la plupart des langages de programmation dans ce cas considèrent que la seule et unique instruction qui suit immédiatement le tant que est seule dans la boucle....
tu as pris le parti de considérer que c'est l'ensemble de toutes les instructions qui suivent qui sont toutes dans la boucle, pourquoi pas.
mais l'instruction de sortie serait elle aussi dans la boucle !!

en fait cet algorithme devrait être :

Entrée : N est le code à 4 chiffres
Initialisation : Affecter à P la valeur de N ;
Affecter à S la valeur 0 ;
Affecter à K la valeur 1.
Traitement : Tant que K 4 :
Affecter à U le chiffre des unités de P ;
Affecter à K la valeur K+1 ;
Affecter à S la valeur S+K*U ;
Affecter à P la valeur P −U/10;
fin tantque
Affecter à R le reste de la division euclidienne de S par 7 ;
Affecter à C la valeur 7-R.
Sortie (la « clé ») : Afficher C.

le calcul de R et de C n'étant en vrai significatif que tout à la fin, une fois que les boucles sont terminées, donc inutile de le mettre dans la boucle.

à part cette remarque, ce que tu as fait semble bon et je ne vois pas trop comment améliorer la présentation
si ce n'est de mettre ça en colonnes au lieu de en lignes, pour que ce soit mon long sur la copie.

(avec un algorithme plus propre et une fin tant que là ou je l'ai mise)
Premier tour :
U=2, K=2, S=4, P=228

Deuxième tour :
U=8, K=3, S=28, P=22

etc
à la fin :

R=4
C=3
sortie 3

Posté par
carita
re : Algorithme 04-01-17 à 12:49

bonjour à tous

je partage les avis précédents sur les erreurs relevées.
mais il me semble que le test doit être K4, non ?
dans ce cas, on trouve en effet 3 en sortie.

Posté par
mathafou Moderateur
re : Algorithme 04-01-17 à 12:59

oui, le caractère étant en fait une image n'a pas été copié par l'auteur (ni par moi non plus vu que j'ai fait un copier coller de ce qu'il avait lui même copié collé )

Posté par
anais74
re : Algorithme 04-01-17 à 17:15

Bonsoir,

Merci beaucoup à tous pour votre aide très précieuse.
Bonne soirée.

Posté par
carita
re : Algorithme 04-01-17 à 17:33

bonne soirée à toi aussi



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