background preloader

Logique avec Python

Logique avec Python
Qu’est-ce qu’un booléen ? Voir la page sur Wikipédia C’est une variable qui ne peux prendre que deux valeurs : VRAI ou FAUX.En Python, le type d’une telle variable est bool, les deux valeurs possibles sont True ou False. Expressions booléennes Une expression booléenne a deux valeurs possibles : True ou False.Python attribue à une expression booléenne la valeur False si c’est : la constante False la constante None une séquence ou une collection vide une donnée numérique de valeur 0. >>> type(False)<class 'bool'>>>> type(True)<class 'bool'>>>> FalseFalse>>> bool(None)False>>> bool(' ')True>>> bool('')False>>> bool(0)False>>> bool(156.87)True Opérateurs relationnels ou de comparaison Ce sont les opérateurs == , ! * Illustration pour x = 7 et y = 17 Cela donne dans le shell de Python : >>> x=7>>> y=17>>> x==yFalse>>> x! * Illustration avec deux chaînes de caractères >>>a='encyclopédie1'>>>b='encyclopédie2'>>>a==bFalse>>>len(a)13>>>a[:12]==b[:12]True Exercices Python 2/ Écrire un programme qui dira si Related:  SNT NSI

Programmation Python - Une brève introduction Avant-propos Ce support de cours a pour objectif de vous introduire à la programmation Python, en se basant principalement sur des exemples et partant du principe que vous connaissez déjà d'autre(s) langage(s) de programmation. Nous ferons parfois quelques parallèles avec MATLAB et GNU Octave, langages généralement bien connus des ingénieurs. Nous avons résolument opté, dans ce support de cours, pour la version 3 de Python. Lorsque des différences importantes apparaissent entre Python v2 et v3, nous les signalons avec ce symbole Avec la version 3 de Python, apparue en 2008, la fondation Python a en effet décidé de gommer certaines imperfections de jeunesse du langage. Nous ferons usage des conventions de notation suivantes : Ce support de cours, qui est sous licence Creative Commons BY-SA, est accessible en ligne à l'adresse . . Historique et caractéristiques du langage Python Principales caractéristiques du langage Python : Quelques références

Exercices de base avec Python Correction d’exercices Python proposés par Gérard Swinnen dans son livre « Apprendre à programmer avec Python ». Ce livre est téléchargeable au format PDF ici.La correction est proposée pour Python 2.7 et est évidemment non-exhaustive. Il existe une foule de sites Internet sur le langage Python et lorsque l’on débute en Python, il est bien difficile de trouver des sites qui permettent au néophyte une utilisation concrète et immédiate de scripts Python. J’ai au fil de mes surfs découvert ce livre qui est d’une utilisation totalement immédiate et extrêmement pratique. La plupart des scripts de cette page sont inspirés de ce livre.Pour vous exercer et apprendre à programmer en Python, il vous suffit d’ouvrir un terminal (sous Mac ou Linux) ou un environnement qui permet d’écrire des scripts Python sous Windows, et d’effectuer des copier-coller des scripts proposés après avoir tapé > python dans votre terminal. Python, les bases : lecture de code > Que font les programmes suivants ? etc.

Apprendre à utiliser des listes en python : list array tableaux en python Les listes (ou list / array ) en python sont une variable dans laquelle on peut mettre plusieurs variables. Créer une liste en python Pour créer une liste , rien de plus simple: >>> liste = [] Vous pouvez voir le contenu de la liste en l'appelant comme ceci: >>> liste<type 'list'> Ajouter une valeur à une liste python Vous pouvez ajouter les valeurs que vous voulez lors de la création de la liste python : >>> liste = [1,2,3]>>> liste [1, 2, 3] Ou les ajouter après la création de la liste avec la méthode append (qui signifie "ajouter" en anglais): >>> liste = []>>> liste[]>>> liste.append(1)>>> liste[1]>>> liste.append("ok")>>> liste[1, 'ok'] On voit qu'il est possible de mélanger dans une même liste des variables de type différent. Afficher un item d'une liste Pour lire une liste, on peut demander à voir l'index de la valeur qui nous intéresse: >>> liste = ["a","d","m"]>>> liste[0]'a'>>> liste[2]'m' Le premier item commence toujours avec l'index 0. Supprimer une entrée avec un index

Python Apprendre programmation Django Raspberry Pi - Cours tutoriels Tuto documentation française- langage de programmation orienté objet poo Sorting Algorithm Animations | Toptal Algorithms in Java, Parts 1-4, 3rd edition by Robert Sedgewick. Addison Wesley, 2003. Quicksort is Optimal by Robert Sedgewick and Jon Bentley, Knuthfest, Stanford University, January, 2002. Dual Pivot Quicksort: Code by Discussion. Bubble-sort with Hungarian (“Csángó”) folk dance YouTube video, created at Sapientia University, Tirgu Mures (Marosvásárhely), Romania. Select-sort with Gypsy folk dance YouTube video, created at Sapientia University, Tirgu Mures (Marosvásárhely), Romania. Sorting Out Sorting, Ronald M.

ALGORITHMES DE TRI On désigne par "tri" l'opération consistant à ordonner un ensemble d'éléments en fonction de clés sur lesquelles est définie une relation d'ordre. Les algorithmes de tri ont une grande importance pratique. Ils sont fondamentaux dans certains domaines, comme l'informatique de gestion où l'on tri de manière quasi-systématique des données avant de les utiliser. L'étude du tri est également intéressante en elle-même car il s'agit sans doute du domaine de l'algorithmique qui a été le plus étudié et qui a conduit à des résultats remarquables sur la construction d'algorithmes et l'étude de leur complexité. Pour vous donner une idée de la difficulté du problème, je vous propose le petit jeu suivant. Vous ne disposez que d'une balance non étalonnée vous permettant de comparer le poids des tonneaux 2 à 2 et d'étagères pouvant vous servir de stockage intermédiaire. Ce sont exactement les mêmes éléments que ceux dont dispose un ordinateur : une fonction de comparaison et des zones de stockage.

Des puissances de 2 au code Andromède (2) Correction des exercices Python demandés dans l’article Des puissances de 2 au code Andromède. La correction proposée est évidemment non-exhaustive. Préliminaire : Les puissances de 2 Écrire les 11 premières puissances de 2. Écrire un programme qui affiche les puissances de 2 de 20 à 220. >>> >>> for i in range(0,21): ... print 2**i ... 12481632641282565121024204840968192163843276865536131072262144524288>>> Écrire un programme qui, connaissant une puissance de 2, renvoie l’exposant (pour m = 2n, l’entrée c’est m, la sortie c’est n). # -*- coding: utf-8 -*- m=int(input('Entrez une puissance de 2 inférieure à 2**50 (1125899906842624)\n'))print(m) i=0while (2**i ! Sortie du code : > python '. Système binaire écrire un programme qui affiche en binaire les entiers naturels de 1 à 20. for i in range(0,21): print(str(i)+' = '+bin(i)) Décimal vers binaire écrire un programme qui convertit en binaire un entier naturel (sans utiliser la fonction bin()). Résultat du programme avec vérification :

Des puissances de 2 au code Andromède Mon but lors de l’enseignement de l’ISN est de simplifier au maximum l’introduction d’une notion, sachant que des cours complets très bien faits foisonnent déjà sur le Net, mon but étant d’accéder très rapidement à la partie pratique. Pour commencer cette nouvelle spécialité en Terminale S, je propose de démarrer tout de suite en Python avec les élèves et d’illustrer au maximum chaque partie du cours avec du code Python. Les élèves ayant tous fait de l’algorithmique en seconde et en première, je ne compte pas faire de cours Python à proprement parler dans un premier temps. Plus tard dans l’année, nous utiliserons Geany, environnement de développement intégré libre (EDI ou IDE en anglais pour « integrated development environment ») pour coder en Python surtout dans la phase de développement des projets. Cette première séance devrait se dérouler sur 2 séances de 2 heures et abordera les notions suivantes : Préliminaire : Les puissances de 2 Système binaire Codage d’un nombre Codage d’un texte

Lecture du programme officiel de l'ISN Présentation du squelette du programme officiel de l’informatique et sciences du numérique, spécialité en terminale S. Les 4 parties du programme : Représentation de l’information Algorithmique Langages et programmation Architectures matérielles Je présente ici une lecture du programme à l’aide de mot-clés. Les 4 parties du programme I - Représentation de l’information II - Algorithmique III - Langages et programmation IV - Architectures matérielles Fichiers PDF de chacune des 4 parties Une première interprétation personnelle de ce programme se trouve sur cette page. Remarque : Ce squelette a été réalisé à l’aide du logiciel d’organisation d’idées Freeplane(exploitation de la vue-plan). ISN Nathalie

Polargraph Drawing Machine: 26 Steps (with Pictures) Confirm you have set the right serial port, and that it's communicating with the arduino by looking for a Polargraph READY! at the top of the window. This line will be red if it's not connected. If you connect the machine after starting the controller, then you'll probably need to close and restart the controller too. If you're running from Processing, then you should also be seeing incoming: READY in the Processing console every couple of seconds, in the background. That's great! Ok, now click the Move pen to point button, which is as close to a manual move command as you have, and click somewhere right down at the bottom of the machine. The purple spot will move too. Try this again, and make sure the sprockets are moving in the right direction. If one, or both of your motors are going in the wrong direction, you might have got your datasheet wrong, or made an error when labelling them up or something. Good work!

Vertical Plotter Gondola v3 (aka Polargraph) by rincey12 My version of a gondola (penholder) for a simple vertical plotter. See also the bead chain gear in my objects. See both objects in action in this video: There is also a slightly more complicated v4 here: These models (and some electronic stuff) are all you need to build your own vertical plotter. This is iteration 3 of the gondola. Bead chains can be fixed with M3 bolts Pen can be fixed with M4 bolt Enough place to glue servo for pen lift M3 hole for counterweight at the bottom (M5 would be better, could use M5 nuts then as weight) You can see some more pictures here (text in german, sorry):

Related: