Skip to content
Extraits de code Groupes Projets
Valider ffb020cd rédigé par Martin Delcourt's avatar Martin Delcourt
Parcourir les fichiers

Added solutions to chapter_3

parent 7bcfb977
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -7,7 +7,6 @@ Débuts chaotiques
Genève. Lundi 13 mars 1989. Une page de l’histoire s’écrit au CERN, l’Organisation européenne pour la recherche nucléaire. L’informaticien britannique Tim Berners-Lee dépose dans le bureau de son supérieur un document de quelques pages, sobrement intitulé Gestion de l’information : proposition. Tim Berners-Lee constate qu’il est parfois difficile d’échanger et d’accéder aux innombrables publications scientifiques éparpillées dans le monde entier. Pour y parvenir, l’article suggère l’association de deux technologies qui existaient à l’époque.
Le CERN est aujourd'hui considéré comme le berceau du World-Wide Web.
Le CERN est aujourd'hui considéré comme le berceau du World-Wide Web. - © J. Covolo
La première est l’internet, inventé en 1974 par les américains Vint Cerf et Bob Khan. Il permet à des ordinateurs de s’échanger très rapidement des informations au moyen du réseau téléphonique, quel que soit leur emplacement.
......@@ -227,7 +226,7 @@ C'est une découverte scientifique majeure dans la compréhension de l'univers e
C’était donc l’ambiance des grands jours le mercredi 4 juillet 2012 au département physique de la Faculté des sciences de l'UMons... Si la découverte du boson de Brout-Englert-Higgs laisse le commun des mortels assez indifférent, ici, on parle d'une avancée majeure.
Il faut dire que cela fait près de cinquante ans que l'on cherchait à prouver l'existence de cette particule qui joue un rôle important dans la compréhension de la matière. Cette fois donc ça y est, il a été découvert au LHC.
Il faut dire que cela fait près de cinquante ans que l'on cherchait à prouver l'existence de cette particule qui joue un rôle important dans la compréhension de la matière. Cette fois donc ça y est, il a été découvert au LHC.
Le LHC, c'est le plus grand accélérateur de particules du monde, il se trouve à Genève au CERN, le Centre Européen de Recherche Nucléaire. Evelyne Daubie y va régulièrement, elle fait partie des milliers de physiciens qui se relaient pour suivre des expériences.
......
n_dim = int(input("Nombre de dimensions : "))
u = [float(input("u_{0} = ".format(i))) for i in range(n_dim)]
v = [float(input("v_{0} = ".format(i))) for i in range(n_dim)]
print("Somme : ")
for i in range(n_dim):
print (u[i]+v[i])
prod_scal = 0
for i in range(n_dim):
prod_scal += u[i]*v[i]
print("Produit scalaire : {0}".format(prod_scal))
if n_dim == 3:
prod_vec = [ u[1]*v[2] - u[2]*v[1],
-u[0]*v[2] + u[2]*v[0],
u[0]*v[1] - u[1]*v[0]
]
print("Produit vectoriel : w = ({0}, {1}, {2})".format(prod_vec[0],prod_vec[1],prod_vec[2]))
prod_scal = 0
for i in range(n_dim):
prod_scal += prod_vec[i]*u[i]
print("u.w = {0}".format(prod_scal))
prod_scal = 0
for i in range(n_dim):
prod_scal += prod_vec[i]*v[i]
print("v.w = {0}".format(prod_scal))
numbers = []
last = 0
while last >= 0:
last = int(input("Entrez un nombre : "))
numbers.append(last)
numbers = numbers[:-1]
print ("Les nombres sont {0}:".format(numbers))
# Brute-force.
# Each step, find the minimum of the vector and place it in the
# first position.
for index in range(len(numbers)):
minimum = numbers[index]
minimum_index = index
for i in range(index+1,len(numbers)):
if numbers[i] < minimum:
minimum = numbers[i]
minimum_index = i
numbers[minimum_index] = numbers[index]
numbers[index] = minimum
print ("Les nombres tries : {0}".format(numbers))
if len(numbers)%2 == 0:
print ("La medianne est : {0}".format(0.5*(numbers[int(len(numbers)/2)]+numbers[int(len(numbers)/2-1)])))
else:
print ("La medianne est : {0}".format(numbers[int(len(numbers)/2)]))
moyenne = 0
for x in numbers:
moyenne += x
moyenne/=len(numbers)
print("La moyenne est : {0}".format(moyenne))
variance = 0
for x in numbers:
variance += (x-moyenne)**2
variance/=len(numbers)
print("La variance est : {0}".format(variance))
txt="Les objectifs de Python en font un langage pedagogique ideal.C'est un langage general-purpose:il s'adapte a toutes les applications"
seperatorList = " ,.;-'\":\n/\\?+()’!°"
n_words = 0
words = []
while len(txt) > 0:
seperation = len(txt)
for sep in seperatorList:
sepPos = txt.find(sep)
if sepPos >= 0 and sepPos < seperation:
seperation = sepPos
if seperation > 0:
n_words+=1
txt=txt[seperation+1:]
elif seperation == 0:
txt=txt[seperation+1:]
else:
words.append(txt)
txt=""
print("Il y a {0} mots dans la phrase.".format(n_words))
from corpus import texte
seperatorList = " ,.;-'\":\n/\\?+()’!°"
word_count = {}
while len(texte) > 0:
seperation = len(texte)
for sep in seperatorList:
sepPos = texte.find(sep)
if sepPos >= 0 and sepPos < seperation:
seperation = sepPos
if seperation > 0:
word = texte[:seperation].lower()
if word in word_count.keys():
word_count[word] +=1
else:
word_count[word] = 1
texte=texte[seperation+1:]
elif seperation == 0:
texte=texte[seperation+1:]
else:
words.append(texte)
texte=""
sorted_words = []
for word,count in word_count.items():
if len(word) > 3:
sorted_words.append([count,word])
sorted_words.sort(reverse = True)
for count,word in sorted_words[:50]:
print ("{0:20} apparaît {1} fois".format(word,count))
n_lines = int(input("Combien de lignes ? "))
previous_line = [1]
print ("{0:5} ".format(1))
for line in range(1,n_lines):
new_line = [1]
for i in range(line-1):
new_line.append(previous_line[i+1]+previous_line[i])
new_line.append(1)
txt_to_print = ""
for entry in new_line:
txt_to_print += "{0:5} ".format(entry)
print (txt_to_print)
previous_line = new_line
n_lines = 8
n_col = 15
snake = [[1,1]]
apple = [n_lines - snake[-1][0] - 1 , n_col - snake[-1][1] - 1]
#Positions où mettre la pomme si la case prévue est déjà occupée.
#On commence par des points proches des quatres coins
#Puis, on met toutes les autres cases.
default_apple_positions = [[1,1],[n_lines-1,n_col-1], [1,n_col-1],[n_lines-1, 1]]
for i in range(n_lines):
for j in range(n_col):
default_apple_positions.append([i,j])
game_over = False
while not game_over:
# Affichage du tableau de jeu
print ((n_col+2)*"-")
for line in range(n_lines):
txt_to_print = "|"
for col in range(n_col):
if [line,col] in snake:
txt_to_print += "@"
elif [line,col] == apple:
txt_to_print += "*"
else:
txt_to_print += " "
print(txt_to_print+"|")
print ((n_col+2)*"-")
# Demande instruction :
move = ""
while not move in ["z","s","q","d"]:
move = input("move : ")
new_head_position = [snake[-1][0], snake[-1][1]]
if move == "z":
new_head_position[0] -=1
elif move == "s":
new_head_position[0] +=1
elif move == "q":
new_head_position[1] -=1
elif move == "d":
new_head_position[1] +=1
if new_head_position in snake or new_head_position[0] >= n_lines or new_head_position[1] >= n_col or new_head_position[0] < 0 or new_head_position[1] < 0 :
game_over = True
break
snake.append(new_head_position)
if not new_head_position == apple:
snake = snake [1:]
else:
#Trying to place apple..
apple = [n_lines - snake[0][0] - 1 , n_col - snake[0][1] - 1]
if apple in snake:
for apple_candidate in default_apple_positions:
if not apple_candidate in snake:
apple = apple_candidate[:]
break
if apple in snake:
game_over = True
if len(snake) == n_lines*n_col:
print ("Congrats ! You have succesfully filled the grid ! Score : {0}".format(len(snake)))
else:
print ("Better luck next time... Score : {0}/{1}".format(len(snake),n_lines*n_col))
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter