Vous êtes sur la page 1sur 43

Informatique 1

Introduction à la programmation
Présentation
Mission 1 : introduction

Kim Mens Siegfried Nijssen Charles Pecheur


Objectifs du cours d’informatique
A l’issue de ce cours,
chaque étudiant sera en mesure de :
• utiliser les outils informatiques
• utiliser à bon escient les éléments d'un langage de
programmation tel que Python,
• concevoir et réaliser des programmes corrects
– de complexité moyenne
– avec méthode et rigueur
• démontrer une bonne compréhension des concepts et de la
méthodologie de la programmation orientée-objet,
• utiliser l’informatique pour le projet de quadrimestre
Comment atteindre ces objectifs ?
• Apprentissage actif
– Par groupes
– A partir de onze problèmes

• Permet d’acquérir
– le savoir : par l’étude et la pratique
– le savoir-faire : par la pratique uniquement
Organisation du cours
• Un problème par semaine
– Chaque problème est découpé en phases

Cours oral
Introduction à la matière
liée au problème
Introduction
Les titulaires
• Pr. Charles Pecheur
– Charles.Pecheur@uclouvain.be
– Première partie du cours

• Pr. Siegfried Nijssen


– Siegfried.Nijssen@uclouvain.be
– Deuxième partie du cours

• Pr. Kim Mens


– Kim.Mens@uclouvain.be
– Troisième partie du cours
Organisation du cours (2)
• Un problème par semaine
– Chaque problème est découpé en phases

Apprentissage
• Lecture du livre
• Réponses aux questions
Apprentissage
Livre de référence
How to Think Like a Computer Scientist –
Learning with Python 3 (RLE)
by Peter Wentworth, Jeffrey Elkner,
Allen B. Downey, and Chris Meyers

• En anglais
• Open-source, disponible gratuitement
• Version adaptée pour le cours disponible en ligne
https://syllabus-interactif.info.ucl.ac.be/index/info1-theory
Manuel d'exercices

Disponible en ligne
https://syllabus-interactif.info.ucl.ac.be/index/info1-exercises

Enoncés des 11 missions


• matière à lire
• exercices de démarrage (interactifs)
• réalisation
• exercices complémentaires
Organisation du cours (3)
• Un problème par semaine
– Chaque problème est découpé en phases

Bilan intermédiaire
Séance tutorée
Réponses aux questions
Bilan
intermédiaire
Tuteurs et assistants
Organisation du cours (4)
• Un problème par semaine
– Chaque problème est découpé en phases

Réalisation
Ecriture d’un programme
en binômes
Réalisation Soumission au tuteur
Organisation du cours (5)
• Un problème par semaine
– Chaque problème est découpé en phases

Bilan final
Séance tutorée
Feedback du tuteur
Bilan final Question de bilan
Organisation du cours (6)
• Un problème par semaine
– Chaque problème est découpé en phases

Restructuration
Cours oral
Restructuration de la matière
Restructuration
vue durant la semaine
Horaire LINFO1101
Lu Ma Me Je Ve
8:30
9:30
10:45 APP Cours
11:45

14:00
15:00
16:15 APP remise trav. 16:00
17:15

SINF
Evaluation
• Interrogation à mi-quadrimestre (Lundi S7)
– Ecrit sur papier
• Examen en janvier
– Sur ordinateurs (Inginious)

Note = 1/3 Interro + 2/3 Examen si Interro > Examen


3/3 Examen si Examen >= Interro

• Les missions ne sont pas cotées


MISSION 1 : INTRODUCTION
Python

• Langage de programmation Python

• L'interpréteur Python

Python 3.6.4
>>> ▮

Invite (prompt)
2+2 = 4
• Le premier calcul

2+2

Python 3.6.4
>>> 2+2
4
>>>
Hello, world
• Le premier programme

print("Hello, World!")

Python 3.6.4
>>> print("Hello, World!")
Hello, World!
>>>
Countdown.py
# Affiche un compte à rebours.
# Décompte à partir de 5. Dans un fichier
# Charles Pecheur 5 septembre 2018 Countdown.py
i = 5 # valeur de départ du décompte
while i >= 0:
if i != 0:
print(i)
else:
print("Decollage") >>> %Run Countdown.py
i = i - 1 5
print("Reussi") 4
3
2
1
Decollage
Reussi
>>>
Les commentaires
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
Ignorés par Python mais
print("Decollage") nécessaires pour
i = i - 1 les humains !
print("Reussi")
Terminologie: mots réservés
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")

False class finally is return


None continue for lambda try
True def from nonlocal while
and del global not with
as elif if or yield
assert else import pass
break except in raise
Terminologie: identifiants
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")
Variables
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")
Mémoire
Variables
• Identifie une zone mémoire
i 5

• Affectation : i = 5 i prend la valeur 5


i = i - 1 PAS i égale 5
– la première crée la variable

• Utilisation : while i >= 0


print(i)
i = i - 1
Instructions
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i) Affiche un message à l’écran
else:
print("Decollage")
i = i - 1
print("Reussi")

Une instruction produit un effet


Instructions simples
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")

Effectuent une opération


Instructions de contrôle
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")

Contrôlent l'exécution du programme


Expressions
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")

Une expression calcule une valeur


Conditions
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")

Une condition calcule une valeur logique


VRAI (True) ou FAUX (False)
C'est une expression !
Instruction conditionnelle
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")
Instruction conditionnelle
if condition:
#
# Faire quelque chose
# condition
True False
else:
#
# Faire autre chose Quelque Autre
# chose chose
# Indentation!
# La suite
#
La suite
Instruction conditionnelle
if condition:
#
# Faire quelque chose
# condition
# True
# La suite False
# Quelque
chose

La suite
Instruction de boucle
# Affiche un compte à rebours.
# Décompte à partir de 5.
# Charles Pecheur 5 septembre 2018

i = 5 # valeur de départ du décompte


while i >= 0:
if i != 0:
print(i)
else:
print("Decollage")
i = i - 1
print("Reussi")
Instruction de boucle
while condition:
#
# Faire quelque chose
#
# Indentation!
# La suite condition
# False
True

Quelque
chose La suite
Thonny
Moodle
INGInious
Enquête initiale
• Pour mieux vous connaître
• Sur le site Moodle
– avec identifiant
• Très rapide
• Statistiques des années précédentes

N'OUBLIEZ PAS !
La matière

La matière faisant l'objet de l'examen comprend


tout ce qui a été dit ou montré au cours
oralement, sur écran ou à l'aide d'autres media,
et ne se limite donc exclusivement
au texte du "support de cours"

• Cours = cours magistral + APP


A Faire dès que possible
Si ce n'est déjà fait, d'urgence
¨Obtenir son identifiant UCL (inscription)
Ensuite
¨S'inscrire au cours sur Moodle et INGInious
¨Répondre à l'enquête initiale sur iCampus
¨Faire la mission 1 "mise en route"
¨Lire le syllabus (disponible en ligne via Moodle)
¨QCM, questions démarrage, programme
Prochaines échéances
• Lundi 16h15
– Séance tutorée intermédiaire Mission 1
• Mercredi 16h00
– Avoir terminé la phase de réalisation de la mission 1
et soumis le code sur INGInious
• Jeudi 10h45
– Séance tutorée finale Mission 1
• Vendredi 10h45 (SUD 11)
– Cours restructuration mission 1,
introduction mission 2

SINF
A faire tout de suite
• Prendre l'énoncé E3 pour l'APP0

• Vérifier la liste des groupes


– affichée à la sortie

SINF

Vous aimerez peut-être aussi