Cours

Les transparents du premier cours sont disponibles ici. top

Exercice 1 - Hello world!

  1. Écrire un programme qui affiche la chaîne de caractères "Hello world!"

    #!/usr/bin/python
    print("Hello world!")
    

top

Exercice 2 - Un peu de maths

  1. Écrire un programme qui affiche la table de multiplication par 7. Le résultat devra être affiché sous la forme :

    7 fois 1 font  7
    7 fois 2 font 14
    7 fois 3 font 21
    7 fois 4 font 28
    7 fois 5 font 35
    7 fois 6 font 42
    7 fois 7 font 49
    7 fois 8 font 56
    7 fois 9 font 63
    

    #!/usr/bin/python
    
    for n in range(10):
    	print "7 fois %i font %2i" %(n,7*n)
    

  2. Modifier votre programme pour afficher toutes les tables de multiplication de 1 à 9, avec un saut de ligne entre chaque.

    #!/usr/bin/python
    
    for m in range(10):
    	for n in range(10):
    		print "%i fois %i font %2i" %(m,n,m*n)
    	print "\n"
    

  3. Un nombre est premier si il est divisible uniquement par 1 et par lui-même. Une méthode naïve pour tester si un nombre n > 2 est premier est donc de vérifier que, pour chaque x entre 2 et n - 1, n n'est pas divisible par x (c'est-à-dire, le reste de la division de n par x n'est pas nul).

    Écrire un programme qui affiche tous les nombres premiers inférieurs à 10000.

    #!/usr/bin/python
    
    n=10000
    
    print "Les nombres premiers entre 1 et %i sont :" %(n)
    
    for i in range(2,n):
    	estpremier=True
    	for j in range(2,i):
    		if i%j==0:
    			estpremier=False
    			break
    	if estpremier:
    		print i,
    	
    

  4. La suite de Fibonacci est définie par F0 = F1 = 1 et Fn+2 = Fn+1 + Fn (i.e. chaque nouvel élément est la somme des deux précédents).

    Écrire un programme qui calcule les 30 premiers éléments de la suite de Fibonacci.

    #!/usr/bin/python
    
    a=1
    b=1
    
    for n in range(30):
    	print a,
    	a,b=b,a+b
    

  5. top

Exercice 3 - Listes et tri

  1. Écrire un programme qui affiche tous les caractères d'une chaîne de caractères en en mettant un par ligne.

    #!/usr/bin/python
    ch = raw_input("Entrer une chaine de caracteres : ")
    
    for a in ch:
    	print a
    

  2. Écrire un programme qui détermine si une chaîne de caractères contient simultanément la lettre r et la lettre s
    ("Princesse" -> oui ; "de" -> non ; "Cleves" -> non).

    #!/usr/bin/python
    ch = raw_input("Entrer une chaine de caractere : ")
    
    r_present = False 
    s_present = False
    ind_maxi = len(ch) - 1
    ind = 0
    
    while ( (ind <= ind_maxi) and not (r_present and s_present) ):
        r_present = ( ch[ind] == 'r') or r_present 
        s_present = ( ch[ind] == 's') or s_present 
        ind += 1
    
    if (r_present and s_present):
    
        print "r et s sont presents"
    
    else:
    
        print "r et s ne sont pas tous les deux presents"
    

  3. Écrire une fonction qui prend une liste en argument et détermine si elle contient un doublon.

    #!/usr/bin/python
    
    L = [1,2,3,3,5,6,7,8]    # La liste contient un doublon
    # L = [1,2,3,4,5,6,7,8]  # La liste ne contient pas de doublon
    
    print L
    
    doublon=False
    
    for i in range(len(L)):
    	for j in range(len(L)):
    		if (L[i]==L[j]) and (i!=j):
    			doublon=True
    
    if doublon:
    	print "La liste contient un doublon"
    else:
    	print "La liste ne contient pas de doublon"
    

  4. À partir de trois entiers a, b et c entrés au clavier par l'utilisateur, écrire un programme qui les affiche dans l'ordre croissant.

    #!/usr/bin/python
    a=input("Entrer l'entier a : ")
    b=input("Entrer l'entier b : ")
    c=input("Entrer l'entier c : ")
    print a,b,c
    
    if b<a:
    	a,b=b,a
    if c<a:
    	a,c=c,a
    if c<b:
    	b,c=c,b
    	
    print a,b,c
    

top