Bonjour
La commande floor permet d'obtenir la partie entière d'un nombre ; supposons que la variable a ait la valeur 3,1415926535
a. Donner la valeur de floor(a*10).
b. En déduire la commande pour obtenir la valeur par défaut de a au dixième près ; au centième près.
2 La commande a % b renvoie le reste de la division euclidienne de a par b :
a. Quelles peuvent être les valeurs de a %2 ? de 2 % a ?
b. A l'aide d'une structure conditionnelle, écrire un algorithme demandant la saisie d'une valeur puis qui affiche les phrases “ce nombre est pair” ou “ce nombre est impair” suivant les cas.
3. La commande sqrt(2) renvoie la racine carré du nombre 2 :
a. Ecrire un algorithme demandant à l'utilisateur quatre nombres représentant les coordonnées de deux points, et renvoyant la distance séparant ces deux points.
b. Modifier l'algorithme pour qu'il affiche la valeur par défaut de cette distance au dixième près.
Mon avancement:
1)a)la valeur de floor(a*10) est 31
2) valeur de a%2 est 1.1415927 et la valeur 2%a est 2
Merci d'avance
Bonjour,
1a) OK.
1b) Quelle est la valeur par défaut de "a" au 10ème près ? au 100ème près ?
En connaissant la réponse, en t'aidant de la question 1a, tu peux facilement y répondre.
2a) Ok
2b) A ton avis, quelle est le résultat de a%2 si a est un nombre pair ? impair ?
En connaissant la réponse à cela, tu pourras ainsi commencer à définir la structure de ton algorithme.
3a) Il faut se rappeler du cours. Quelle est la formule qui te permet de calculer la distance entre 2 points à l'aide des coordonnées ?
1b)Donc sans la commande floor. La valeur par défaut de "a" au 10ème près 31.4 au 100ème près 31.41
2b) si a est pair le résultat est pair et inversement pour impair.
3a) sqrt AB (xB-xA)²+(yB-xA)²
3a)
Variables xA,xB,yA,yB,D: nombres réels
Début
Saisir xA
Saisir xB
Saisir yA
Saisir yB
D ←− sqrt AB (xB-xA)²+(yB-xA)²
Afficher D
Fin
Je me suis trompé dans la fin c est pas ça D ←− sqrt AB (xB-xA)²+(yB-xA)² mais ça D ←− sqrt AB (xB-xA)²+(yB-yA)²
Reprenons :
1b) Non !! La valeur par défaut de "a" au 10ème près est 3,1 et au 100ème près est 3,14. Je te rappelle que a = 3.1415926535.
Or on te demande "en déduire" la commande à entrer...
Bien sûr qu'il va falloir utiliser la commande floor de la question 1a !!
Or tu sais qu'en tapant la commande "floor(a*10)" cela te renvoie 31.
Donc à ton avis, que devras-tu taper comme commande pour renvoyer 3.1 ? (ce n'est qu'un simple calcul en utilisant la commande de la question 1a !!)
2b) Non, je parle du reste de la division euclidienne !!
Que peux-tu dire du reste d'un nombre pair "a" divisé par 2 ? d'un nombre impair "a" divisé par 2 ?
3a) Attention à ta notation !! C'est AB = sqrt[(xB-xA)²+(yB-yA)²]
Tu peux déjà commencer cet algorithme : définis les variables d'entrée et la structure de l'algorithme.
Oui j'ai vu après pour les parenthèses.
Pour la question 1b) c est pas floor(a*10)/10 et floor(a*10)/100
1b) OK pour la valeur par défaut au 10ème près.
Par contre pour la valeur par défaut au 100ème près, non !! Attention à la commande floor, ce n'est pas floor(a*10) cette fois-ci !! Mais...
Très bien.
Donc la question 1 est traitée.
Il reste à traiter la question 2b) : Que peux-tu dire du reste d'un nombre pair "a" divisé par 2 ? d'un nombre impair "a" divisé par 2 ?
Voilà !!
Donc tu en déduis que si le reste d'un nombre "a" par 2 est égal à 0, (en langage commande cela donnerait a%2==0) alors forcément ce nombre est pair !!
Dans le cas contraire, il est forcément impair !!
Ainsi, tu peux commencer ton algo, avec une structure (SI...ALORS / SINON).
1 VARIABLES
2 n EST_DU_TYPE NOMBRE
3 q EST_DU_TYPE NOMBRE
4 r EST_DU_TYPE NOMBRE
5 DEBUT_ALGORITHME
10 LIRE n
11 DEBUT_SI
12 q PREND_LA_VALEUR floor(n/2)
13 r PREND_LA_VALEUR n-2*q
14 AFFICHER n
15 SI (r==0) ALORS
16 DEBUT_SI
17 AFFICHER " est pair"
18 FIN_SI
19 SINON
20 DEBUT_SINON
21 AFFICHER " est impair"
22 FIN_SINON
23 FIN_ALGORITHME
Pourquoi appeler ta variable "n" ? Tu aurais pu reprendre la notation de l'énoncé !! A savoir utiliser la variable "a" !!
Concernant l'algorithme, il y avait beaucoup plus simple !! En s'aidant de la question 2a) !!
Si a%2==0 (si le reste de a par 2 est égal à 0), alors ce nombre est pair !!
Sinon il est impair.
Tout simplement !!
Sinon, il te reste la question 3b).
La modification de l'algorithme n'est pas compliquée.
Tu as vu comment afficher la valeur d'un nombre par défaut au dixième près (voir question 1b)
Il te suffira tout simplement de modifier la formule de la distance, avec l'ajout de la commande floor.
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :