Compléments sur Python (EduPython)

Slides:



Advertisements
Présentations similaires
TD0 - Rappels. Acquis du programme 1 ère année Analyser et modéliser : un problème, une situation ; Imaginer et concevoir : une solution algorithmique.
Advertisements

Capsule pédagogique 3.1 Des fractions aux nombres décimaux Mathématiques 7 e année 3.1 Des fractions aux nombres décimaux efbmaths7.weebly.com.
Le débogage Semaine 12 Version A15. Plan de leçon - Débogage  Commentaire javadoc  Définition  Fonctionnement  Point d’arrêt  Exécution  Contrôler.
Qu'est ce que le logiciel libre ?. Qu'est-ce qu'un logiciel ? ● C'est une application informatique qui répond à un besoin : traitement de texte, navigateur.
Les systèmes d'information 1- Une pratique quotidienne 2- Les données 3- Approche conceptuelle 4- Notion de serveur 5- Conception d'un système d'information.
Chapitre 4 la représentation des nombres. Chapitre 4 : La représentation des nombres 1 - Introduction 1.1 – Notion de mot 2 - La représentation des entiers.
Comparaison des méthodes de calcul de quartiles On considère la série statistique ci-dessous : Effectif total : 12.
1 Programmation en C++ C++ de base ● Programme C++ ● Variables, objets, types ● Fonctions ● Namespace ● Tests ● Boucles ● Pointeurs, références.
Présentation python : Épisode 2 ● Les fonctions ● Exemples d'application ● Utiliser ses programmes ● Les modules Étienne Loks et David Mentré - 28 janvier.
Présentation python : Épisode 3 ● Comment programmer comme un gentilhomme ? ● Le style de code ou comment bien présenter ● Les test unitaires ou comment.
Master ESEEC Rédaction de documents (longs) structurés Patrice Séébold Bureau 109, Bât B.
FRACTIONS Calcul avec des fractions.
Présentation python : Épisode 2
>>> Amphi Python
Formation de formateurs 15 mars 2017
Information, Calcul, Communication
L’ordinateur et ses composants
Les Instructions Itératives (Les Boucles)
Introduction au Langage Pascal
EPREUVES HISTOIRE ET GEOGRAPHIE
Plateforme CountrySTAT Aperçu global de la préparation des tableaux dans la nouvelle plateforme CountrySTAT FORMATION DES POINTS FOCAUX SUR LE SYSTEME.
Préparez-vous.
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Représentation des nombres réels
Quelques Termes INFORMATIQUE ? ORDINATEUR ( Système Informatique)?
Chapitre 1 nombres, chaînes de caractères, booléens, et VARIABLES
Objectifs Maîtriser : Un environnement de travail
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
Cours 2 : Représentation des nombres réels
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Représentation de l’information en binaire:
Principes de programmation (suite)
Progressions calcul CM
Représentation de l'information en binaire:
Les fonctions.
Les fonctions.
L’Instruction de Test Alternatif
Programmation Numération Compétences visées Période
Bases de programmation en Python
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
Exercice 1 : Statistiques et calculatrice.
Codage et Représentation de l’Information
L’I NSTRUCTION DE T EST A LTERNATIF Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie – Université A.Mira, Bejaia Année.
L ES I NSTRUCTIONS I TÉRATIVES (L ES B OUCLES ) Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie – Université A.Mira,
Coding party Écrire un programme qui élève un nombre au carré Écrire un programme qui teste si un nombre est pair Écrire un programme qui calcule la factorielle.
Introduction à l’algorithmique. Introduction Algorithme: Procédure décrivant, étape par étape, une méthode permettant de résoudre un problème. Mot provenant.
Architecture de machines Le microprocesseur Cours
Calcul Scientifique Initiation à SCILB
Révision du format des données
B.Shishedjiev - Informatique
De Scratch à Python : une transition douce… COMMUNICATION
Sylvie DELAËT 2002 Architecture des machines Bienvenus en Amphi d’Architecture des Machines.
Programmation Web : Introduction à XML
Plateforme CountrySTAT Aperçu global de la préparation des tableaux dans la nouvelle plateforme CountrySTAT FORMATION DES POINTS FOCAUX SUR LE SYSTEME.
Position, dispersion, forme
1 Architecture des ordinateurs Généralités. 2 Définition Informatique = Information + Automatique Ce terme a été introduit en France. Il est très répandu.
- Du collège au lycée - De Scratch à Python
Programmation Scratch
Chapitre 2 : Représentation de l’information dans la machine Introduction Représentation des nombres négatifs –Signe / valeur absolue –Complément à 1 –Complément.
Activité flash n°5.2 C’est une activité PERSONNELLE en temps limité environ 11 minutes : 6 questions sont à traiter. J’attends de vous des égalités !
INTELLIGENCE ARTIFICIELLE
Scénario 1 Recherche parmi les 112 contributions référencées à la racine de l’axe « MOE »
Programmation Maths CM2
PAF Guillaume Martin - Fabrice Cizeron - Xavier Roulot
Python Nicolas THIBAULT
3. En cours d’acquisition
Codification et représentation de l’information Enseignant: Mahseur mohammed Groupe FB: mi2016ua1 Chaine YT: Cours informatique.
Premier TEST TP- Module RC
LE SYSTÈME D’INFORMATION LE (SI). Définition Qu’es ce que c’est une entreprise ■L’entreprise rassemble l’ensemble des activités d’une personnes ou d’un.
L’apprentissage par la robotique Mr. Zouari Lazhar
Transcription de la présentation:

