epi algorithme et programmation · ces activités leur ont permis de se familiariser...

27
1 EPI Algorithme et Programmation Mme Poulain ………………………………………………………………………

Upload: dotu

Post on 10-Sep-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

1

EPI Algorithme et

Programmation

Mme Poulain

………………………………………………………………………

2

Cet EPI algorithme et programmation couvre le nouvel enseignement d’informatique évalué au brevet des collèges. Ce cahier recense les activités proposées et réalisées par les élèves de 4B à l'utilisation du logiciel Scratch. Ces activités leur ont permis de se familiariser progressivement aux principes de l’algorithmique. L'utilisation régulière de ce logiciel Scratch leur a permis également de s’initier à la programmation informatique. Cette initiation étant nouvelle en classe de 4ème, le niveau espéré en juin 2016 a dû être revu à la baisse car les élèves les plus faibles se montrent plus lents dans la compréhension de la logique informatique. Les ressources numériques (algorithmes, programmes…) liées à ce cahier ont été mis en ligne sur le site mathsanath.wordpress.com créé pour les élèves du collège Victor Hugo de Volvic.

3

Fiche 1 : Scratch et les variables informatiques 1. Variable, affection Une variable est une donnée qu’un algorithme stocke ; elle porte un nom et possède une valeur. On peut comparer une variable à une boîte portant une étiquette. Quand on donne une valeur à une variable, on dit qu’on lui «affecte» cette valeur. Affecter la valeur 3 à la variable A, c’est ranger la valeur 3 dans une boîte qui porte l’étiquette «A». On note : A 3.

2. Lecture, écriture Pour qu’un algorithme reçoive une donnée, on lui commande de la «lire». • Avec l’instruction lire A», l’algorithme attend que l’utilisateur saisisse une valeur pour la variable A. Pour qu’un algorithme renvoie une donnée, on lui commande de l’« écrire • Avec l’instruction «écrire B», l’algorithme renvoie la valeur stockée dans la variable B.

4

5

Travaux Pratiques 1 : Scratch et les variables informatiques

Un premier programme de calcul : On veut réaliser un script correspondant au programme de calcul ci-dessous.

Pour demander un nombre à l'utilisateur, il faut utiliser les commandes de la catégorie

. Pour effectuer des calculs, il faut utiliser les commandes de la catégorie . 1. Reproduire et compléter le script ci-dessus avec les valeurs appropriées. 2. Vérifier le bon fonctionnement du script avec deux valeurs différentes pour le nombre de départ. Essai 1 : Essai 2 : Avec deux variables : On veut réaliser un script correspondant au programme de calcul ci-dessous.

1. Pourquoi n'est-il pas possible d'écrire le script avec une seule variables ? 2. On a renommé la variable "nombre" en "nombre de départ" et créé une deuxième variable "résultat". Compléter le script ci-contre pour qu'il affiche le résultat du programme de calcul. Vérifier le bon fonctionnement du script avec deux essais. Essai 1 : Essai 2 : Des programmes en pagaille : 1. Pour chaque programme de calcul ci-dessous, écrire le script permettant d'en calculer le résultat.

6

2. Tester ces programmes avec différentes valeurs. Que constate-t-on ?

Fiche 2 : Scratch et les instructions conditionnelles (Si…alors…) Une instruction conditionnelle est une instruction qui a besoin d’une condition pour se réaliser. On reconnaît une instruction conditionnelle grâce aux mots Si et Alors. Dans Scratch, il y a deux blocs d’instruction conditionnelle : Si… Alors… Si… Alors… Sinon… 1. Instruction Si… Alors…

Cet algorithme demande de saisir un nombre. Ensuite, si ce nombre est inférieur à 10, alors le miaulement du chat sera déclenché.

2. Instruction Si… Alors… Sinon…

. Exemple :

L’algorithme ci-dessus comporte un bloc Si… Alors… Sinon… pour indiquer à l’utilisateur si il est mineur ou majeur. Cet algorithme demande à l’utilisateur de saisir son âge. Ensuite, si ce nombre est strictement inférieur à 18, alors le chat dit « Tu es mineur », sinon (le nombre est supérieur ou égal à 18) le chat dit « Tu es majeur ».

Exemple :

7

8

9

Fiche 3 : Scratch et les boucles (Pour…de...à…jusque...) Quand on écrit un algorithme, il est parfois utile de répéter un certain nombre de fois les mêmes instructions. On utilise pour cela une structure de boucle. Dans une structure de boucle, toutes les instructions sont exécutées à chaque passage de la boucle. • Une boucle peut être répétée un nombre de fois, ce nombre de répétitions étant connu à l’avance. Exemples : 1. L’algorithme ci-contre fait avancer 4 fois le lutin de 50 pas. 2. L’algorithme ci-dessous affecte 3 à la variable A. Puis il multiplie à 5 reprises la valeur de la variable A par 2.

Après le 1er passage dans la boucle, la variable A vaut 6. À la fin du programme, la variable A vaut 96.

• Une boucle peut aussi dépendre d’une condition d’arrêt. La boucle « Jusqu’à » est une boucle qui est répétée jusqu’à ce qu’une condition devienne vraie. Exemple : l’algorithme ci-dessous demande un nombre à l’utilisateur et le multiplie par_2 jusqu’à ce que le nombre devienne supérieur à 100. Le programme affiche le nombre obtenu.

Remarque : il existe d’autres types de boucles. • La boucle «Tant que» est répétée tant qu’une condition reste vraie. • Une boucle peut être répétée indéfiniment.

10

Application 1 : Scratch et les relatifs.

On considère un programme de calcul dont l'algorithme s'écrit :

1. Compléter le tableau en indiquant les valeurs obtenues à chaque étape de l'algorithme :

2. Juliette a écrit le programme ci-dessous.

Compléter le tableau en indiquant les valeurs de chacune des variables a, b et c.

11

12

13

Application 2 : Scratch VS Tableur et les relatifs.

Exercice 1 : Voici un programme de calcul :

1. On considère la feuille de calcul qui correspond à ce programme :

Quelle formule doit-on entrer dans les cellules :

B2 B3 B4 B5

2. Quel nombre donne le programme de calcul si l'on choisit : a. le nombre 5 ? b. le nombre 12 ? c. le nombre 3 ? 3. En appliquant ce programme à un certain nombre, Valentin a obtenu 0. Es-tu capable de retrouver le nombre que Valentin avait choisi ? 4. Léa veut écrire un script correspondant à ce programme de calcul avec Scratch. Aide-la à remettre les instructions dans le bon ordre.

Choisir un nombre. Le multiplier par (2). Ajouter 27. Multiplier par (6) le résultat. Soustraire le triple du nombre choisi.

14

Exercice 2 : 1. Décrire par une phrase les étapes successives de ce script d'un programme de calcul :

2. Quel nombre donne le programme de calcul si l'on choisit : a. le nombre 5 ? b. le nombre 12 ? c. le nombre 3 ? Exercice 3 : 1. Décrire par une phrase les étapes successives de ce script d'un programme de calcul :

2. Quel nombre donne le programme de calcul si l'on choisit 4 comme nombre de départ ? 3. Pour quel nombre de départ ce programme de calcul ne pourra-t-il pas donner de résultat ? Pourquoi ? Exercice 4 : Voici un programme de calcul :

…………………………………………………....

……………………………………………………

……………………………………………………

…………………………………………………….

…………………………………………………....

……………………………………………………

……………………………………………………

…………………………………………………….

Complète les formules en B2, B3, B4 et B5

Ecris le script à rentrer sur scratch correspondant à ce programme.

15

Application 3 : simulation d'un lancer de dés (probabilités)

Choisir un nombre. Le multiplier par 3. Soustraire 5. Multiplier par (2) le résultat. Ajouter le double du nombre choisi.

16

Travaux Pratiques 2 : Probabilités et Outils numériques

Exercice 1 : Léa a écrit le script suivant afin de simuler un grand nombre de lancers d'un dé équilibré à 6 faces.

2. On lance à présent deux dés équilibrés à 6 faces et on s'intéresse à la somme de ces deux dés. a. Modifier le script en ajoutant les données suivantes afin d'obtenir une estimation de la probabilité d'obtenir une somme égale à 7 :

Exercice 2 : Ouvrir un tableur pour simuler un lancer de deux dés équilibrés grâce à la formule =ALEA.ENTRE.BORNES(1;6) à entrer en A2 et à étirer ensuite jusqu'en B201 (pour avoir 200 lancers de 2 dés).

1. Expliquer rapidement à quoi sert ce script.

