Commit 263b90b2 authored by BERNHARD Delphine's avatar BERNHARD Delphine
Browse files

Mise à jour des cours 1 et 2

parent eddea313
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -8,27 +8,26 @@
1. [Comment nommer une variable ?](#nommer)
1. [Quels sont les différents types de données ?](#types)
1. [Création et initialisation de variables](#création)
1. [Modification de la valeur d'une variable](#modification)
1. [Calculer avec Python](#calculer)
1. [Exercice : distribution de bonbons](#ex_distribution)
1. [Exercice : triathlon](#ex_triathlon)
1. [Exercice : conversion heures-minutes](#ex-conversion)
1. [Exercice : échange de valeurs](#ex-échange)
1. [Exercice : cherchez l'erreur](#ex_erreur)
1. [✏️ Exercice : distribution de bonbons](#ex_distribution)
1. [✏️ Exercice : triathlon](#ex_triathlon)
1. [✏️ Exercice : conversion heures-minutes](#ex-conversion)
1. [✏️ Exercice : échange de valeurs](#ex-échange)
## Notion de variable <a name="notion"></a>
## 1. Notion de variable <a name="notion"></a>
### Qu'est-ce qu'une variable ? <a name="variable"></a>
### 1.1. Qu'est-ce qu'une variable ? <a name="variable"></a>
Une variable permet de stocker des informations dans les programmes. On peut comparer les variables à des "boîtes", sur lesquelles on met des étiquettes, ce qui permet de les retrouver facilement. Elle peuvent stocker différents types d'informations : des nombres, du texte, des suites de nombres et de textes, etc.
Par exemple, dans le programme ci-dessous, il y a deux variables : `nom` et `pluriel`. La variable `nom` permet de stocker le nom commun masculin singulier entré par l'utilisateur. La variable `pluriel` stocke le pluriel du nom, obtenu en ajoutant 's' à la fin du mot.
Si l'utilisateur entre le mot "chien", les variables `nom` et `pluriel` contiennent les valeurs suivantes :
![variables_boites.PNG](attachment:variables_boites.PNG)
![Variables nom et pluriel](https://git.unistra.fr/dbernhard/pythonm1s1/-/raw/master/img/variables_boites.PNG?inline=false)
%% Cell type:code id: tags:
``` python
nom = input("Entrez un nom commun masculin singulier : ")
......@@ -42,25 +41,25 @@
Pour créer une variable, on indique le nom de la variable, puis le signe `=` (qui signifie "prend la valeur"), puis l'information qui sera stockée par la variable : on appelle cette opération l'**initialisation**.
%% Cell type:markdown id: tags:
### Comment nommer une variable ? <a name="nommer"></a>
### 1.2. Comment nommer une variable ? <a name="nommer"></a>
* Le nom d'une variable est une séquence de lettres (minuscules ou majuscules), utilisant éventuellement des chiffres ou le caractère souligné / underscore / sous-tiret (`_`).
* Il est recommandé d'utiliser des noms évocateurs et d'éviter les noms de variables trop longs.
* Il vaut mieux éviter les caractères accentués.
* Un nom de variable ne peut pas contenir d'espace : on peut le remplacer par `_`
* Le nom d'une variable ne peut pas commencer par un chiffre
### Quels sont les différents types de données ? <a name="types"></a>
Les variables peuvent correspondre à différents type de données, notamment :
### 1.3. Quels sont les différents types de données ? <a name="types"></a>
Les variables peuvent correspondre à différents types de données, notamment :
* des nombres entiers (comme `5`, `2386`, ou `-10`), de type **int** (pour **integer**)
* des nombres décimaux (comme `3.26`, `238.1`) , de type **float**
* des booléens (seulement deux valeurs possible : `True` et `False`), de type **boolean**
* des chaînes de caractères (comme `"Il fait beau aujourd'hui"`, `"1235 est un nombre entier"`, `"36"`, `"a"`, `"titi"`), de type **string**. Les chaînes de caractères sont entourées par des guillemets droits, simples ou doubles.
### Création et initialisation de variables <a name="création"></a>
### 1.3. Création et initialisation de variables <a name="création"></a>
Complétez le code ci-dessous pour initaliser et afficher les variables suivantes :
* variable `un_booleen` initialisée à `False`
* variable `une_chaine` initialisée à `"J'aime programmer"`
* variable `un_entier` initialisée à `20000`
* variante `un_float` initialisée à `222.222`
......@@ -84,11 +83,11 @@
Dans un programme, à quoi correspond une ligne qui commence par `#` ?
%% Cell type:markdown id: tags:
### Modification de la valeur d'une variable <a name="modification"></a>
### 1.4. Modification de la valeur d'une variable <a name="modification"></a>
Comme son nom l'indique, une variable peut représenter différentes valeurs au cours du déroulement d'un programme.
La modification de la valeur d'une variable se fait tout simplement en affectant une nouvelle valeur à la variable, en indiquant le nom de la variable, le signe '=' et la nouvelle valeur : c'est ce que l'on appelle l'opération d'**affectation**. L'affectation permet d'initialiser ou de modifier le contenu d'une variable.
Par exemple, si vous donnez l'instruction `une_chaine="Surtout en Python"`, la variable une_chaine aura comme nouvelle valeur `"Surtout en Python"`.
......@@ -97,11 +96,11 @@
L'affectation s'effectue dans l'ordre suivant : la valeur de l'expression figurant à droite du égal est calculée, puis le résultat obtenu est affecté à la variable située à gauche du signe égal.
Dans l'exemple, seule la valeur de la variable `new_float` est modifiée, `un_float` reste inchangé.
**Attention**
⚠️ **Attention**
1. `a = a + 3`
* N'a pas de sens en mathématiques
* Très utilisé en programmation : cela consiste à calculer a + 3 et stocker le résultat dans a.
1. `a + 3 = 5`
* N'a pas de sens en programmation : une expression mathématique ne peut pas prendre une valeur
......@@ -109,11 +108,11 @@
* Équivalent en mathématiques
* Différent en programmation
%% Cell type:markdown id: tags:
## Calculer avec Python <a name="calculer"></a>
## 2. Calculer avec Python <a name="calculer"></a>
Python peut-être utilisé comme une calculatrice.
On peut faire des additions avec le symbole `+`:
......@@ -155,11 +154,11 @@
print(c)
```
%% Cell type:markdown id: tags:
**Remplir le tableau ci-dessous avec les valeurs prises par les variables a, b et c :**
🖊️ **Remplir le tableau ci-dessous avec les valeurs prises par les variables a, b et c :**
| variables | a | b | c |
|:---|:---:|:---:|:---:|
|valeur initiale | 1 | 1 | 1 |
|a = 2 | | | |
......@@ -167,11 +166,11 @@
|c = a + b | | | |
|c = b - c | | | |
%% Cell type:markdown id: tags:
## Exercice : distribution de bonbons <a name="ex_distribution"></a>
## 3. ✏️ Exercice : distribution de bonbons <a name="ex_distribution"></a>
*Source : http://www.france-ioi.org/algo/task.php?idChapter=644&iOrder=5*
Une école souhaite effectuer une distribution de bonbons pour sa fête annuelle. Il y a 4 classes dans l'école, avec respectivement 25, 30, 27 et 22 élèves. 8 élèves sont absents le jour de la fête et il faut distribuer 3 bonbons par éléve. Ecrivez un programme qui calcule et affiche le nombre total de bonbons nécessaires.
......@@ -181,11 +180,11 @@
# Votre code
```
%% Cell type:markdown id: tags:
## Exercice : triathlon <a name="ex_triathlon"></a>
## 4. ✏️ Exercice : triathlon <a name="ex_triathlon"></a>
*http://www.france-ioi.org/algo/task.php?idChapter=644&iOrder=7*
Un ville souhaite organiser un triathlon avec un format un peu spécial. Le triathlon se déroulera sur 3 jours et chaque jour les athlètes devront effectuer les distances suivantes : 2 km de natation, 34 km de cyclisme et 6 km de course à pied.
......@@ -197,22 +196,22 @@
# Votre code
```
%% Cell type:markdown id: tags:
## Exercice : conversion heures-minutes <a name="ex-conversion"></a>
## 5. ✏️ Exercice : conversion heures-minutes <a name="ex-conversion"></a>
Ecrire un programme avec trois variables : l'une correspond au nombre d'heures (initialisée à `3`), l'autre au nombre de minutes (initialisée à `21`) et la dernière calcule le nombre total de minutes à l'aide de la formule : (nombre d'heures * 60 ) + nombre de minutes. Il faut ensuite afficher le total.
%% Cell type:code id: tags:
``` python
# Programme conversion heures-minutes
```
%% Cell type:markdown id: tags:
## Exercice : échange de valeurs <a name="ex-échange"></a>
## 6. ✏️ Exercice : échange de valeurs <a name="ex-échange"></a>
L'objectif est d'écrire un programme qui permet d'échanger les valeurs de deux variables `x` et `y`. `x` sera initialisé à 3 et `y` sera initialisé à 5. A la fin du programme, `x` vaudra 5 et `y` vaudra 3. On s'assurera que l'échange des valeurs a bien été effectué en affichant les valeurs.
**ATTENTION :** le programme doit avoir le même principe de fonctionnement quelles que soient les valeurs d'initialisation ! La solution n'est donc **pas** :
%% Cell type:code id: tags:
......@@ -229,61 +228,5 @@
%% Cell type:code id: tags:
``` python
# Programme échange de valeurs
```
%% Cell type:markdown id: tags:
## Exercice : cherchez l'erreur <a name="ex_erreur"/>
*Source : http://www.france-ioi.org/algo/task.php?idChapter=644&iOrder=13*
Lisez attentivement les programmes ci-dessous, sans chercher à les exécuter. Lesquels s'exécuteront sans problème et, à l'inverse, lesquels provoqueront des erreurs ?
**Programme 1**
```Python
nbBillesRouges = 4
nbBillesBleues = 6
print(nbBillesRouges + nbBillesBleues)
```
**Programme 2**
```Python
taille = 4
taille = 6
print(taille)
```
**Programme 3**
```Python
nbBillesBleues = 3
print(nbBillesRouges)
```
**Programme 4**
```Python
2 = 2
print(2)
```
**Programme 5**
```Python
âge1 = 6
âge2 = 4
âge2 = âge1
print(âge2)
```
**Programme 6**
```Python
prix = 10
prix - 2 = prix
print(prix)
```
**Programme 7**
```Python
prix = âge - 7
âge = 12
print(prix)
```
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment