0% ont trouvé ce document utile (0 vote)
28 vues4 pages

Planification d'Apprentissages en Algorithmes

Ce document présente un module sur la planification des apprentissages en programmation, en se concentrant sur le calcul du PGCD et la détermination des entiers premiers avec un nombre donné. Il propose une décomposition des algorithmes en étapes simples pour faciliter la compréhension des élèves, ainsi que des méthodes heuristiques pour résoudre des problèmes. Enfin, il décrit un algorithme pour calculer le nombre d'entiers premiers inférieurs à un nombre donné, en utilisant des instructions de programmation de base.

Transféré par

ZAHRA FASKA
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Thèmes abordés

  • algorithme,
  • condition,
  • schématisation,
  • tâches,
  • optimisation,
  • incrémentation,
  • sous-tâches,
  • stratégie,
  • problème,
  • sorties
0% ont trouvé ce document utile (0 vote)
28 vues4 pages

Planification d'Apprentissages en Algorithmes

Ce document présente un module sur la planification des apprentissages en programmation, en se concentrant sur le calcul du PGCD et la détermination des entiers premiers avec un nombre donné. Il propose une décomposition des algorithmes en étapes simples pour faciliter la compréhension des élèves, ainsi que des méthodes heuristiques pour résoudre des problèmes. Enfin, il décrit un algorithme pour calculer le nombre d'entiers premiers inférieurs à un nombre donné, en utilisant des instructions de programmation de base.

Transféré par

ZAHRA FASKA
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Thèmes abordés

  • algorithme,
  • condition,
  • schématisation,
  • tâches,
  • optimisation,
  • incrémentation,
  • sous-tâches,
  • stratégie,
  • problème,
  • sorties

Module : Planification des apprentissages

Réalisé par :​ EL KAMEL Amine, SOURADI Oualid, ABIOUI Achraf, LAFRAXO Mohammed Amine

Problème 1 :

Programme :
def pgcd(a,b): def phi(n):
while b!=0: if n == 0 : return 0
r=a%b else :
a=b result = 1
b=r for i in range(2, n):
return a if (pgcd(n, i) == 1):
result+=1
return result
x= int(input("Entrez n:"))
print("phi(",x,")=",phi(x))

Question 1 :

La solution proposé pour bien apprécier les difficultés qui vont confrontés l’élève est la
décomposition de l'algorithme sur plusieurs étapes (c'est t a dire, subdiviser à des petits
problème qui vont être capable à les résoudre).
Etape 1 : La découvert des plus grands diviseurs communs (pgdc) de n ;
Etape 2 : Trouver le nombre d’entiers qui sont inférieurs à n et premiers avec n ;
Etape 3 : Utiliser un langage de programmation simple pour faire des manipulations réelles
pour résoudre le problème.
Par la suite si les deux étapes étant plus difficile à réaliser par apport à la capacité et les
compétences des élèves, donc il va falloir aussi de les subdiviser aux autres sous étapes
(sous problèmes) qui sont plus simple à résoudre.
Dans la première et la deuxième étape, l’élève doit apprendre comment faire quelques
instructions à savoir : l'affection, comparaison, calcul, utilisation des boucles …etc.
Par la suite, dans la troisième étape (l’étape la plus importante pour aider l'apprenant à bien
construire son savoir faire, et aussi bien maîtriser le savoir être) à travers des manipulations
réelles sur des logiciels de programmation.

Question 2 :

/**L’heuristique est une méthode de résolution de problèmes, non fondée sur un modèle
formel et qui n’aboutit pas nécessairement à une solution. Elle procède par évaluations
successives et hypothèses provisoires.**/

- La conjecture (faire des hypothèses) ;


Aider L'apprenant à travailler avec les instructuctions de comparaison, d’affectation
et de l'exécution d’une séquence d’instruction (boucle). Dont l’objectif est de choisir
la méthode la plus adéquat pour résoudre le problème.
- La reformation du problème ;
La capacité de lire et de comprendre le problème avec son propre style (exemple de
schématisation).
- La subdivision du problème ;
la décomposition du problèmes aux plusieurs tâches :
Etape 1 : La découvert des plus grand diviseur commun (pgdc) de n ;
Etape 2 : Faire des tests avec des instructions de condition ;
Etape 3 : Trouver le nombre d’entiers qui sont inférieurs à n et premiers avec n ;
- La resolution du probleme.
Après la décomposition du grand problème aux sous tâches et la réalisation de ces
derniers, il fallait de les regrouper (mettre les deux fonctions dans un seul
programme) afin de produire une solution globale du problème.
****************************deuxième proposition **********************

Algorithme Calcule_nembre_Premier(n:entier):entier;

Variables
i,e(n):entier;
pgcd:entier;

Début
ecrire("Entrer une valeur pour n : ");
lire(n);
e(n)<--0;
pour i allons de 1 jusqu'a (n)

tantque (i*n<>0)

si a>b alors a<--b;

sinon b<--a;

finSi

si i=0 alors pgcd<--b;

sinon pgcd<--a;

finSi

finTantque

si pgcd=1 alors e(n) <-- e(n)+1;

finPour
returne e(n);
finAlgorithme;
***************Explication***********************
Pour calculer le PGCD de deux nembres A et B On va suivre la démarche suivante:

-on comparer les deux nombres A et B si sont différents de zéro


(si l'un des deux égale à 0 donc l'autre est le PGCD)
-on prendre le plus grand et on va soustraire les plus petit du plus grand
- et on compare à nouveau de la meme façon on refaire les calcule jusqu'a
-on obtient 0 donc le numero avant le zero c'est lui le PGCD

Exemple:
A=18 B=14
A>B donc
A=A-B= 4 B=14
A<B donc
A=4 B=14-4=10
A<B donc
A=4 B=14-4=6
A<B donc
A=4 B=6-4=2
A>B donc
A=4-2=2 B=2
A=B le rest =2 donc 2 est le pgcd

pour on testons si A et B sont premier entre eux


on fait si PGCD de A et B égale à 1 donc il sont premier entre eux.

pour le calcule des nombre premier avec n et sont inferieur à n


on fait le test précedent et si on trouve qu'un nembre satisfaire les condition
avec n on incémente on compteur et on fin le resultat est la valeur du compeur

Vous aimerez peut-être aussi