Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Pseudo-langage => algorithme

Posté par
Louisa59
17-08-10 à 14:02

Bonjour

Je fais ressurgir mon exemple

Un programme en pseudo-langage :

Prendre 3 chiffre non nuls distincts
Écrire tous les entiers de 3 chiffres distincts possibles pouvant s'écrire avec ces 3 chiffres
En faire la somme
Diviser cette somme par 222
Soustraire au résultat la somme des 3 chiffres choisis

----------
à écrire sous forme formalisée ?

Combien obtient-on ? Comment l'expliquer ?

Déjà, si c'est trop compliqué pour moi, faut le dire d'avance , que je n'affirme pas que j'ai

compris et que ça sera le contraire.

------------
Prendre 3 chiffre non nuls distincts

a, b et c
non nuls a 0, b 0 et c 0

là je parle toute seule , lol

Écrire tous les entiers de 3 chiffres distincts possibles pouvant s'écrire avec ces 3 chiffres

je reste muette pour l'instant

non mais c'est pas si simple

J'y pense

Merci

Posté par
Eric1
re : Pseudo-langage => algorithme 17-08-10 à 14:23

Bonjour, là ils ne sont pas forcéments distincs tes nombres a b c...

De plus, chiffre=nombre de 0 à 9?


Vu qu'ils sont différents, on a 6 nombres différents de 3 chiffres

abc
acb
bac
bca
cab
cba


Donc on fait la somme, on divise par 222 et enfin on soustarit a+b+c

Posté par
Eric1
re : Pseudo-langage => algorithme 17-08-10 à 14:33

Tout dépend comment tu comptes demander tes nombres en entrée
par exemple

ENTIER a :=-1
ENTIER b :=-1
ENTIER c :=-1
TANT QUE (a<=0 OU a>9) FAIRE
DEMANDER a
FIN FAIRE
TANT QUE (b<=0 OU b>9 OU a==b) FAIRE
DEMANDER b
FIN FAIRE
TANT QUE (c<=0 OU c>9 OU c==b OU c==b) FAIRE
DEMANDER c
FIN FAIRE
ENTIER res:=
100*a+10*b+c+
100*a+10*c+b+
100*b+10*a+c+
100*b+10*c+a+
100*c+10*a+b+
100*c+10*b+a


res:=res/222 (à priori ici il s'agit de division entière)

res:=res-a-b-c

RETOURNER res

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 15:35

Bonjour Eric

je te remercie

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 16:01

Je ne trouve pas mon erreur

Pseudo-langage => algorithme ;)

merci

Posté par
Daniel62
re : Pseudo-langage => algorithme 17-08-10 à 16:08

Bonjour Louisa

pas mal ton programme

je ne peux pas le tester tel qu'il est sous forme d'image,

à moins de tout retaper ...

mais je m'aperçois que ta variable total n'est pas déclarée

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 16:10



je m'y retrouve plus

Posté par
Daniel62
re : Pseudo-langage => algorithme 17-08-10 à 16:19

d'accord j'ai compris

tu dois déclarer total comme une nouvelle variable

et ensuite l'utiliser pour calculer ... le total


je te montre le début:

   n PREND_LA_VALEUR 100*a+10*b+c
   total PREND_LA_VALEUR total+n
   AFFICHER n
   n PREND_LA_VALEUR 100*a+10*c+b
   total PREND_LA_VALEUR total+n
   AFFICHER n
   etc ...

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 16:22

m.... alors !

c'est bête, je referais si j'en ai le courage

merci

Posté par
Daniel62
re : Pseudo-langage => algorithme 17-08-10 à 16:28

c'est bête qu'on puisse pas recopier:

   n PREND_LA_VALEUR 100*a+10*b+c
   total PREND_LA_VALEUR total+n
   AFFICHER n
   n PREND_LA_VALEUR 100*a+10*c+b
   total PREND_LA_VALEUR total+n
   AFFICHER n
   n PREND_LA_VALEUR 100*b+10*a+c
   total PREND_LA_VALEUR total+n
   AFFICHER n
   n PREND_LA_VALEUR 100*b+10*c+a
   total PREND_LA_VALEUR total+n
   AFFICHER n
   n PREND_LA_VALEUR 100*c+10*a+b
   total PREND_LA_VALEUR total+n
   AFFICHER n
   n PREND_LA_VALEUR 100*c+10*b+a
   total PREND_LA_VALEUR total+n
   AFFICHER n
   total PREND_LA_VALEUR total/222
   AFFICHER total
   total PREND_LA_VALEUR total-a-b-c
   AFFICHER total

Posté par
Daniel62
re : Pseudo-langage => algorithme 17-08-10 à 16:29

et la déclaration de variable en plus:

    total EST_DU_TYPE_NOMBRE

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 16:40

merci Daniel

Posté par
Daniel62
re : Pseudo-langage => algorithme 17-08-10 à 16:45

mais de rien

normalement on retrouve zéro à la fin

chaque chiffre se retrouve 2 fois en centaines, dizaines, unités

total = 200*(a+b+c) + 20*(a+b+c) + 2(a+b+c)

total = 222*(a+b+c)

total/222 = a+b+c

total/222 -a-b-c = 0

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 16:48



je referais

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 16:50

une tite question

total est toujours une variable, dans n'importe quel programme ?

merci

Posté par
Daniel62
re : Pseudo-langage => algorithme 17-08-10 à 16:54

pas obligatoirement

"total" c'est le nom d'une variable comme n'importe laquelle

au même titre que a, b, c ou n

tu peux choisir le nom que tu veux:

chiffre1, chiffre2, chiffre3, somme, ...

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 16:56

merci

je peux lui filer mon prénom

Posté par
Louisa59
re : Pseudo-langage => algorithme 17-08-10 à 17:07

merci merci et merci 1000 fois

***Algorithme lancé***
veuiller saisir un chiffre non nul
veuiller saisir une deuxième chiffre non nul et différent du premier
Veuiller saisir un troisième chiffre non nul et différent des 2 autres
297
279
927
972
729
792
3996
18
0

***Algorithme terminé***

Posté par
Daniel62
re : Pseudo-langage => algorithme 17-08-10 à 17:07

bien sûr oui

tous les noms sont possibles ...

en tous cas j'ai pas vu de contraintes

même en commençant par un chiffre, ça marche.


Posté par
Eric1
re : Pseudo-langage => algorithme 17-08-10 à 17:18

Pour les variables, à mon avis c'est a<0 pas a<1

La valeur 1 est admise

Posté par
Daniel62
re : Pseudo-langage => algorithme 17-08-10 à 17:20

Bonjour Eric1

la valeur 1 passe

toutes les valeurs inférieures à 1 ne passe pas

Posté par
Eric1
re : Pseudo-langage => algorithme 17-08-10 à 17:42

Ah oui, effectivement, désolé

Posté par
pkpas
re : Pseudo-langage => algorithme 27-09-10 à 20:03

pourriez vous m'expliqué pourquoi svp une semaine que je suis dessus ^^'

Posté par
pkpas
re : Pseudo-langage => algorithme 27-09-10 à 20:04

pourquoi ca donne zero a la fin

(désolé pour le double-post)

Posté par
Daniel62
re : Pseudo-langage => algorithme 27-09-10 à 20:16

Bonsoir pkpas

parce que chaque chiffre se retrouve 2 fois

en centaines, dizaines, unités.

si le total des 3 chiffres est t

la somme sera 2*(100t+10t+t) = 222t

après division par 222 on retrouve t

et t-t = 0

Posté par
pkpas
re : Pseudo-langage => algorithme 27-09-10 à 20:19

Merci beaucoup Daniel62 tout devient clair a présent

merci encore

Posté par
Daniel62
re : Pseudo-langage => algorithme 27-09-10 à 20:21

de rien

bonne soirée



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 !