Besoin d'aide pour exercice algorithme

Fermé
mob40 Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 27 novembre 2010 - 26 sept. 2010 à 12:55
jeanch_tlse Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 2 mars 2014 - 28 sept. 2010 à 22:56
Bonjour,

je sais pas si c'est trop l'endroit mais j'aimerai avoir une aide pour les connaisseurs.
j'ai un exercice de débutant à faire sur le logiciel "TestAlgo 3.1"

l'énoncé : décrivez un algorithme qui déclare deux variables de type entier. Donnez leur n'importe quelle valeur et affichez le contenu de la variable qui est le plus élevé ( en supposant qu'on ne connait pas les valeurs).

j'ai mis :

algo jose
principal
var
entier a:=2, b:=3;
debut
si a>b alors afficher(a);
sinon afficher (b);
finsi


et apparemment y aurait une erreur d'écriture... mais je sais pas laquelle si vous aviez une idée...

9 réponses

yuri648 Messages postés 677 Date d'inscription mardi 30 décembre 2008 Statut Membre Dernière intervention 20 mai 2015 7
26 sept. 2010 à 18:46
ton idée est juste
0
cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
26 sept. 2010 à 19:31
Bonjour,

Je ne vois pas, moi non plus, d'erreur. Peut-être peux-tu ajouter: Fin (du programme) ?
0
mob40 Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 27 novembre 2010
26 sept. 2010 à 20:31
ok ca doit etre une erreur d'écriture par rapport au logiciel alors... j'aurai besoin d'aide pour un autre exercice je le posterai demain ici. merci .
0
yuri648 Messages postés 677 Date d'inscription mardi 30 décembre 2008 Statut Membre Dernière intervention 20 mai 2015 7
26 sept. 2010 à 23:02
quel language utilise tu?

ecrit le programme en language que tu utilise pour voir mieux l'erreur
0
mob40 Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 27 novembre 2010
27 sept. 2010 à 16:40
le logiciel est celui la http://www.lirmm.fr/~jung/enseignements.html
0
mob40 Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 27 novembre 2010
27 sept. 2010 à 16:58
exercice suivant : même questions qu'avant sauf qu'il y a 3 entiers cette fois.
avez vous une idée de la réponse moi je pensais a ca mais je sais pas si c'est possible...
algo jose
principal
var
entier a:=2, a:=5, c:=10;
debut
si a>b,c alors afficher(a);
si b>a,c alors afficher (b);
si c>a,c alors afficher (c);
finsi

je suis pas convaincu mais j'ai trouvé que ca avec les moyens que j'ai LOL merci de votre aide
0
yuri648 Messages postés 677 Date d'inscription mardi 30 décembre 2008 Statut Membre Dernière intervention 20 mai 2015 7
27 sept. 2010 à 19:19
c juste tant que le nombre d'entier est limité
0
mob40 Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 27 novembre 2010
27 sept. 2010 à 19:24
ok et auriez vous un idée pour celui la :
écrivez un algorithme qui tri par ordre décroissant trois réels a, b, c en échangeant leurs valeurs. Les valeurs sont attribuées au hasard (bien sûr, on supposera qu'elles ne sont pas connues)
0
yuri648 Messages postés 677 Date d'inscription mardi 30 décembre 2008 Statut Membre Dernière intervention 20 mai 2015 7
27 sept. 2010 à 19:29
je ne sais pas si vous avez etudiez les tableau?
0
mob40 Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 27 novembre 2010
27 sept. 2010 à 19:33
ben je sais pas trop je crois pas... enfin... si tu as un exemple. enfaite c'est un cours d'informatique et on a eu droit a 3 exercices papiers simples, et après des exercices sur machine. mais bon j'y connais rien et vu qu'il n'a pas corrigé je sais pas la réponse des exos que j'ai pas fait en cours. alors je cherche^^
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yuri648 Messages postés 677 Date d'inscription mardi 30 décembre 2008 Statut Membre Dernière intervention 20 mai 2015 7
27 sept. 2010 à 19:36
si oui tu les met dans un tableau et tu fait trier le tableau et tu l'affiche
c'est universsele

notre tableau est T[i] qui contient les chiffres a trier
on prend le max la premiere case du tableau et on le parcourant et on comparant avec max si on trouve un num>max on ecrase l'encienne

voila l'algo

max=T[0]

i=1
thant que (i<taille_du_tableau)
debut
si (t[i]>max ) max=t[i]
sinon i=i+1
Fin

//affichage

thant que (i<taille_du_tableau)
debut
affiche( T[i])
i=i+1

fin

bon courage
0
yuri648 Messages postés 677 Date d'inscription mardi 30 décembre 2008 Statut Membre Dernière intervention 20 mai 2015 7
27 sept. 2010 à 19:46
ah j'ai oulié d'initialiser i a 0 pour l'affichage
0
jeanch_tlse Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 2 mars 2014 3
27 sept. 2010 à 22:41
1/peut etre fallait il lire les variables au clavier, au lieu de leur affecter une valeur dans le programme.

2/ algos avec que des if :

avec 3 variables ton algo est valable aussi (il n'y a pas 1 seule solution, apres questions d'optimisation et eviter faire trop de tests inutiles):

/* elimine la cas de a
/* ensuite il nous reste a comparer b et c
si a> b et a > c
afficher a
sinon
si b > c
afficher b
sinon
afficher c
fin si
fin si


3/
principe du tri a bulle (qui decoule sur des fonctions reccursives par la suite):
a verifier et bien comprendre pour pouvoir progresser par la suite
/* si a superieur à b on echange
/* pour se retrouver avec a et b tries
/* si a=3,b =2,c =1 on obtient a=2,b=3,c=1)
si a > b
X <- a
a <- b
b <- X
fin si

/* si b superieur à c
/* on echange b et c
/* suite du cas precedent a=2,b=3,c=1 ==> a=2,b=1,c=3)
si b > c
X <- c
c <- b
b <- X
/* comme on a echange b et c
/* il faut verifier a et b
/* suite du cas precedent a=2,b=1,c=3 ==> a=1,b=2,c=3)
si a > b
X <- a
a <- b
b <- X
fin si
fin si

afficher a
afficher b
afficher c
0
yuri648 Messages postés 677 Date d'inscription mardi 30 décembre 2008 Statut Membre Dernière intervention 20 mai 2015 7
27 sept. 2010 à 22:51
jeanch_tlse ton algo 2 est faux essaye cet exemple

a=3 , b=5 c=6 il va afficher que c
0
jeanch_tlse Messages postés 13 Date d'inscription dimanche 26 septembre 2010 Statut Membre Dernière intervention 2 mars 2014 3
28 sept. 2010 à 22:56
Justement il ne veut que la valeur la plus elevée et "c" est la valeur la plus elevée. (si a=3 , b=5 c=6)
il concerne l'exercice où il y a 3 variables, et où l'on veut afficher la valeur la plus elevée.

Pour le tri c'est l'algo 3/
0