Chaine renversée.
Écrire une fonction affiche() prenant un premier argument de type str (chaîne de caractères) et un second de type booléen.
Un appel tel que affiche('coucou')
devra afficher coucou.
Un appel tel que affiche('coucou', False)
devra afficher uocuoc (c'est à dire la chaîne à l'envers).
def affiche(ch, ordre = True) :
if ordre :
print(ch)
else :
mot = ''
for j in ch :
mot = j + mot
print(mot)
affiche('Zorglub')
affiche('Zorglub', False)
Autre version
def affiche(ch, ordre = True) :
if ordre :
print(ch)
else :
print(ch[::-1])
affiche('Zorglub')
affiche('Zorglub', False)
Affichage :
Zorglub
bulgroZ
Cosinus .
Le module math définit quelques fonctions et constantes mathématiques.
from math import cos, pi
print(cos(pi/3))
A l'aide de cette fonction cos, définir une fonction cosinus.
cosinus(x)
où x est un nombre retournera la valeur approchée donnée par cos(x)
tandis
que cosinus(x, 'deg')
considérera que l'utilisateur a entré un angle en degrés...
from math import cos, pi
def cosinus(x, unite = 'rad') :
"""
cosinus(45,'deg') renvoie cos(45degré)
cosinus(0.3) renvoie cos(0.3) (0.3 correspond donc à un angle en radians)
"""
pass
# exemples d'appels:
print(cosinus(pi/4))
print(cosinus( 45, 'deg'))
print(cosinus( 80, 'grad'))
from math import cos, pi
def cosinus(x, unite = 'rad') :
if unite == 'rad' :
return cos(x)
elif unite == 'deg' :
return cos(x*pi/180)
else :
return "{} : unité de mesure non prise en compte.".format(unite)
print(cosinus(pi/4))
print(cosinus( 45, 'deg'))
print(cosinus( 80, 'grad'))
Polygone
On reprend l'exemple du cours utilisant le module turtle.
Vous devez maintenant définir une fonction polygone traçant un polygone régulier à l'aide de ce module turtle.
Les paramètres seront ceux utilisés pour la fonction carre du cours, auxquels on ajoutera bien sûr un paramètre pour le nombre de côtés du polygone régulier à tracer.
from turtle import *
def polygone(nbcote = 3, cote = 40, sens = 'trigo', couleur = 'black', epaisseur = 1, depart = (0,0) ) :
"""
corps de la fonction à définir
"""
pass
# premier appel :
polygone(cote = 30, couleur = 'red')
# second appel :
polygone( depart = (0,-5), nbcote=6, sens = 'pendule', epaisseur = 5, couleur = 'green')
# instruction permettant de garder la fenêtre ouverte et
# de la fermer en cliquant sur cette fenêtre :
exitonclick()
donnera :

Un code possible
from turtle import *
def polygone(nbcote = 3, cote = 40, sens = 'trigo', couleur = 'black', epaisseur = 1, depart = (0,0) ) :
penup() # on lève le crayon pour ne pas tracer
setposition(depart) # la tortue se place au point depart
pencolor(couleur) # on fixe la couleur du crayon
pensize(epaisseur) # on fixe l'épaisseur du crayon
pendown() # on abaisse le crayon pour tracer
for _ in range(nbcote) :
forward(cote) # on avance de la longueur cote (l'unité est le pixel) dans l'orientation donnée par la tortue
if sens == 'trigo' : left(360//nbcote)
else : right(360//nbcote)
penup()
# premier appel :
polygone(cote = 30, couleur = 'red')
# second appel :
polygone( depart = (0,-5), nbcote=6, sens = 'pendule', epaisseur = 5, couleur = 'green')
#on cache la tortue à la fin du tracé :
hideturtle()
# instruction permettant de garder la fenêtre ouverte et
# de la fermer en cliquant sur cette fenêtre :
exitonclick()