• Aucun résultat trouvé

algo-prog Prepa INSA 1: TD 4 2020 - fcts booléennes (an bissextiles, nb premier)

N/A
N/A
Protected

Academic year: 2022

Partager "algo-prog Prepa INSA 1: TD 4 2020 - fcts booléennes (an bissextiles, nb premier)"

Copied!
2
0
0

Texte intégral

(1)

INSA Haut-de-France Premier Cycle – Semestre S1

Algorithmique et Programmation – S1 Page 1

Algorithmique et programmation – TD4 et DM1 (verso) Les TD se font sur papier, en pseudo langage (et donc sans ordinateur).

Objectif pédagogique :

- définir des fonctions booléennes avec paramètres et les appeler dans le programme principal - tests et boucles simples, saisie et affichage.

Q1 – Fonction booléenne estBissextile(annee)

Une année est bissextile si l'une des conditions ci-dessous est vérifiée : - l'année est multiple de 4 mais pas de 100

- l'année est multiple de 400

Testez à la main les années suivantes : 2013, 2018, 2019, 2020, 2000, 2100, 2200, 2222

Ecrire une fonction booléenne estBissextile qui retourne VRAI si une année donnée (en paramètre) est bissextile (et FAUX sinon). Remarquez que cette fonction n'affiche rien.

A l'aide de la fonction, afficher toutes les années bissextiles entre deux années saisies par l'utilisateur.

Q2 – Fonction booléenne positionValide(xJoueur,yJoueur,largeur,longueur)

Ecrire une fonction booléenne qui retourne vrai si la position (xJoueur,yJoueur) d'un joueur se situe à l'intérieur d'un terrain rectangle de largeur et longueur données en paramètres (et faux sinon). Le terrain est centré en (0,0).

Q3 - Décomposition d'un nombre entier en facteurs premiers (boucle TQ)

Ecrire une procédure qui affiche la décomposition en facteurs premier d'un nombre entier donné en paramètre.

Exemples : 6 = 2 * 3

132 = 2 * 2 * 3 * 11

La procédure doit afficher exactement cela si on lui donne en paramètre la valeur 6 ou 132

Q4 - Fonction booléenne qui retourne si un nombre entier est premier

Ecrire une fonction booléenne qui retourne vrai si un nombre entier donné est premier et faux sinon Remarques :

- Cette fonction n'affiche rien.

- Répondez à cette question sans utiliser la question précédente.

Ecrire une procédure qui affiche les nombres entiers situés dans un intervalle [min, max] dont les bornes sont passées en paramètres.

(2)

INSA Haut-de-France Premier Cycle – Semestre S1

Algorithmique et Programmation – S1 Page 2

DM1 – Jeu des allumettes (programme python à déposer sur moodle)

Ecrivez un SP jeuAllumettes(n) qui réalise une partie de ce jeu où n est le nombre initial d'allumettes.

Important : vous veillerez à la lisibilité de votre programme :

- les noms des variables, paramètres et sous-programmes doivent être clairs est commentés (rôle) - ajoutez un commentaire pour chaque "grande" partie du programme et/ou utilisez des SP.

Description du jeu : - Ce jeu se joue à deux.

- Les joueurs sont devant un certain nombre d'allumettes (par exemple 7 ou 12 ou 21 …) - A chaque tour, il faut en enlever 1, 2 ou 3.

- Celui qui prend la dernière allumette gagne.

Objectif : permettre à deux joueurs humains de faire une partie du jeu des allumettes. Le programme :

1. demande aux deux joueurs leur prénom 2. affiche toutes les allumettes (voir ci-dessous) 3. demande à chaque joueur à son tour combine

d'allumettes il veut enlever

4. enlève le nombre d'allumettes saisi par le joueur et re-affiche les allumettes restantes

5. continue ainsi jusqu'à ce que la dernière allumette soit prise

6. affiche le prénom du gagnant (voir ci-dessous).

Exemple d'exécution du programme

Testez votre programme et faites des copies d’écran de quelques exécutions.

Affichez aussi le nom de l’auteur à l’écran

« jeu réalisé par … »

Références

Documents relatifs

Un fermier veut mettre une barrière autour de son champ pour y laisser ses vaches. Voltaire veut entourer son jardin rectangulaire de 1700 m de longueur et 13 000 dm de largeur d'un

Calculez le poids de gâteau mangeait par Jean et mangé par Marc.. Une nappe a la

Pour la rentrée scolaire Coline achète 7 cahiers, 5 classeurs et un agenda avec une couverture sur la Kpop?.

Autant que je puisse en juger sur la figure, la diagonale du rectangle est le diamètre du petit cercle joignant les points de contact avec les grands cercles. Soit α l’angle

tant qu'on entre une valeur positive, on redemande de saisir alors qu'on voudrait s'arréter. Retenez : TANT QUE + condition de poursuite de

En Python, l'instruction "for" répète un bloc d'instructions pour chaque valeur dans une liste donnée, dans l'ordre où elles apparaissent Exemple :. La fonction

print accepte plusieurs paramètres contenant les éléments à afficher (séparés par des virgules) ....

• format est une méthode de la classe STRING qui permet de formater l'affichage d'une. format d'affichage