Problème D'Algorithme.
chyrla
Messages postés
179
Date d'inscription
Statut
Membre
Dernière intervention
-
chyrla Messages postés 179 Date d'inscription Statut Membre Dernière intervention -
chyrla Messages postés 179 Date d'inscription Statut Membre Dernière intervention -
Salut à tous ! Je suis en Première STL (Science et Technologie de Laboratoire) option SPCL (Science Physique Chimie Laboratoire). J'ai un prof de math qui nous a donné un algorithme à faire sur algobox : L'énoncé :
Écrire un programme dont l'entrée est une mesure en radian et dont la sortie est la mesure principale.
Cela fait deux jours que j'essai ... je pète les plombs ! (Inutiles de venir poster si ce n'est pas pour apporter une réponse constructive)
(algobox est un logiciel libre et en téléchargement gratuit. Dernière version : 0.6)
Merci d'avance du coup de main ! Je m'y remet !
Bonne soirée.
Écrire un programme dont l'entrée est une mesure en radian et dont la sortie est la mesure principale.
Cela fait deux jours que j'essai ... je pète les plombs ! (Inutiles de venir poster si ce n'est pas pour apporter une réponse constructive)
(algobox est un logiciel libre et en téléchargement gratuit. Dernière version : 0.6)
Merci d'avance du coup de main ! Je m'y remet !
Bonne soirée.
A voir également:
- Problème D'Algorithme.
- Logiciel algorithme euromillion - Télécharger - Loisirs créatifs
- Logiciel algorithme gratuit - Télécharger - Édition & Programmation
- Algorithme euromillion excel gratuit - Forum Algorithmes / Méthodes
- Algorithme ajout rapide snapchat - Forum Snapchat
- Ajout rapide snap - Forum Snapchat
14 réponses
bonjour
tu vais simplement (un peu) mélangé les variables X et Y
VARIABLES
X EST_DU_TYPE NOMBRE
Y EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE X
Y PREND_LA_VALEUR X
SI (Y<-Math.PI) ALORS
DEBUT_SI
TANT_QUE (Y<=-Math.PI) FAIRE
DEBUT_TANT_QUE
Y PREND_LA_VALEUR Y+(2*Math.PI)
FIN_TANT_QUE
FIN_SI
SINON
DEBUT_SINON
SI (Y>Math.PI) ALORS
DEBUT_SI
TANT_QUE (Y>Math.PI) FAIRE
DEBUT_TANT_QUE
Y PREND_LA_VALEUR Y-(2*Math.PI)
FIN_TANT_QUE
FIN_SI
FIN_SINON
AFFICHER Y
RQ. En fait on pourrait supprimer la variable Y et travailler uniquement sur X (mais sa valeur initiale sera alors perdue)
bonne suite
tu vais simplement (un peu) mélangé les variables X et Y
VARIABLES
X EST_DU_TYPE NOMBRE
Y EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE X
Y PREND_LA_VALEUR X
SI (Y<-Math.PI) ALORS
DEBUT_SI
TANT_QUE (Y<=-Math.PI) FAIRE
DEBUT_TANT_QUE
Y PREND_LA_VALEUR Y+(2*Math.PI)
FIN_TANT_QUE
FIN_SI
SINON
DEBUT_SINON
SI (Y>Math.PI) ALORS
DEBUT_SI
TANT_QUE (Y>Math.PI) FAIRE
DEBUT_TANT_QUE
Y PREND_LA_VALEUR Y-(2*Math.PI)
FIN_TANT_QUE
FIN_SI
FIN_SINON
AFFICHER Y
RQ. En fait on pourrait supprimer la variable Y et travailler uniquement sur X (mais sa valeur initiale sera alors perdue)
bonne suite
bonjour
- pour le décompte du nombre de tours, il te suffit de déclarer une nouvelle variable T (par exemple) qui va être
1. initailisée à 0
2. mise à jour chaque fois que tu ajoutes/enlève un tour dans les boucles TANTQUE
- pour la première question, c'est un brin plus compliqué, tu ne dois plus entrer X comme un nombre décimal, mais comme une fraction de PI, et ça ce n'est possible qu'en séparant le numérateur et le dénominateur de X (par exemple pour entrer X=17*PI/5 tu dois (oublier X) entrer séparément N=17 et D = 5, et travailler uniquement avec N et D
bon courage
- pour le décompte du nombre de tours, il te suffit de déclarer une nouvelle variable T (par exemple) qui va être
1. initailisée à 0
2. mise à jour chaque fois que tu ajoutes/enlève un tour dans les boucles TANTQUE
- pour la première question, c'est un brin plus compliqué, tu ne dois plus entrer X comme un nombre décimal, mais comme une fraction de PI, et ça ce n'est possible qu'en séparant le numérateur et le dénominateur de X (par exemple pour entrer X=17*PI/5 tu dois (oublier X) entrer séparément N=17 et D = 5, et travailler uniquement avec N et D
bon courage
bon, je te le dis tout de suite, je ne te ferais pas le programme (surtout parce que le programme a l'air compliqué...)
par contre je peux t'aider pour faire ton algo (après a toi de voir quoi utiliser dans le programme pour reproduire ce que je te donnerais.
dans un premier temps, est ce que tu sais calculer la mesure principale a partir d'une mesure en radian ?
ps: j'ai signalé le sujet pour qu'il soit déplacé dans programmation
par contre je peux t'aider pour faire ton algo (après a toi de voir quoi utiliser dans le programme pour reproduire ce que je te donnerais.
dans un premier temps, est ce que tu sais calculer la mesure principale a partir d'une mesure en radian ?
ps: j'ai signalé le sujet pour qu'il soit déplacé dans programmation
Alors oui pour le calcul à la main, et le programme ce n'est pas un programme, juste un algo. (C'était déjà dans Droit/Programmation je crois)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ton sujet était dans droit/informatique :)
pour le "programme" je parlais de l'algo et ensuite j'ai souligné que le programme algobox avais l'air compliqué ^^
et a part ca pour l'algo:
il faut d'abord déclarer autant de variable que nécessaire, pour ca il faut que tu identifie chaque valeur de ton calcul mesure radian->mesure principale
est ce que tu as eu un cour sur l'utilisation du logiciel algobox ?
je suppose qu'il dois y avoir une fonction qui calcul tout seul ce que tu cherche non ?
pour le "programme" je parlais de l'algo et ensuite j'ai souligné que le programme algobox avais l'air compliqué ^^
et a part ca pour l'algo:
il faut d'abord déclarer autant de variable que nécessaire, pour ca il faut que tu identifie chaque valeur de ton calcul mesure radian->mesure principale
est ce que tu as eu un cour sur l'utilisation du logiciel algobox ?
je suppose qu'il dois y avoir une fonction qui calcul tout seul ce que tu cherche non ?
bonjour
pour une ébauche d'algorithme
reste à régler
1. quelques cas particuliers
2. l'utilisation d'algobox
bonne suite
pour une ébauche d'algorithme
lire r si r < 0 alors tant que abs(r) > pi r = r+2*pi fin tant que sinon tant que r > pi r = r-2*pi fin tant que fin si afficher r
reste à régler
1. quelques cas particuliers
2. l'utilisation d'algobox
bonne suite
Merci pour l'ébauche, j'avais déjà, mais dépassement des boucles ... j'essai de vous mettre un de mes algo.
VARIABLES
X EST_DU_TYPE NOMBRE
Y EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE X
Y PREND_LA_VALEUR X
SI (Y<-Math.PI) ALORS
DEBUT_SI
TANT_QUE (X<-Math.PI) FAIRE
DEBUT_TANT_QUE
Y PREND_LA_VALEUR Y+(2*Math.PI)
FIN_TANT_QUE
FIN_SI
SINON
DEBUT_SINON
SI (X>Math.PI) ALORS
DEBUT_SI
TANT_QUE (X>Math.PI) FAIRE
DEBUT_TANT_QUE
Y PREND_LA_VALEUR Y-(2*Math.PI)
FIN_TANT_QUE
FIN_SI
FIN_SINON
AFFICHER Y
FIN_ALGORITHME
voila ce que j'ai fais, mais trop de boucles.
VARIABLES
X EST_DU_TYPE NOMBRE
Y EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE X
Y PREND_LA_VALEUR X
SI (Y<-Math.PI) ALORS
DEBUT_SI
TANT_QUE (X<-Math.PI) FAIRE
DEBUT_TANT_QUE
Y PREND_LA_VALEUR Y+(2*Math.PI)
FIN_TANT_QUE
FIN_SI
SINON
DEBUT_SINON
SI (X>Math.PI) ALORS
DEBUT_SI
TANT_QUE (X>Math.PI) FAIRE
DEBUT_TANT_QUE
Y PREND_LA_VALEUR Y-(2*Math.PI)
FIN_TANT_QUE
FIN_SI
FIN_SINON
AFFICHER Y
FIN_ALGORITHME
voila ce que j'ai fais, mais trop de boucles.
je ne comprends pas ta question, le pb est il - au niveau
- des entrées
- du traitement
- de la sortie
essaies d'illustrer par un exemple d'exécution
- des entrées
- du traitement
- de la sortie
essaies d'illustrer par un exemple d'exécution
Le probleme est que je ne sais pas coder ce bout qu'il me manque.
Il faudrait en sortie, donc avant d'afficher y, un autre traitement; Il me faut une valeur dans le genre 3Math.PI/2. (Par exemple)
Seulement, pour le moment nous n'avons eu qu'une séance sur PC ...
Merci de l'aide que vous m'apportez, vous immaginez pas combien j'en ai test.
Environ 8 algo, une heure par algo a se demander ce qu'il ne va pas ... x)
Et ce n'est pas fini ... Mais ca avance ! Donc merci =D
Il faudrait en sortie, donc avant d'afficher y, un autre traitement; Il me faut une valeur dans le genre 3Math.PI/2. (Par exemple)
Seulement, pour le moment nous n'avons eu qu'une séance sur PC ...
Merci de l'aide que vous m'apportez, vous immaginez pas combien j'en ai test.
Environ 8 algo, une heure par algo a se demander ce qu'il ne va pas ... x)
Et ce n'est pas fini ... Mais ca avance ! Donc merci =D
je ne comprends toujours pas ta question
- si tu mets en entrée 3*PI/2 l'algorithme renvoie -PI/2 (c'est la mesure principale)
- si tu veux 3*PI/2 en sortie, ce n'est plus la mesure principale mais la plus petite mesure positive dans ce cas, il faut 2 valeurs en sortie (la mp et la ppmp) et ajouter un test sur Y pour avoir la ppmp lorsque la mp est négative
ou alors tu veux dire autre chose ....
bon courage
- si tu mets en entrée 3*PI/2 l'algorithme renvoie -PI/2 (c'est la mesure principale)
- si tu veux 3*PI/2 en sortie, ce n'est plus la mesure principale mais la plus petite mesure positive dans ce cas, il faut 2 valeurs en sortie (la mp et la ppmp) et ajouter un test sur Y pour avoir la ppmp lorsque la mp est négative
ou alors tu veux dire autre chose ....
bon courage
Dans algobox, quand tu lances l'algorithme, il te demande X. C'est la ligne lire X.
Je lui donne une valeur en PI, par exemple : 32*Math.PI/3
il me ressort une valeur décimale mais je veux une valeur de la forme n*Math.Pi/3. (n ici est la variable).
Par la suite dans mon exercice je dois ajouter des conditions pour savoir combien de tours il y a eu en plus, ou en moins.
Merci d'avance.
Je lui donne une valeur en PI, par exemple : 32*Math.PI/3
il me ressort une valeur décimale mais je veux une valeur de la forme n*Math.Pi/3. (n ici est la variable).
Par la suite dans mon exercice je dois ajouter des conditions pour savoir combien de tours il y a eu en plus, ou en moins.
Merci d'avance.
SI Y<=-Math.PI ALORS