Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

algorithme seconde

Posté par
mel0109
22-02-18 à 14:29

Bonjour,

Pourriez vous m'aider à réaliser ce dm ?
Voici l'énoncé :

Variables : A liste de nombres réels [a][/1], [a][/2]
                         n, q, r entiers naturels
                         x : nombre réel

Entrée : A série statistique ordonnée croissante
                  Affecter à n la longueur de A ( je ne comprends pas l'intitulé ? )

Traitement : Affecter à q le quotient de la division euclidienne de n par 4
                                           Affecter à r le reste de la division euclidienne
                                           Si r =0, alors affecter à x la valeur [a][/q]
                                           Sinon affecter à x la valeur [a][/q+1]
                                           Fin de Si

Sortie : afficher x


Je dois faire fonctionner l'algorithme avec les valeurs suivantes :
-2,4
0
3,14
5
5,1
7
6
7,5
8
10
13
16
18,5

Pourriez vous m'aiguiller ?

Posté par
Kernelpanic
re : algorithme seconde 22-02-18 à 14:42

Bonjour,

Citation :
Variables : A liste de nombres réels [a][/1], [a][/2]


je n'ai jamais vu une déclaration de liste de cette manière en pseudo-langage, peux-tu m'expliquer ce que représente [/1] par exemple s'il te plait ?

Qu'as-tu essayé ? Où bloques-tu ?

Posté par
mel0109
re : algorithme seconde 22-02-18 à 14:45

a avec indice 1, a indice 2 etc ...

Pour -2,4 je ne sais pas comment affecter à n la longueur de A sachant que -2,4 n'est pas un entier naturel cela serait 2 ????

Pour q : 2/4 donne q = 0 ? r = 2 ?

Posté par
Kernelpanic
re : algorithme seconde 22-02-18 à 14:56

Alors si j'ai bien compris le code, A = [-2][/1],[4][/2] pour -2,4 ? (Tu m'excuseras c'est juste que j'ai pas mal de mal avec ce pseudo langage).

Si c'est juste, alors la longueur de ta liste est de 2 (taille = indice max dans ton cas), donc n est initialisé à 2.

q = 0,
r = 2,
x = -2

et ça affiche -2 au final si et seulement si j'ai bien compris comment fonctionne ta liste.

Posté par
Kernelpanic
re : algorithme seconde 22-02-18 à 14:59

En réalité ma réponse n'a pas de sens, car si tu divises par 4 tu obtiendras toujours q = 0. Que représente ta liste ? Tu stockes quelles valeurs ?

Posté par
mel0109
re : algorithme seconde 22-02-18 à 15:03

désolée mais je n'ai rien compris du tout

A liste de nombre réels a(avec noté 1 en indice ), a(avec noté 2 en indice ) etc

Posté par
Kernelpanic
re : algorithme seconde 22-02-18 à 15:13

Okkk j'ai finalement compris ton algorithme.

Citation :
Variables : A liste de nombres réels [a][/1], [a][/2]
                         n, q, r entiers naturels
                         x : nombre réel

Entrée :

A série statistique ordonnée croissante
(tu vas rentrer dans chaque 'case' de ta liste -2,4, 0 etc... ce qui va donner [-2,4][/1], [0][/2] etc...)
                  
Traitement :

Affecter à n la longueur de A (la longueur de A correspond au nombre de valeurs que contient ta liste)
Affecter à q le quotient de la division euclidienne de n par 4
Affecter à r le reste de la division euclidienne

Si r =0, alors :
    affecter à x la valeur [a][/q]
Sinon :
    affecter à x la valeur [a][/q+1]
Fin de Si

Sortie :
    afficher x


As-tu compris ?

Posté par
Kernelpanic
re : algorithme seconde 22-02-18 à 15:14

N'oublie pas que A est une liste statistique ordonnée croissante, tu dois donc rentrer les valeurs de ta liste dans l'ordre croissant.

Posté par
mel0109
re : algorithme seconde 22-02-18 à 15:27

Je ne suis pas certaine de tout avoir compris

Pour  A = 0
n = 0
q = 0
r = 0
x = ?

Pour A = 3,14
n=3
q = 0
r = 3
x = ?

Posté par
Kernelpanic
re : algorithme seconde 22-02-18 à 15:34

Tu as sûrement une mauvaise représentation de A.

A est une liste de réel, elle se présente en réalité sous la forme :

A = {a, b, c, d, e, f, ...} où a,b,c,d,e,f sont des réels.

Donc quand on te demande en entrée de remplir ta liste, tu vas la remplir avec :

-2,4
0
3,14
5
5,1
7
6
7,5
8
10
13
16
18,5 (Attention, ta liste est censée être ordonnée et croissante, pense bien à trier tes valeurs dans l'ordre croissant)

et ainsi tu auras A = {-2,4, 0, ...}.

Posté par
Kernelpanic
re : algorithme seconde 22-02-18 à 15:35

Citation :
et ainsi tu auras A = {-2,4 ; 0, ...}
ce sera plus lisible pour toi.

Posté par
mel0109
re : algorithme seconde 22-02-18 à 15:38

1) Faire fonctionner l'algorithme et compléter le tableau suivant :

/Variable/n/q/r/x/
/Valeur /  /  /  /  /

a) En entrant A= (-2,4;0;3,14;5;5,1;7)
b) En entrant A= (6;7,5;8;10;10;13;16;18,5)

Question mal recopiée

pour le a)  : n = 6
                       q = 1
                       r = 2
                       x = 3 ?

Posté par
mel0109
re : algorithme seconde 22-02-18 à 15:40

pour la question b


n = 8
q = 2
r = 0
x = 7,5 ?

Posté par
Kernelpanic
re : algorithme seconde 22-02-18 à 15:45

Citation :
pour le a)  : n = 6
                       q = 1
                       r = 2
                       x = 3 ?


Non pour le x. On te demande dans le cas où r 0 que x prenne la valeur de la (q+1) ème valeur de ta liste. Ici q = 1, tu regardes l'indice (q+1=)2 de ta liste -> x = 0 ! Car dans ce que tu m'as dit (à moins que tu aies mal recopié l'énoncé), la première valeur de ta liste est stockée à l'indice [/1] et non [/0].

Posté par
mel0109
re : algorithme seconde 22-02-18 à 18:01

Si on récapitule pour la question

a) n = 6
     q = 1
     r = 2
     x = 0


b) n=8
    q=2
    r = 0
    x = 7,5


L'indicateur statistique serait-il le 1er quartile ?

en tout cas merci de l'aide je pense avoir compris



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 !