Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Algorithmes

Posté par
kev73130
04-10-16 à 13:42

Bonjour, j'ai un dm à rendre et je n'y arrive pas du tout j'ai une Ti 83 premium. Voici l'énoncé:
Une puce se deplace par sauts successifs en ligne droite. Son premier saut mesure 30 cm. Chaque nouveau saut mesure 2/3 sur saut précédent.  Quel distance total la puce à t elle parcourus au bout de n saut?
(Avec n donné par l'utilisateur )
Merci de votre aide

Posté par
kenavo27
re : Algorithmes 04-10-16 à 13:46

bonjour,
premier saut : 30 cm
deuxième saut : 2/3  x 30

Troisième: ( 2/3  x 30) x 2/3

Posté par
kenavo27
re : Algorithmes 04-10-16 à 13:49

Ou

Troisième: ( 2/3  x 30) x 2/3=(2/3)²x30

Quatrième:...........................

maintenant, tu peux envisager l'Algorithme

Posté par
kev73130
re : Algorithmes 04-10-16 à 14:00

Merci de ta réponse. Es ce que je suis obligé de faire sa pour tous les sauts ? Je ne  pourrais pas faire une boucle avec ma calculatrice ?

Posté par
mathafou Moderateur
re : Algorithmes 04-10-16 à 14:09

Bonjour,
bien sûr, non seulement tu peux mais tu dois (faire une boucle) ...
il était inutile de faire les calculs indiqués, qui ne sont que à titre d'exemple pour illustrer ce qu'on doit calculer à chaque boucle :

on veut une suite (U) définie par U0 = 30 (cm) et Un+1 = (2/3)Un
la boucle "pour" qui va générer successivement toutes les valeurs de U est quasiment écrite par la phrase précédente !
et on veut faire la somme de tous ces sauts, donc cumuler les U dans une variable S, dans cette même boucle.

Posté par
kev73130
re : Algorithmes 04-10-16 à 22:28

Merci de t'as réponse mais je n'arrive pas à transformer ce que tu as marqué sur ma calculatrice. J'ai commencé les algorithmes il n'y pas longtemps. Donc j'ai encore un peu de mal à me familiariser avec ma calculatrice.
Pourrais tu me re expliquer.
Merci d'avance

Posté par
kev73130
re : Algorithmes 04-10-16 à 22:28

kev73130 @ 04-10-2016 à 22:28

Merci de t'as réponse mais je n'arrive pas à transformer ce que tu as marqué sur ma calculatrice. J'ai commencé les algorithmes il n'y pas longtemps. Donc j'ai encore un peu de mal à me familiariser avec ma calculatrice.
Pourrais tu me re expliquer.
Merci d'avance vous êtes géniaux

Posté par
mathafou Moderateur
re : Algorithmes 04-10-16 à 23:58

la première étape se passe complètement de calculette

il s'agit de décrire avec des mots l'enchainement logique des opérations à effectuer.

on obtient ainsi un "algorithme en langage naturel"

et ensuite seulement on traduit cet algorithme en un programme, pour une machine donnée dans un langage donné
(autant de langages qu'il y a de "races" de calculettes TI, Casio etc)

donc la première étape consiste à décrire l'enchainement logique, avec des mots et des expressions, comment calculer chaque saut et comment en faire la somme
de décrire comment on ferait à la main pour faire ce calul

pour cela on utilise traditionnellement des mots clés comme

telle variable prend telle valeurs
répéter telles opérations pour telles valeurs de la variable truc etc ...
(qui sont de expressions de la grammaire française !!)

je t'ai signalé que la suite était définie par Un+1 = (2/3)Un

pour générer les valeurs successives d'une telle suite on utilise une variable (que l'on va appeler U) dans laquelle seront stockées successivement chacune des valeurs de la suite

initialisation :
U = 30 (c'est la valeur initiale, = celle de U0
Répéter autant de fois qu'il faut :
début
U prend la valeur U*2/3 le nouveau saut est les 2/3 de la valeur de U précédente, du saut précédent
fin


au cours de cette répétition, U prendra successivement les valeurs de U1, puis U2 puis U3 etc autant que nécessaire

pour en faire la somme il suffit d'utiliser une autre variable dans laquelle on va les accumuler
disons S
notre algorithme devient :

initialisation :
U prend la valeur 30 (c'est la valeur initiale, = celle de U0, du premier saut)
S prend la valeur 30 (c'est aussi la valeur initiale du trajet total après ce saut de 30cm)
Répéter autant de fois qu'il faut :
début
U prend la valeur U*2/3
S prend la valeur S + U on ajoute à l'ancienne valeur de S (la distance déja parcourue) le nouveau saut de longueur U
fin

reste à ajouter dans cet algorithme un moyen de traduire "autant de fois qu'il faut"
traditionnellement on utilise une boucle "pour", avec une variable qui va "compter" combien de fois on va exécuter la boucle
le nombre de sauts est "N" entré par l'utilisateur

donc ça devient :

entrer la valeur de N
U prend la valeur 30
S prend la valeur 30
pour K de 1 à N
début
U prend la valeur U*2/3
S prend la valeur S + U
fin
afficher la valeur de S

ce qui donnera au final comme dernière valeur prise par la variable S, et donc comme valeur affichée,
U0 + U1 + U2 + ... + UN

ce qui fait N+1 sauts
raté
on veut N sauts (y compris le 1er)
qu'à cela ne tienne il suffit de dire "pour K de 1 à N-1"
il y a bien N sauts dans U0 + U1 + U2 + ... + UN-1

ensuite il faut traduire ça en langage de calculette

et ça c'est avec la notice de ta calculette...

Posté par
kev73130
re : Algorithmes 08-10-16 à 21:31

Bonsoir,
désolé de ne pas t'avoir répondu avant j'ai réussi mon programme. Je te remercie.



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 !