Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Algobox

Posté par
lachat
02-02-15 à 23:39

Bonjour, mon professeur nous a demandé d'établir un programme qui jouerait 1000 fois 50 fois à pile ou face.
Sur les 50 fois, à chaque fois, il faut noté le nombre de fois où on a obtenu "pile" (compris entre 10 et 40 en principe).
J'ai établi le programme permettant de jouer 1000 fois 50 fois à pile ou face et qui me calcule à chaque le nombre de fois où j'ai obtenu pile:
cf. image.
Maintenant j'aimerais créer un tableau qui va de 10 à 40 et qui me mettent par exemple un tiret ou un "1" dans la case correspondant à P à chaque fois. Il y aurait donc à la fin 1000 tirets ou 1000 "1".
Je sais qu'il faut une variable de type liste pour établir un tableau en deux dimensions, mais je ne sais pas ce qu'il faut mettre pour rentrer les valeurs dedans ni même pour l'afficher... Je sais juste aussi qu'on peut ajouter une valeur au tableau en rentrant dans rang du terme : Li*(nombre de colonnes)+col.
Voilà merci d'avance si quelqu'un peut m'aider à trouver une solution.

Algobox

Posté par
mathafou Moderateur
re : Algobox 02-02-15 à 23:54

Bonjour,

Citation :
un tableau en deux dimensions
avec Algobox ça va être difficile !!

pas de déclaration dynamique de variables, les variables sont statiques, et donc on ne peut pas créer une Liste d'autre chose que de valeurs (une liste de chaines ou une liste de listes ça n'existe pas en Algobox, sauf acrobaties illégales pour contourner les contrôles de syntaxe de Algobox et lui faire exécuter "en douce" du code JavaScript)
il faut faire ça autrement qu'avec un tableau à 2 dimensions !

en vrai si on veut obtenir un "histogramme" des valeurs de P obtenues, ce n'est pas "un tiret" qu'il faut mettre où que ce soit, mais juste créer un tableau T de 50 valeurs numériques
T de type LISTE, en algobox.

et on augmente de 1 la valeur de T[P] à chaque fois qu'on obtient une valeur de P (qu'on à fait 50 tirages)
Il faut initialiser explicitement chacune de ces valeurs à 0 avant de commencer

Posté par
lachat
re : Algobox 03-02-15 à 00:31

Merci d'abord pour cette réponse.
En revanche j'ai bien compris ce que vous me proposez de faire mais comment l'exécuter sur Algobox ??

Posté par
mathafou Moderateur
re : Algobox 03-02-15 à 00:53

j'ai presque tout écrit !!

modifier ton algorithme en
1) déclarant une variable T de type LISTE

2) initialisant tous les éléments de cette liste à 0 par un boucle avant de commencer ton algorithme
(il parait que les variables de Algobox sont peut être initialisées à 0 "automatiquement", entrainant une habitude de paresse pour la suite, en tout cas ce n'est pas dans la spécification de Algobox, cette initialisation automatique, donc ...)

3) à chaque fin de ta boucle "pour J" (avant son fin_pour) ajouter une ligne :
T[P] prend la valeur T[P]+1

4) à la toute fin de ton algorithme afficher, par une boucle "pour i", toutes les valeur des T[i]

Posté par
lachat
re : Algobox 03-02-15 à 16:33

Il me dit erreur de calcul pour le T[P] PREND LA VALEUR T[P] +1 ..

Posté par
mathafou Moderateur
re : Algobox 03-02-15 à 18:21

moi, non.

tu as dû taper autre chose que ce qu'il faut (des espaces au lieu des _, au lieu de cliquer sur le bouton "AFFEXTER valeur à variable" et de remplir correctement le panneau de dialogue)
on déclarer la variable T pas de type LISTE
ou oublié d'initialiser tous les T[i] à 0
ou erreur majuscule au lieu de minuscule ou le contraire
ou va savoir quoi

VARIABLES
T EST_DU_TYPE LISTE
P EST_DU_TYPE NOMBRE
A EST_DU_TYPE NOMBRE
I EST_DU_TYPE NOMBRE
J EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
// initialisation de tous les T[i] à 0
POUR I ALLANT_DE 1 A 50
DEBUT_POUR
T[I] PREND_LA_VALEUR 0
FIN_POUR

// 1000 fois 50 tirages
POUR J ALLANT_DE 1 A 1000
// etc comme avant
...
T[P] PREND_LA_VALEUR T[P]+1
FIN_POUR // celui du "POUR J"

// affichage des 50 valeurs de T[i]
POUR I ALLANT_DE 1 A 50
DEBUT_POUR
AFFICHER I
AFFICHER " : "
AFFICHER T[I]
FIN_POUR
FIN_ALGORITHME


résultat :
1 : 0
...
15 : 0
16 : 3
17 : 11
18 : 12
19 : 24
20 : 48
21 : 49
22 : 75
23 : 99
24 : 120
25 : 104
26 : 111
27 : 75
28 : 80
29 : 77
30 : 50
31 : 29
32 : 17
33 : 9
34 : 4
35 : 2
36 : 1
37 : 0
38 : 0
...
50 : 0



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 1742 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 !