Attention, il faudra utiliser les blocs opérateurs pour définir la somme ! b. Modifier le script afin d'obtenir une estimation de la probabilité d'obtenir une somme égale à 12. c. Comment peut-on expliquer la différence de ces deux résultats ? Peut-on calculer les valeurs théoriques d'avoir une somme égale à 12 ou égale à 7 ?

17

1. Quelle formule faut-il entrer dans la cellule D2 pour que le tableur calcule les sommes obtenues ? 2. Taper en G2 la formule =NB.SI(D2:D201;F2). Quel résultat trouve-t-on ? Pouvait-on le prévoir ? 3. Etirer la formule de G2 à G13. Actualiser en tape sur la touche F9 de votre clavier. 4. La somme ayant la fréquence maximale est-elle toujours la même ? Si oui, quelle est-elle ? Si non, expliquer pourquoi ce n'est pas toujours la même. Exercice 3 : Dans un tableur, la fonction JOURSEM, avec le réglage "2", affiche un nombre entre 1 et 7 : 1 pour lundi, 2 pour mardi…et 7 pour dimanche. exemple : La formule =JOURSEM(DATE(2016;12;1);2) renvoie un 4 car le 01/12/2016 tombe un jeudi. 1. L'instruction =JOURSEM(DATE(2016;5;20);2) affiche le résultat 5. Qu'est-ce-que cela signifie ? 2. Prendre la feuille 2 dans votre tableur (en bas) et déterminer quel jour de la semaine était le 1er janvier 2000 et le jour de votre naissance. 3. Prendre la feuille 3 du tableur. Voici les dates de naissance de tous les élèves de la classe. Déterminer le jour de naissance de chaque élève. 4. Votre professeur est née un samedi. Si on prend un élève au hasard dans la classe, quelle est la probabilité qu'il soit lui aussi né un samedi ?

18

Application 4 : Scratch et les puissances de 10

19

Travaux Pratiques 3 : calcul de la puissance d’un nombre avec scratch.

Il s’agit dans un premier temps de faire créer un programme qui calcule les nombres donnés par l’utilisateur à la puissance 2, puis à la puissance 3. Le programme doit retourner le résultat final.

Enfin, on souhaite créer un programme qui demande à l’utilisateur un nombre de départ, le nombre que l’on doit mettre en exposant et qui calcule la puissance du nombre donné avec l’exposant donné.

Variables : Créer trois variables « nombre entier », « exposant » et résultat.

Aide : Voici les différentes briques utilisées pour la conception de ce programme.

20

21

Travaux Pratiques 4 : égalité de Pythagore avec scratch (calcul de l'hypoténuse)

Créer un programme qui calcule la longueur de l'hypoténuse d’un triangle rectangle, connaissant les deux côtés de l'angle droit, à l’aide de l'égalité de Pythagore.

Consigne : Nous disons à l’utilisateur qu'il doit calculer la longueur de l’hypoténuse.

Aide : Voici les différentes briques utilisées pour la conception de ce programme.

22

Travaux Pratiques 4 : égalité de Pythagore avec scratch

(calcul d'un côté de l'angle droit)

Créer un programme qui calcule la longueur manquante du côté de l'angle droit d’un triangle rectangle, connaissant un côté de l'angle droit et l'hypoténuse, à l’aide de l'égalité de Pythagore.

Consigne : Nous disons à l’utilisateur qu'il doit calculer la longueur manquante du côté de l'angle droit.

Aide : Voici les différentes briques utilisées pour la conception de ce programme.

23

24

Travaux Pratiques 4 : égalité de Pythagore avec scratch (partie 1)

Créer un programme qui calcule la longueur d’un côté d’un triangle rectangle, connaissant les deux autres, à l’aide de l'égalité de Pythagore.

Consigne :

Nous demanderons à l’utilisateur s’il doit calculer la longueur de l’hypoténuse. Suivant la réponse, nous créerons une condition afin de calculer la longueur demandée.

Aide : Voici les différentes briques utilisées pour la conception de ce programme.

25

26

Travaux Pratiques 5 : égalité de Pythagore avec scratch (partie 2)

Vous devez créer un programme qui précise à l’utilisateur si un triangle donné est rectangle en utilisant la réciproque du théorème de Pythagore.

Variables : Créer trois variables « Plus grande longueur », « longueur 1 », « longueur 2 ».

Pour aller plus loin : Détecter quelle est la plus grande longueur parmi les valeurs saisies.

Aide : Voici les différentes briques utilisées pour la conception de ce programme.

27

Suivi et évaluation