Exercice d'algo
Discutez d'informatique ici !
-
med_taha
- Messages: 6
- Enregistré le: 04 Nov 2007, 13:31
-
par med_taha » 04 Nov 2007, 13:47
Bonjour,
Je veux de laide de pour 2 exercices dalgorithmique et merci ;
Exercice 1 :
Donnez la formalisation dun algorithmique qui calcule la somme et le produit de deux nombres entier
Exercice 2 :
Donnez la formalisation dun algorithme qui calcule le triple dun nombre entier sur une machine qui ne sait faire que la somme 2 à 2
-
_-Gaara-_
- Membre Complexe
- Messages: 2813
- Enregistré le: 03 Nov 2007, 15:34
-
par _-Gaara-_ » 04 Nov 2007, 16:35
Salut,
je ne sais pas ce qu'est l'algo donc j'essaye en langage TI-83+ (basic :hum: )
Exercice 1 :
Donnez la formalisation dun algorithmique qui calcule la somme et le produit de deux nombres entier
Prompt a,b
a+b ->X
Disp "Somme =", X
axb ->Y
Disp "Produit =", Y
Exercice 2 :
Donnez la formalisation dun algorithme qui calcule le triple dun nombre entier sur une machine qui ne sait faire que la somme 2 à 2
Prompt a
a+a ->X
X + a -> Y
Disp "Triple =", Y
-
med_taha
- Messages: 6
- Enregistré le: 04 Nov 2007, 13:31
-
par med_taha » 04 Nov 2007, 16:57
Merci c pas ca :triste:
-
Joker62
- Membre Transcendant
- Messages: 5028
- Enregistré le: 24 Déc 2006, 20:29
-
par Joker62 » 04 Nov 2007, 17:51
Mais non c'est pas ça ! :)
// On suppose a < b
Fonction SOMME( a,b : ENTIER )
DEBUT
VARIABLE S : ENTIER, c : ENTIER
c <- 1;
S <- a;
TANT QUE c != b
FAIRE
S <- Succ(S); // Succ(n) = n+1
c <- Succ(c);
FIN TANT QUE
RETOURNER S;
FIN
Pour la multiplication, faut savoir que a * b = a + a + ... + a ( b fois )
L'algorithme s'utilise avec la somme faite plus haut.
-
Joker62
- Membre Transcendant
- Messages: 5028
- Enregistré le: 24 Déc 2006, 20:29
-
par Joker62 » 04 Nov 2007, 17:51
Mais non c'est pas ça !
- Code: Tout sélectionner
FONCTION SOMME( a,b : ENTIER ) : ENTIER;
DEBUT
VARIABLE S : ENTIER, c : ENTIER
c <- 1;
S <- a;
TANT QUE c != b
FAIRE
S <- Succ(S); // Succ(n) = n+1
c <- Succ(c);
FIN TANT QUE
RETOURNER S;
FIN
Pour la multiplication, faut savoir que a * b = a + a + ... + a ( b fois )
L'algorithme s'utilise avec la somme faite plus haut.
-
_-Gaara-_
- Membre Complexe
- Messages: 2813
- Enregistré le: 03 Nov 2007, 15:34
-
par _-Gaara-_ » 04 Nov 2007, 21:20
Salut Joker62,
Comment on apprends à programmer en algorithmique ? as-tu des liens intéressants ? (çà ressemble vachement au Turbo pascal :we: )
-
_-Gaara-_
- Membre Complexe
- Messages: 2813
- Enregistré le: 03 Nov 2007, 15:34
-
par _-Gaara-_ » 04 Nov 2007, 21:24
[quote="Joker62"]Mais non c'est pas ça !
[CODE]
FONCTION SOMME( a,b : ENTIER ) : ENTIER;
DEBUT
VARIABLE S : ENTIER, c : ENTIER
c .< désolé trop de questions :hein:
-
Joker62
- Membre Transcendant
- Messages: 5028
- Enregistré le: 24 Déc 2006, 20:29
-
par Joker62 » 04 Nov 2007, 22:51
l'algorithmique, c'est pas un langage, c'est juste une espèce de code que tout le monde comprend!
Après on le traduit dans le langage qu'on veut !
Ici, j'ai pris la forme du turbo pascal parce que c'est basique à comprendre.
Comment ça marche cette fonction ???
C'est simple :
On remarque que a + b = a + 1 + 1 + ... + 1 ( b fois ) = (a+1)+1+...+1 =((a+1)+1)+1+...+1 etc...
On prend une variable S et une variable compteur c
On initialise S à a et c à 1
Tant que c est différent de b
On ajoute 1 à S, avec la commande Succ qui veut dire simplement le successeur de n ( Voir Axiome de Peano )
Et on continue tant que c n'est pas égale à b
Fin
-
_-Gaara-_
- Membre Complexe
- Messages: 2813
- Enregistré le: 03 Nov 2007, 15:34
-
par _-Gaara-_ » 05 Nov 2007, 01:27
Merci beaucoup pour ta réponse Joker62.
Pour l'axiome de Peano nous l'avons vu en cours donc çà me dit quelque chose, c'est en rapport avec le raisonnement par récurrence :id:
J'ai compris :id:
-
bruce.ml
- Membre Rationnel
- Messages: 630
- Enregistré le: 19 Juin 2007, 00:54
-
par bruce.ml » 05 Nov 2007, 22:58
Salut,
je doute que ce soit de ça dont l'exercice traite. Ca semble plus être un exercice de programmation bas niveau, où les nombre sont par exemple représentés par des tableaux d'entiers. Du genre :
- Code: Tout sélectionner
fonction plus(m : tableau,n : tableau)
t := max(taille m,taille n)
res := creertableau(t)
retenue := 0
pour i allant de t-1 à 0 pas -1 faire
tmp := m[i] + n[i] + retenue
res[i],retenue := QuotientReste(tmp,B) /* le quotient et le reste de la divison de tmp par B, on somme en base B */
fin pour
retourner res
fin fonction
-
Anna68
- Membre Naturel
- Messages: 42
- Enregistré le: 22 Oct 2007, 13:01
-
par Anna68 » 23 Nov 2007, 16:38
Salut,
Joker62 a écrit:l'algorithmique, c'est pas un langage, c'est juste une espèce de code que tout le monde comprend!
Après on le traduit dans le langage qu'on veut !
Je suis tout à fait d'accord avec toi, Joker62 :happy2:
Bruce.ml, ton l'algorithmique est facile à comprendre.
-
bruce.ml
- Membre Rationnel
- Messages: 630
- Enregistré le: 19 Juin 2007, 00:54
-
par bruce.ml » 24 Nov 2007, 09:19
Anna68 a écrit:Bruce.ml, ton l'algorithmique est facile à comprendre.
merci, c'est un peu ce que je fais dans ma vie l'algo en même temps :we:
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 7 invités