Exercice d'algo

Discutez d'informatique ici !
med_taha
Messages: 6
Enregistré le: 04 Nov 2007, 13:31

Exercice d'algo

par med_taha » 04 Nov 2007, 13:47

Bonjour,

Je veux de l’aide de pour 2 exercices d’algorithmique et merci ;

Exercice 1 :
Donnez la formalisation d’un algorithmique qui calcule la somme et le produit de deux nombres entier

Exercice 2 :
Donnez la formalisation d’un algorithme qui calcule le triple d’un 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 d’un 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 d’un algorithme qui calcule le triple d’un 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:

 

Retourner vers ϟ Informatique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 7 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite