Inscription / Connexion Nouveau Sujet
Niveau première
Partager :

Algorithme 1ere s

Posté par
Sam1230
19-11-17 à 11:45

Bonjour, j'ai un DM à faire, les algorithmes c'est mon point faible et je ne m'en sors pas, ce serait vraiment gentil de m'aider
Voici l'énoncé :
Durant une année, une personne achète n DVD à 15 euros pièce et p livres à 22 euros pièce. Le montant total pour ces achats est de 362 euros.

Question : Pour déterminer les valeurs de n et p, on décide alors d'écrire un algorithme basé sur le principe suivant: pour toutes les valeurs entières possibles de n et p, on calcule la valeur de 15n+22p, si cette valeur est égale à 362, le couple(n; p) est une solution au problème.

Ecrire cet algorithme en langage naturel puis l'exécuter sur algobox. Conclure.

J'ai essayé avec des boucles pour, tant que ... mais je n'y arrive vraiment pas et il faut que je le rende dans 2 jours , aidez-moi svp

Posté par
Leile
re : Algorithme 1ere s 19-11-17 à 12:33

bonjour,

montre ce que tu as fait..

Posté par
pgeod
re : Algorithme 1ere s 19-11-17 à 13:32

Voilà un petit sujet intéressant en algorithmique.

Posté par
Sam1230
re : Algorithme 1ere s 19-11-17 à 16:08

J'ai mis Variables: n,p, m
n prend la valeur 1
p prend la valeur 1
Pour i allant de 1à10
m prend la valeur 15n+22p
Si m<362
Alors n=n+1
p=p+1
Fin Si
Fin pour
Afficher n et p

Posté par
Sam1230
re : Algorithme 1ere s 19-11-17 à 16:25

LeileLeile

Leile @ 19-11-2017 à 12:33

bonjour,

montre ce que tu as fait..


J'ai mis variables: n  p  m
n prend la valeur 1
p prend la valeur 1
pour i allant de 1à10
m prend la valeur 15n+22p
si m <362
Alors n=n+1
p=p+1
fin si
fin pour
afficher n
afficher p

Mais je ne suis vraiment pas sûre de moi ...

Posté par
hekla
re : Algorithme 1ere s 19-11-17 à 16:31

Bonjour
à tous

un tableur donne comme solution 8 DVD et 11 livres  par conséquent on ne peut aller de 1 à 10

Algorithme 1ere s

Posté par
Sam1230
re : Algorithme 1ere s 19-11-17 à 16:37

malou > ***citation complètement inutile supprimée***

A d'accord merci donc ca doit au moins aller à 11

Posté par
Leile
re : Algorithme 1ere s 19-11-17 à 17:59

bonsoir,

l'algo peut aussi s'écrire :


1   VARIABLES
2     n EST_DU_TYPE NOMBRE
3     p EST_DU_TYPE NOMBRE
4     t EST_DU_TYPE NOMBRE
5   DEBUT_ALGORITHME
6     POUR n ALLANT_DE 1 A 25
7       DEBUT_POUR
8                   POUR p ALLANT_DE 1 A 17
9                  DEBUT_POUR
10                t PREND_LA_VALEUR (15*n)+(22*p)
11                SI (t==362) ALORS
12                DEBUT_SI
13                            AFFICHER n
14                            AFFICHER p
15                            AFFICHER t
16                 FIN_SI
17              FIN_POUR
18      FIN_POUR
19  FIN_ALGORITHME


on peut faire progresser n jusque 25 et p jusque 17 seulement : si p=0, n vaut au maximum 362/15  et si n=0, p vaut au maximum 362/22

Bonne soirée

Posté par
JohnZakhour
re : Algorithme 1ere s 22-11-17 à 10:44

Bonjour, je suis un peu en retard mais voici l'algo correspondant:

N EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
MONTANT EST_DU_TYPE NOMBRE

DEBUT_ALGORITHME

N PREND LA VALEUR 0
P PREND LA VALEUR 0
MONTANT PREND LA VALEUR 362

TANT QUE MONTANT != 0 ET MONTANT%22!=0
    MONTANT PREND LA VALEUR MONTANT-15
    N PREND LA VALEUR N+1
FIN TANT QUE

N PREND LA VALEUR MONTANT/22
AFFICHER N
AFFICHER P


Explications:
Je cherche un nombre qui est divisible par 15 ou 22. Pour cela je cherche a retranche 15 de 362 jusqu'a ce que le nombre (362-15N) soit divisible par 22. En d'autres termes jusqu'a ce que le reste de la division soit nul.
LES RESULTATS SERONT 8 ET 11

Posté par
mathafou Moderateur
re : Algorithme 1ere s 22-11-17 à 11:44

bonjour,

mais l'énoncé impose de faire autrement, avec deux boucles imbriquées obligatoirement :

Citation :
pour toutes les valeurs entières possibles de n et p, on calcule la valeur de 15n+22p, si cette valeur est égale à 362, le couple(n; p) est une solution au problème.

ce qui se traduit exactement par l'algo de Leile du 19-11-17 à 17:59
à quelques détails de variantes d'écriture près c'est la seule réponse qu'on doit apporter au problème tel qu'il est posé.

que ce ne soit pas la meilleure façon de faire, je te l'accorde, mais c'est ce que demande de faire l'énoncé

encore meilleur : utiliser l'algorithme d'Euclide (étendu), mais bon ... avec d'aussi faibles valeurs, ça ne vaut peut être pas le coup de compliquer le programme ...

mais ce serait un excellent exercice de le programmer
pour qu'il affiche par exemple ça :

Euclide ... étendu
22 = 15×1 + 7, ... x = -1, y = 1 solutions de 15x + 22y = 7
15 = 7×2 + 1, ... x = 3, y = -2 solutions de 15x + 22y = 1
7 = 1×7 + 0, fini.

pgcd(15,22) = 1 divise 362

Solution de 15x + 22y = 1 : x = 3 + 22k, y = -2 - 15k

Solution de 15x + 22y = 362 : x = 8 + 22k', y = 11 - 15k' (en multipliant par 362 et en réduisant)

il exécute uniquement deux fois la boucle ! on peut même le faire à la main donc (à condition de connaitre la partie "étendu" de cet algorithme)

Posté par
Sam1230
re : Algorithme 1ere s 22-11-17 à 14:54

Merci beaucoup à vous tous !

Posté par
Sam1230
re : Algorithme 1ere s 22-11-17 à 15:37

Leile @ 19-11-2017 à 17:59

bonsoir,

l'algo peut aussi s'écrire :


1   VARIABLES
2     n EST_DU_TYPE NOMBRE
3     p EST_DU_TYPE NOMBRE
4     t EST_DU_TYPE NOMBRE
5   DEBUT_ALGORITHME
6     POUR n ALLANT_DE 1 A 25
7       DEBUT_POUR
8                   POUR p ALLANT_DE 1 A 17
9                  DEBUT_POUR
10                t PREND_LA_VALEUR (15*n)+(22*p)
11                SI (t==362) ALORS
12                DEBUT_SI
13                            AFFICHER n
14                            AFFICHER p
15                            AFFICHER t
16                 FIN_SI
17              FIN_POUR
18      FIN_POUR
19  FIN_ALGORITHME


on peut faire progresser n jusque 25 et p jusque 17 seulement : si p=0, n vaut au maximum 362/15  et si n=0, p vaut au maximum 362/22

Bonne soirée


Merci beaucoup !  

Posté par
mathafou Moderateur
re : Algorithme 1ere s 22-11-17 à 16:04

(c'était inutile de le recopier vu qu'il était déja dans la discussion )

les machines sont infatigables !
il exécute 25 × 17 = 425 boucles sans rechigner, cet algorithme



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 !