Compléments sur Python (EduPython) Formation Lycée Juillet 2018

Pourquoi le choix de Python Le choix d’un langage textuel, comme Python, au lieu d’un langage par blocs, comme Scratch, permet aux élèves de se confronter à la précision et la rigidité d’une syntaxe proche de celle des expressions mathématiques, avec l’avantage de pouvoir bénéficier du contrôle apporté par l’analyseur syntaxique. (Document ressources pour le lycée)

Bibliothèque « lycee » d’EduPython Lien vers le fichier Lycee.py 67 fonctions sont définies Quelques exemples : Est chargé par la commande from lycee import * def pgcd(a,b): Renvoie le Plus Grand Diviseur Commun des 2 nombres def puissance(a,n): Cette fonction renvoie le résultat de a^n def reste(a,b): Cette fonction renvoie le reste de la division de a par b def quotient(a,b): Cette fonction renvoie le quotient de la division de a par b

Bibliothèques « math » et « cmath » Il suffit d’importer au début de votre programme ce module par l’une des instructions d’importation : import math : nécessite alors d’appeler la fonction par math.sqrt(2) par exemple pour la racine carrée de 2. from math import sqrt : permet d’appeler la fonction directement par sqrt(2) par exemple pour la racine carrée de 2. from math import * : permet d’importer directement toutes les fonctions du module math, il n’est alors plus nécessaire de les précéder de math.

Quelques fonctions pour les statistiques L=[random.randint(1,50) for i in range(100)] Python propose une syntaxe utile pour la création de liste en compréhension.

Quelques fonctions pour les statistiques L=[random.randint(1,50) for i in range(100)]

Précision de Python ! Si vous tapez print (3 − 2.99 − 0.01), vous obtiendrez le résultat −2.13370987545e − 16 ce qui peut poser problème... Cela vient de la représentation des nombres dans la machine : la représentation des nombres décimaux se fait selon la norme IEEE 754 et on obtient la même erreur avec beaucoup de logiciels (Excel, OpenOffice, XCas, ...). En fait pour nous le nombre 2,99 est un nombre "simple" dans son écriture décimale, mais pour un ordinateur qui pense en base 2, c’est beaucoup plus difficile ! Plus d’information sur la documentation officielle de Python

A propos de la représentation des nombres dans Python Donc 0.1 n’est pas 0.1 mais 0.1000000000000000055511151231257827021181583404541015625 Cela vient du fait du stockage des flottants en binaire.

Les nombres à virgule flottante sont représentés, au niveau matériel, en fractions de nombres binaires (base 2). Par exemple, la fraction décimale : 0,125 = 1/10 +1/100+5/1000 Et, de la même manière, la fraction binaire : 0.001=0/2+0/4+0/8 Ces deux fractions ont une valeur identique, la seule différence est que la première est une fraction décimale, la seconde est une fraction binaire. Malheureusement, la plupart des fractions décimales ne peuvent pas avoir de représentation exacte en fractions binaires. Par conséquent, en général, les nombres à virgule flottante que vous donnez sont seulement approximés en fractions binaires pour être stockés dans la machine. Python à 53 décimales binaires ( les 53 bits de mantisse en flottant-64 bits.)

Problème d’arrondi Pour calculer en binaire 1/10, il faut donc faire 1/1010. On trouve : N = 0.000 11 00 11 00 11 00….(périodique) 0.1 est donc stocké sous la forme de N « coupé »  à 53 décimales >>> (0.1+0.1==0.2) True 0.1 0.00011001100110011001100110011001100110011001100110011 +0.1 0.00011001100110011001100110011001100110011001100110011 -------------------------------------------------------------------------------------------------- 0.2 0.00110011001100110011001100110011001100110011001100110 0.3 0.01011001100110011001100110011001100110011001100110011 >>> (0.1+0.1+0.1==0.3) False

Problème d’arrondi