Python en Mathématiques - Niveau 2

De Python vers un tableur

Création d'un fichier csv

L'exemple suivant montre comment créer simplement un fichier csv (que l'on pourra ensuite ouvrir avec un tableur) :


import csv

# On ouvre (crée) un fichier CSV dans lequel on va écrire (w pour "write")
fichier = open('resultat.csv', encoding="utf-8", 'w', newline='')
ecrire = csv.writer(fichier)

ecrire.writerow(['Nom', 'Prénom', 'Note 1', 'Note 2'])
ecrire.writerow(['Zorglub', 'Pacôme', '18', '20'])
ecrire.writerow(['Macron', 'Junior', '2', '0'])

fichier.close()

La somme de trois dés

  1. Écrire une fonction Python nommée sommeTroisDes qui simule le lancer de trois dés et renvoyant la somme des trois faces obtenues.
  2. Écrire un programme Python lançant n fois les trois dés et calculant la fréquence obtenue pour chacune des sommes possibles.
  3. Inscrire maintenant le tout (les lancers, les sommes, les fréquences) dans un fichier csv.
  • Question 1
  • Question 2
  • Question 3

			
			

			
			

import csv
from random import randint

##----- Définition des Fonctions -----##
def sommeTroisDesEcrire() :
	a = randint(1,6)
	b = randint(1,6)
	c = randint(1,6) 
	s = a + b + c
	ecrire.writerow([str(a), str(b), str(c), str(s)])
	return s

def echantillonEcrire(taille) :	
	sommes = [ 0 for i in range(0,19) ]
	for i in range(taille) :
		s = sommeTroisDesEcrire()
		sommes[s] += 1
	sommes = [ x/taille  for x in sommes ]
	
	ecrire.writerow([''])
	ecrire.writerow([str(k) for k in range(3,19)])
	ecrire.writerow([str(sommes[k]) for k in range(3,19)])

##----- Écrire dans le fichier csv -----##
with open('resultat.csv', 'w', encoding="utf-8", newline='') as fichier :
	ecrire = csv.writer(fichier)

	ecrire.writerow(['Dé 1', 'Dé 2', 'Dé 3', 'Somme'])
	echantillonEcrire(50)