|
@@ -0,0 +1,838 @@
|
|
|
+{
|
|
|
+ "cells": [
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "a06a76c4",
|
|
|
+ "metadata": {},
|
|
|
+ "source": [
|
|
|
+ "# Micro introduction à Python (et à la programmation)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "aa385104",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "Programmer, c'est traduire des _algorithmes_ dans un langage (de\n",
|
|
|
+ " programmation)\n",
|
|
|
+ "\n",
|
|
|
+ "* Un *algorithme* c'est une recette qui part de données et fournit un résultat."
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "150e913c",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "Ce qu'on va faire pour commencer:\n",
|
|
|
+ "\n",
|
|
|
+ "1- considérer un algorithme simple\n",
|
|
|
+ "\n",
|
|
|
+ "2- le traduire en Python\n",
|
|
|
+ "\n",
|
|
|
+ "*(apprendre par l'exemple)*"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "d9066a47",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "### Auparavant ... \n",
|
|
|
+ "\n",
|
|
|
+ "* variables.\n",
|
|
|
+ "* structure de contrôle."
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "194bc576",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "Variables :"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "c322f11f",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "-"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "x = 1\n",
|
|
|
+ "y = x\n",
|
|
|
+ "x = 2*y\n",
|
|
|
+ "x +=1\n",
|
|
|
+ "z=\"truc\"\n",
|
|
|
+ "une_belle_liste=[1,2,3,\"beaucoup\"]"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "5c7a2d8b",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "### Structures de contrôle\n",
|
|
|
+ "\n",
|
|
|
+ "* _(alternative) :_ \n",
|
|
|
+ "\n",
|
|
|
+ " si ..... alors .... sinon ...\n",
|
|
|
+ "* _(boucle) :_ \n",
|
|
|
+ "\n",
|
|
|
+ " pour i variant entre 1 et 100 faire ...\n",
|
|
|
+ "* _(répétition conditionelle)_: \n",
|
|
|
+ "\n",
|
|
|
+ " tant que _quelque chose est vrai_ faire .... "
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": 1,
|
|
|
+ "id": "0610a94b",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [
|
|
|
+ {
|
|
|
+ "name": "stdout",
|
|
|
+ "output_type": "stream",
|
|
|
+ "text": [
|
|
|
+ "coucou\n"
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "source": [
|
|
|
+ "x= 1\n",
|
|
|
+ "if x== 1:\n",
|
|
|
+ " print(\"coucou\")\n",
|
|
|
+ "else:\n",
|
|
|
+ " print(x)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": 2,
|
|
|
+ "id": "5ff063b6",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [
|
|
|
+ {
|
|
|
+ "name": "stdout",
|
|
|
+ "output_type": "stream",
|
|
|
+ "text": [
|
|
|
+ "0 0\n",
|
|
|
+ "1 2\n",
|
|
|
+ "2 4\n",
|
|
|
+ "3 6\n",
|
|
|
+ "4 8\n"
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "source": [
|
|
|
+ "for i in range(0,5):\n",
|
|
|
+ " y = 2*i\n",
|
|
|
+ " print(i,y)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": 3,
|
|
|
+ "id": "292b10af",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [
|
|
|
+ {
|
|
|
+ "name": "stdout",
|
|
|
+ "output_type": "stream",
|
|
|
+ "text": [
|
|
|
+ "0\n"
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "source": [
|
|
|
+ "i= 5\n",
|
|
|
+ "while i>0:\n",
|
|
|
+ " i-=1 #décrémenter i de 1\n",
|
|
|
+ "print(i)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "b136e291",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ " ### Un problème, un algorithme et sa traduction en Python"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "e4abbb26",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ " _Un nombre premier, c'est un nombre entier qui n'est divisible par aucun\n",
|
|
|
+ " nombre entier plus petit que lui :_\n",
|
|
|
+ " "
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "7aea39e8",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ " \n",
|
|
|
+ " - 2 est premier\n",
|
|
|
+ " - 3 est premier (car 3/2 : reste 1)\n",
|
|
|
+ " "
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "bf9c497f",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ " - 4 n'est pas premier (4/2 = 2, reste 0)\n",
|
|
|
+ " "
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "0918f77d",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ " - 5 n'est divisible ni par 2, ni par 3, donc 5 est premier\n",
|
|
|
+ " - etc."
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "0ff120db",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "#### Le problème :\n",
|
|
|
+ "\n",
|
|
|
+ "##### trouver le plus petit nombre premier supérieur à $1000$."
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "a39591e5",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "**Algorithme :**\n",
|
|
|
+ "\n",
|
|
|
+ "- construire la liste de tous les nombres premier en partant de 2 \n",
|
|
|
+ " \n",
|
|
|
+ " 2, 3, 5,... \n",
|
|
|
+ " \n",
|
|
|
+ " jusqu'à ce qu'on en trouve un supérieur à 1000."
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "27206a71",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ " ``` \n",
|
|
|
+ "listePremiers = [2]\n",
|
|
|
+ " n = 3\n",
|
|
|
+ "\n",
|
|
|
+ "tant que le dernier nombre de listePremiers est \n",
|
|
|
+ " inférieur ou égal à 1000 faire:\n",
|
|
|
+ " \n",
|
|
|
+ " début:\n",
|
|
|
+ " \n",
|
|
|
+ "\t - si n n'est divisible par aucun nombre de\n",
|
|
|
+ " listePremiers alors:\n",
|
|
|
+ " \n",
|
|
|
+ " ajouter n à listePremiers\n",
|
|
|
+ "\t\t \n",
|
|
|
+ "\t\t - n <- n+1\n",
|
|
|
+ " \n",
|
|
|
+ " fin\n",
|
|
|
+ " ```\n",
|
|
|
+ " Le résultat est le dernier nombre de ```listePremiers```."
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "5f6a6a9e",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "On fait ça _à la main_, pour voir comment ça marche (et s'assurer que c'est juste !) :\n",
|
|
|
+ "\n",
|
|
|
+ "* n= 3 listePremiers = [2]. \n",
|
|
|
+ "\n",
|
|
|
+ " n n'est divisible par aucun nombre de la\n",
|
|
|
+ " liste, donc on l'ajoute à la liste: listePremiers=[2,3]\n",
|
|
|
+ " \n",
|
|
|
+ " n= 4\n",
|
|
|
+ " "
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "2ee3d9d3",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ " \n",
|
|
|
+ "* n est divisible par un nombre de la liste (2 !).\n",
|
|
|
+ "\n",
|
|
|
+ " n=5"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "b2cb232e",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "* 5 n'est divisible ni par 2, ni par 3. Donc il est premier et\n",
|
|
|
+ " listePremiers=[2,3,5]\n",
|
|
|
+ " \n",
|
|
|
+ " n = 6"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "1dde5191",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "##### Les listes en Python:"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "ad328354",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "l= [1,2,5,8]"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "924bd446",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "print(l[0])\n",
|
|
|
+ "print(l[2])\n",
|
|
|
+ "print(l[3])"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "aa846607",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "print(l[-1])"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "32eb2b8e",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "for x in l:\n",
|
|
|
+ " print(x)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "2ca293d6",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "l.append('coucou')\n",
|
|
|
+ "print(l)\n",
|
|
|
+ "print(l[-1])"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "d261eb22",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "l= [1,2,5,8]\n",
|
|
|
+ "for x in l:\n",
|
|
|
+ " if x%2 ==0:\n",
|
|
|
+ " print(x,\"est pair\")\n",
|
|
|
+ " else:\n",
|
|
|
+ " print(x, \"est impair\")"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "5fdcb602",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "ListePremiers = [2]\n",
|
|
|
+ "n= 3\n",
|
|
|
+ "\n",
|
|
|
+ "while ListePremiers[-1] <= 1000:\n",
|
|
|
+ "\n",
|
|
|
+ " nEstPremier = True\n",
|
|
|
+ " for x in ListePremiers:\n",
|
|
|
+ " if n%x == 0:\n",
|
|
|
+ " nEstPremier = False\n",
|
|
|
+ " \n",
|
|
|
+ " if nEstPremier:\n",
|
|
|
+ " ListePremiers.append(n)\n",
|
|
|
+ " \n",
|
|
|
+ " n+=1"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "6db056ba",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "print(ListePremiers[-1]) "
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "6513e90e",
|
|
|
+ "metadata": {},
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "print(ListePremiers)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "76acca29",
|
|
|
+ "metadata": {},
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "print(len(ListePremiers))"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "8cd55950",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "### On va regarder ce qui se passe un peu plus en détail :"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "2f0802e2",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "ListePremiers = [2]\n",
|
|
|
+ "n= 3\n",
|
|
|
+ "\n",
|
|
|
+ "while ListePremiers[-1] <= 15:\n",
|
|
|
+ "\n",
|
|
|
+ " nEstPremier = True\n",
|
|
|
+ " print(\"n= \",n)\n",
|
|
|
+ " for x in ListePremiers:\n",
|
|
|
+ " if n%x == 0:\n",
|
|
|
+ " nEstPremier = False\n",
|
|
|
+ " print(n,\"n'est pas premier\")\n",
|
|
|
+ " break\n",
|
|
|
+ " if nEstPremier:\n",
|
|
|
+ " print(n,\"est premier\")\n",
|
|
|
+ " ListePremiers.append(n)\n",
|
|
|
+ " print(\"La liste: \",ListePremiers)\n",
|
|
|
+ " continuer=input(\"?\")\n",
|
|
|
+ " n+= 2 #les nombres premiers ne sont pas pairs !\n",
|
|
|
+ "print(\"Résultat :\",ListePremiers[-1])"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "53c0e166",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "### Fabriquer une boîte noire, qui, pour chaque nombre *x* qu'on lui donnera, renverra le plus petit nombre premier supérieur à *m*. "
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "d0c4e6b5",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "def premierSup(m):\n",
|
|
|
+ "\n",
|
|
|
+ " ListePremiers = [2]\n",
|
|
|
+ " n= 3\n",
|
|
|
+ "\n",
|
|
|
+ " while ListePremiers[-1] < m:\n",
|
|
|
+ "\n",
|
|
|
+ " nEstPremier = True\n",
|
|
|
+ " for x in ListePremiers:\n",
|
|
|
+ " if n%x == 0:\n",
|
|
|
+ " nEstPremier = False\n",
|
|
|
+ " break\n",
|
|
|
+ " if nEstPremier:\n",
|
|
|
+ " ListePremiers.append(n)\n",
|
|
|
+ " n += 2\n",
|
|
|
+ " return ListePremiers[-1]"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "ac5473f1",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "premierSup(2010)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "d798371f",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "0n peut mettre la fonction dans un fichier"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "4999edad",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "subslide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "from calcul import premierSup"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "b65b5326",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "premierSup(1210)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "markdown",
|
|
|
+ "id": "c107dcc5",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "source": [
|
|
|
+ "# Python avancé\n",
|
|
|
+ "\n"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "eedfdfde",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "def premierSup(m):\n",
|
|
|
+ "\n",
|
|
|
+ " ListePremiers = [2]\n",
|
|
|
+ " n= 3\n",
|
|
|
+ "\n",
|
|
|
+ " while ListePremiers[-1] < m:\n",
|
|
|
+ "\n",
|
|
|
+ " nEstPremier = all(n%x!=0 for x in ListePremiers)\n",
|
|
|
+ " \n",
|
|
|
+ " if nEstPremier:\n",
|
|
|
+ " ListePremiers.append(n)\n",
|
|
|
+ " n += 2\n",
|
|
|
+ " return ListePremiers[-1]"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "e42db4c8",
|
|
|
+ "metadata": {},
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "premierSup(20)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "12fcc9ef",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "slide"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "def premierSup(m):\n",
|
|
|
+ "\n",
|
|
|
+ " ListePremiers = [2]\n",
|
|
|
+ " n= 3\n",
|
|
|
+ "\n",
|
|
|
+ " while ListePremiers[-1] < m:\n",
|
|
|
+ "\n",
|
|
|
+ " if all(n%x!=0 for x in ListePremiers):\n",
|
|
|
+ " ListePremiers.append(n)\n",
|
|
|
+ " n += 2\n",
|
|
|
+ " return ListePremiers[-1]"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "d73cefad",
|
|
|
+ "metadata": {},
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "premierSup(20)"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "e9e0c1c3",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "[x for x in range(10)]"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "efb576d1",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "[2*x-1 for x in range(10)]"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "bf7488cd",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "[x%2 == 0 for x in range(10)]"
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "cell_type": "code",
|
|
|
+ "execution_count": null,
|
|
|
+ "id": "d00c507b",
|
|
|
+ "metadata": {
|
|
|
+ "slideshow": {
|
|
|
+ "slide_type": "fragment"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "outputs": [],
|
|
|
+ "source": [
|
|
|
+ "all([x%2 == 0 for x in range(10)])"
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "metadata": {
|
|
|
+ "celltoolbar": "Diaporama",
|
|
|
+ "kernelspec": {
|
|
|
+ "display_name": "Python 3 (ipykernel)",
|
|
|
+ "language": "python",
|
|
|
+ "name": "python3"
|
|
|
+ },
|
|
|
+ "language_info": {
|
|
|
+ "codemirror_mode": {
|
|
|
+ "name": "ipython",
|
|
|
+ "version": 3
|
|
|
+ },
|
|
|
+ "file_extension": ".py",
|
|
|
+ "mimetype": "text/x-python",
|
|
|
+ "name": "python",
|
|
|
+ "nbconvert_exporter": "python",
|
|
|
+ "pygments_lexer": "ipython3",
|
|
|
+ "version": "3.11.2"
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "nbformat": 4,
|
|
|
+ "nbformat_minor": 5
|
|
|
+}
|