Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions docs/tp/algorithmes/exercices/01-introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,7 @@ level: 4
order: 1
---

# Partie 1

Ctte série d'exercices d'introduction vous permettra de mettre en pratique les notions suivantes :
Cette série d'exercices d'introduction vous permettra de mettre en pratique les notions suivantes :
- Les variables
- Les chaines de caractères
- Les calculs mathématiques simples
Expand Down
117 changes: 44 additions & 73 deletions docs/tp/algorithmes/exercices/02-structures-conditionnelles.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,13 @@ level: 4
order: 2
---

# Partie 2

Cette partie vous permettra de mettre en pratique les notions suivantes :
- Les structures conditionnelles


## Exercice 2.1 : Positif ou négatif ?

Écrire un algorithme qui demande à l'utilisateur de saisir **1** nombre entier et l'informe ensuite si le nombre est positif ou négatif.
Écrire un algorithme qui demande à l'utilisateur de saisir **1** nombre entier et l'informe ensuite si le nombre est **positif** ou **négatif**.

Pour information, le nombre `0` est considéré **positif**.

Expand All @@ -21,99 +19,72 @@ Pour information, le nombre `0` est considéré **positif**.

Écrire un algorithme qui demande à l'utilisateur de saisir **2** nombres entiers et l'informe ensuite si leur **produit** est positif ou négatif.

## Exercice 2.3 : Tri de nombres

## Exercice 2.3 : Ma catégorie au Football

Écrire un algorithme qui demande à l'utilisateur de saisir un âge et l'informe ensuite à quelle catégorie il appartient :
Lire 2 nombres entier `A` et `B` puis les afficher dans l'ordre croissant.

- **Trop jeune** : Moins de 5 ans
- **Débutant** : De 5 à 6 ans
- **Poussin** : De 7 à 8 ans
- **Benjamin** : De 9 à 10 ans
- **Pupille** : De 11 à 12 ans
- **Minime** : De 13 à 14 ans
- **Cadet** : De 15 à 16 ans
- **Junior** : De 17 à 18 ans
- **Sénior** : De 19 à 34 ans
- **Vétéran** : 35 ans et +
## Exercice 2.4 : Es-tu majeur ?

1. Lire un nombre `A` correspondant à un âge (en années).
2. Afficher "Vous êtes majeur" ou "Vous êtes mineur" selon le cas.
- Pour un nombre négatif le message doit être "Vous n'êtes pas encore né".

## Exercice 2.4 : Je prédis l'avenir

Cet algorithme est destiné à prévenir l'avenir et il doit être **infaillible** !
La majorité est fixée à 18 ans.

Le programme demande à l'utilisateur de saisir 2 nombres entiers correspondant respectivement à des heures et des minutes. Le programme affichera ensuite l'heure qu'il sera 3 minutes plus tard.

Par exemple, si l'utilisateur saisit **23** puis **12** (correspondant à **23h12**), le programme doit afficher **Dans 3 minutes, il sera 23h15**.
## Exercice 2.5 : Ma retraite

Si les nombres saisis par l'utilisateur sont "hors limite", le programme affichera "Les données saisies sont invalides"
1. Lire un nombre `A` correspondant à un âge (en années).
2. Selon l'âge fourni, le programme doit afficher l'un des messages suivants :
- Vous êtes à la retraite depuis `X` années
- Il vous reste `X` années avant la retraite.
- C'est le moment de prendre sa retraite.
- La valeur fournie n'est pas un âge valide.

Pour cet exercice, la retraite est fixée à 62 ans.

## Exercice 2.5 : Réprographie

Un magasin proposant un service de Réprographie facture 0.10€ les 10 premières photocopies, 0.09€ les vingt suivants et 0.08 au delà.

Écrire l'algorithme qui demande à l'utilisateur de saisir le nombre de photocopies effectuées et affiche le montant de la facture correspondante.

## Exercice 2.6 : Bisextille

Ecrire un algorithme qui détermine si une année est bissextile.
## Exercice 2.6 : Ma catégorie au club de sport

Les années bissextiles sont :
- les années divisibles par 4 mais non divisibles par 100
- les années divisibles par 400.
Écrire un algorithme qui demande à l'utilisateur de saisir un **âge** et l'informe ensuite à quelle **catégorie** il appartient :

## Exercice 2.7 : Validité d'une date

Écrivez un algorithme qui demande à l'utilisateur de saisir 3 nombres entiers

1. Un numéro de jour
2. Un numéro de mois
3. Un numéro d'année

L'algorithme indique ensuite s'il s'agit ou non d'une date valide.

Il n'est sans doute pas inutile de rappeler que le mois de février compte 28 jours, sauf si l’année est bissextile, auquel cas il en compte 29.

L’année est bissextile si elle est divisible par quatre. Toutefois, les années divisibles par 100 ne sont pas bissextiles, mais les années divisibles par 400 le sont. **Ouf** !
- **Trop jeune** : Moins de 5 ans
- **Débutant** : De 5 à 10 ans
- **Junior** : De 11 à 14 ans
- **Espoir** : De 15 à 17 ans
- **Adulte** : 18 ans et +


## Exercie 2.8 : Élections
## Exercice 2.7 : Tri de nombres++

Les élections législatives, en Guignolerie Septentrionale, obéissent à la règle suivante :
- Lorsque l'un des candidats obtient plus de 50% des suffrages, il est élu dès le premier tour.
- En cas de deuxième tour, peuvent participer uniquement les candidats ayant obtenu au moins 12.5% des voix au premier tour.
Lire 3 nombres décimaux `A`, `B` et `C` puis les afficher dans l'ordre décroissant.

Vous devez écrire un algorithme qui permet la saisie des scores de quatre candidats au premier tour.

Cet algorithme traitera ensuite le candidat numéro 1 (et uniquement lui) : il dira s'il est élu, battu, s'il se trouve en ballottage favorable (il participe au second tour en étant arrivé en tête à l'issue du premier tour) ou défavorable (il participe au second tour sans avoir été en tête au premier tour).
## Exercice 2.8 : Je prédis l'avenir

## Exercice 2.9 : Tarif Assurance
Cet algorithme est destiné à prévenir l'avenir et il doit être **infaillible** !

Une compagnie d'assurance automobile propose à ses clients quatre familles de tarifs identifiables par une
couleur, du moins au plus onéreux :
1. Le programme demande à l'utilisateur de saisir **2 nombres entiers** correspondant respectivement à des **heures** et des **minutes**.
2. Si l'heure saisie n'est pas valide (valeurs hors limites)
- Le programme affiche "Les données saisies sont invalides" et se termine.
3. Si l'heure est valide
- Le programme affiche l'heure saisie
- Le programme affiche ensuite l'heure qu'il sera 3 minutes plus tard.

- Tarifs **bleu**, **vert**, **orange** et **rouge**.
*Par exemple:*

Le tarif dépend de la situation du conducteur :
- Si l'utilisateur saisit **23** puis **12**:
1. Le programme affiche "**Vous avez saisi: 23h12**"
2. Le programme affiche "**3 minutes plus tard, il sera 23h15**".
- Si l'utilisateur saisit **23** puis **59**:
1. Le programme affiche "**Vous avez saisi: 23h59**"
2. Le programme affiche "**3 minutes plus tard, il sera 00h02**".

- Un conducteur de moins de 25 ans et titulaire du permis depuis moins de deux ans, se voit attribuer
le tarif rouge, si toutefois il n'a jamais été responsable d'accident. Sinon, la compagnie refuse de
l'assurer.

- Un conducteur de moins de 25 ans et titulaire du permis depuis plus de deux ans, ou de plus de 25
ans mais titulaire du permis depuis moins de deux ans a le droit au tarif orange s'il n'a jamais
provoqué d'accident, ou le tarif rouge s'il a été repsonsable d'un accident, sinon il est refusé.
## Exercice 2.9 : Réprographie

- Un conducteur de plus de 25 ans titulaire du permis depuis plus de deux ans bénéficie du tarif vert
s'il n'est à l'origine d'aucun accident et du tarif orange pour un accident, du tarif rouge pour deux
accidents, et refusé au-delà
Un magasin proposant un service de Réprographie facture **0.10€** les 10 premières photocopies, **0.09€** les vingt suivantes et **0.08€** au delà.

De plus, pour encourager la fidélité des clients acceptés, la compagnie propose un contrat de la
couleur immédiatement la plus avantageuse s'il est assuré depuis plus de cinq ans.
Ainsi, s'il satisfait à cette exigence, un client normalement "vert" devient "bleu", un client
normalement "orange" devient "vert", et le "rouge" devient orange.
Écrire l'algorithme qui demande à l'utilisateur de saisir le nombre de photocopies effectuées et affiche le montant de la facture correspondante.

Ecrire l'algorithme permettant de saisir les données nécessaires (sans contrôle de saisie) et de traiter ce
problème. Avant de se lancer à corps perdu dans cet exercice, on pourra réfléchir un peu et s'apercevoir
qu'il est plus simple qu'il n'en a l'air (cela s'appelle faire une analyse !)...
> Validez votre travail avec votre formateur avant de passer à la suite.
2 changes: 0 additions & 2 deletions docs/tp/algorithmes/exercices/03-boucles.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ level: 4
order: 3
---

# Partie 3

Cette partie vous permettra de mettre en pratique les notions suivantes :
- Les notions des parties précédentes
- Les boucles
Expand Down
1 change: 0 additions & 1 deletion docs/tp/algorithmes/exercices/04-tableaux.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ level: 4
order: 4
---

# Partie 4

Cette partie vous permettra de mettre en pratique les notions suivantes :
- Les notions des parties précédentes
Expand Down
2 changes: 0 additions & 2 deletions docs/tp/algorithmes/exercices/05-fonctions.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ level: 4
order: 5
---

# Partie 5

Cette partie vous permettra de mettre en pratique les notions suivantes :
- Les notions des parties précédentes
- Les procédures
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ order: 10
Cette série d'exercices vous permettra de réviser les parties précédentes.


## Exercice 5.1 : Calcul des nombres parfaits
## Exercice 9.1 : Calcul des nombres parfaits

On souhaite écrire un programme de calcul des 4 premiers nombres parfaits.

Expand All @@ -32,9 +32,9 @@ Affichage des 4 premiers nombres parfaits :

```

## Exercice 5.2 : Conversion Kilomètres <-> Miles
## Exercice 9.2 : Conversion Kilomètres <-> Miles

### Exercice 5.2.1
### Exercice 9.2.1

L'utilisateur saisit une valeur en kilomètres comprise entre `0.01` et `1 000 000`.

Expand All @@ -44,7 +44,7 @@ Formule km vers mi : `1 miles = 1.609 kilomètres`.

Le programme affiche le résultat de la conversion sous forme de nombre réel double précision.

### Exercice 5.2.2 :
### Exercice 9.2.2 :

L’utilisateur peut choisir le sens de la conversion.

Expand All @@ -53,9 +53,9 @@ Il saisit une valeur à convertir avec son unité de mesure (km ou mi).
Si aucune unité de mesure n’est indiquée, le programme considère la valeur en kilomètres.


## Exercice 5.3 : Conversion Degrés Fahrenheit (°F) <--> Degrés Celsius (°C)
## Exercice 9.3 : Conversion Degrés Fahrenheit (°F) <--> Degrés Celsius (°C)

### Exercice 5.3.1
### Exercice 9.3.1

Soit "X" une valeur à convertir.
- Formule °F vers °C : `°C = (X − 32) * 5/9`
Expand All @@ -73,7 +73,7 @@ Le programme affiche le résultat de la conversion sous forme de nombre réel do

Pour information, le zéro absolu correspond à -459.67 Degrés Fahrenheit ou -273.15 degrés Celsius.

### Exercice 5.3.2
### Exercice 9.3.2

L’utilisateur saisit une unité de mesure (C ou F).

Expand Down
61 changes: 0 additions & 61 deletions docs/tp/algorithmes/exercices2/02a-structures-conditionnelles.md

This file was deleted.

Loading
Loading