0 évaluation0% ont trouvé ce document utile (0 vote) 107 vues4 pagesScratchverspython
Copyright
© © All Rights Reserved
Formats disponibles
Téléchargez aux formats PDF ou lisez en ligne sur Scribd
COT OA CEL CE Uy
‘Au college, vous avez découvert la programmation par blocs,
avec Scratch. Nous allons maintenant programmer avec
(e langage Python, un langage simple d'usage et largement
répandy, utilisé au lycée
ia Aller sur le site web lycee editions-bordas.r/cahier-SNT,
séquence 15, et choisir interface « Du langage par blocs a Python »
Cette interface permet d’écrire un programme avec des blocs et d'obtenir en temps réel
sa traduction en langage Python
© 1 Le programme ci-dessous, écrit en langage par blocs, convertit un débit binaire expri
bit par seconde (bit/s) en octet par seconde (o/s) {un octet est composé de 8 bits),
Saisir le programme avec le langage par blocs, puis recopier le programme Python asso.
Le programme précédent se contente d'afficher la valeur calculée, ce qui n'est pas pratique pour
effectuer d'autres traitements sur celle-ci. Nous allons donc le modifier.
@ 2.4. Saisir Le programme ci-dessous, écrit en langage par blocs, a l'aide du bouton &
Puis tester le programme en cliquant sur 3
bi Recopier les instructions en langage Python
qui définissent la fonction conversion(), en faisant
attention a Ualignement en début de ligne.
En langage Python, le mot-clé def permet de définir une fonction, La ou les valeurs passées
en entrée de la fonction sont appelées argumentls). Dans le corps de la fonction, les instructions
sont indentées, c'est-a-dire décalées vers la droite, Le mot-clé return permet de renvoyer la ou
les valeur(s) calculéets) par ta fonction.
©. Dans la fonction conversion() écrite en langage Python, souligner argument et entourer
la valeur renvoyée par cell
© 3. Dans votre calculatrice ou dans Uinterface Python disponible sur lycee.editions-bordas.fr/
cahier-SNT (séquence 15), saisir la fonction Python conversion() de la question 2.b.
© 4. Dans ta console, exécuter l'instruction conversion(s40a0) et interpréter le résultat affiché.
On souhaite a présent exprimer le débit en kilooctet par seconde (ko/s]
@ 5. Sous la premiere fonction, saisir la fonction Python conversionjectetKo()
Puis exécuter conversion (conversionloctet_ko(640¢@)) dans la console.
Noter le résultat affiché et donner son interprétation.
i-dessous.
BR icf conversion_octet_ko(en_octet):
en_ko = en_octet / 100
seturn en_ke
stent 15 Programmation en Python
Ww
5
5
=
iS
=
5
Fa
=
EF
Fa
5
5
eS
“
a
=
Fd
Fa
Fy
s
a
2
=
fy
a
FS
=
3
é
Ea
5
=
=
=
5
FS
Es
Es
fs
5
5
]
“
a
=
iy
Fa
s
By
Fd
2
=
A
ry
3
a
=
es
|
CT OSS Grr LSC r Le Lucey
Un site d'impression de photos affiche les tarifs ci-contre.
On souhaite programmer un algorithme qui a pour plastic nes rope)
paramétre le nombre de photos a imprimer, a 1 poonnae Ce
et renvoie le prix de la commande. EE EC
© 1.8, Accéder a interface « Du langage par blocs & Python » sur le site lycee,editions-bordas.fr/
cahier-SNT, Saisir la fonction en blocs ci-dessous & Uaide du bouton @, puis la tester.
1 Recopier le programme correspondant écrit en langage Python.
. Entourer les mots-clefs du langage Python qui permettent d'exécuter des instructions
en fonction d'une condition donnée.
Sila commande est supérieure & 100 photos, une promotion de 10 % s'applique sur le prix du tirage.
© 2. Modifier le programme en blocs afin
de prendre en compte cette promotion.
Recopier ci-contre les instructions
supplémentaires en langage Python :
SACS aC a
‘Au cours de (année 2018, 1 800 exaoctets de données ont été échangées sur Internet. En 2019,
cette valeur est passée & 2 400 exaoctets, ce qui représente une augmentation d’environ 33 %.
© |. Accéder a Vinterface « Du langage par blocs 4 Python » sur le site lycee.editions-bordas.fr/
cahier-SNT. Saisir les fonctions en blocs suivantes en utilisant le bouton @ et les tester.
SS
@ 2. Avaide de Vatfichage, relier chaque mot-clé du langage Python a son utilisation :
for + répéter les instructions indentées un certain nombre de fois
wine * + répéter les instructions indentées tant que la condition est vraie,
On veut déterminer en quelle année la quantité de données échangées sur Internet aura triplé
par rapport & 2018, en considérant que (augmentation sera de 33 % tous les ans.
@ 3. Lequel des deux programmes précédents permet de résoudre le probléme ? Justifier.
‘WeneH Nein vanversales de progarmaton=
=
=
=
FS
=
Ei
FS
A
a
cy
s
2
FA
Ey
4
FA
£
FA
a
=
2
~
1%
Les exercices suivants sont réalisables sur calculatrice ou sur Uinterface Python disponible
sur la page web lycee.editions-bordas.fr/cahier-SNT, séquence 15.
Un récepteur GPS a recu, & 16 h 00 min Os 15 ms, le signal émis par un satellite
15h 59 min 59 5 910 ms. Le signal se propage a environ 300 000 km/s.
Enercice 1 / Distance entre un récepteur GPS et un satellite
© 1 Ecrire en tangage Python une fonction tenpsensecondes()) qui prend en argument un horaire
donné en heure, minute, seconde et milliseconde, et qui renvoie son équivalent en seconde.
© 2. Ecrire en langage Python une fonction distance() qui prend en arguments Uhoraire
d'arrivée du message et son horaire d’émission, en seconde, et qui renvoie la distance
parcourue par le signal, en kilométre.
© 3. interpréter le résultat I: distance( tenps_en_secondes(i5,59,59,910) , tenps_en_secondes(16,@,0,15)),
de Vinstruction ci-contre. 31499.99999877764
Exercice 2 / Conversion de coordonnées GPS
Pour un devoir, Enzo a besoin de convertir des coordonnées GPS données en degré décimal
[DD] en coordannées données en degré, minute, seconde (OMSI, et inversement. Pour exprimer
une coordonnée GPS, Uunité de base est le degré dangle (1 tour complet = 360°), puis la minute
dangle {1° = 60'), et la seconde dangle (1 = 60"). Par exemple, une latitude de 12,345 °0D]
correspond 8 12° 20° 42” [DMS].
© 1. Ecrire une fonction Python das Ja/decinale() qui prend en argument les valeurs en degré,
minute, seconde d'une coordonnée DMS, et qui renvoie la coordonnée GPS en degré décimal.
© 2. Ecrire une fonction Python decimateyaiéns() qui prend en argument les coordonnées GPS
(uniquement positives) en degré décimal, et renvoie les valeurs correspondantes en degré,
minute, seconde.
jessous.
S35 tine decinaie (42,26, 42)
12.348
© 3. Tester vos deux fonctions dans la console a 'aide des deux exemples
35) decimal a as(22. 345)
(12.8, 20.0, 42.0)
‘WeneH Nein vanversales de progarmatonExencice 3 / Promotion sur les appareils photo numériques is
Un site de vente en ligne propose une promotion sur les appareils photo numériques.
Si Cappareil cote moins de 100 €, la promotion est de 10%. Si appareil codte 100 € ou plus, la
promotion est de 20 %. Les frais de port de 10 € sont offerts si le montant de la commande, aprés
promotion (et hors frais de port], est supérieur & 150 €.
© Ecrire une fonction qui prend en argument
le prix initial de Vappareil photo, et qui
renvoie le prix final de la commande.
Latester pour différentes valeurs.
Enercice 4 / Trouver le bogue !
Lucas a lu que l'écran de son ordinateur affichait jusqu’a pte bitsWvalean)
16 millions de couleurs différentes, Pour savoir combien Mt een bts
de bits sont nécessaires pour coder autant de couleurs, nib_bits = nb_bits +1
bi
ila écrit la fonction Python ci-contre,
Cappel eonptelbites(16000008) renvoie 1. Lucas se rend compte qu’ily a un bogue dans
son programme.
© 1. Indiquer Vinstruction correcte a écrire 2, Combien de bits sont nécessaires
en troisiéme ligne de la fonction. pour coder 16 millions de couleurs ?
WY,
d’e eee
Noélle a regu 10 000 e-mails cette année, Elle a remarqué que chaque année, elle recoit 5 %
e-mails supplémentaires par rapport a Lannée précédente
© 1. Que permet de calculer ta fonction écrite 2. au’écrire dans la console Python afin
en langage Python ci-dessous ? d'afficher le nombre d’e-mails que Noélle
recevra dans six ans ?
0F palisnenbre, t, 9) :
for din range(a):
honbre = nonbre * (1 +t / 100)
3. Modifier la fonction #i35() afin qu'elle
renvoie le nombre total d’e-mails recus
par Noélle au cours de cette année
et les n années suivantes.
Suen 15 Programmation en than
=
=
=
=
Fa
=
Ei
FS
5
“
3
=
2
Fy
3
Fs
A
£
re
my
=
2
Vous aimerez peut-être aussi