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 ...@@ -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. 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.
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. 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 ...@@ -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. 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. 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