« Programmation Python/Instructions répétitives » : différence entre les versions

Contenu supprimé Contenu ajouté
Tavernier (discussion | contributions)
solution
Tavernier (discussion | contributions)
solution
Ligne 287 :
 
* Soit le jeu de caractères accentués correspondant aux principales langues de l'Europe occidentale (Français, Italien, Portugais, etc.), codé sur un seul octet suivant la norme ISO-8859 ;
 
 
* Soit le système de codage mondial sur deux octets appelé Unicode (dont la variante Utf-8 ne code que les caractères « spéciaux » sur deux octets, les caractères du jeu ASCII standard restant codés sur un seul octet). Ce dernier système commence à se répandre de plus en plus, car il présente l'avantage de permettre la coexistence de caractères de toutes origines dans le même document (caractères grecs, arabes, cyrilliques, japonais, etc.).
 
Ligne 315 ⟶ 313 :
*******
</pre><li>
</ol>
{{Solution}}
<ol>
<li>Réfléchissez !</li>
<li>
<pre>
# Le nombre de secondes est fourni au départ :
# (un grand nombre s'impose !)
nsd = 12345678912
# Nombre de secondes dans une journée :
nspj = 3600 * 24
# Nombre de secondes dans un an (soit 365 jours -
# on ne tiendra pas compte des années bissextiles) :
nspa = nspj * 365
# Nombre de secondes dans un mois (en admettant
# pour chaque mois une durée identique de 30 jours) :
nspm = nspj * 30
# Nombre d'années contenues dans la durée fournie :
na = nsd / nspa # division <entière>
nsr = nsd % nspa # n. de sec. restantes
# Nombre de mois restants :
nmo = nsr / nspm # division <entière>
nsr = nsr % nspm # n. de sec. restantes
# Nombre de jours restants :
nj = nsr / nspj # division <entière>
nsr = nsr % nspj # n. de sec. restantes
# Nombre d'heures restantes :
nh = nsr / 3600 # division <entière>
nsr = nsr % 3600 # n. de sec. restantes
# Nombre de minutes restantes :
nmi = nsr /60 # division <entière>
nsr = nsr % 60 # n. de sec. restantes
 
print "Nombre de secondes à convertir :", nsd
print "Cette durée correspond à", na, "années de 365 jours, plus"
print nmo, "mois de 30 jours,",
print nj, "jours,",
print nh, "heures,",
print nmi, "minutes et",
print nsr, "secondes."
</pre>
</li>
<li>
<pre>
 
# affichage des 20 premiers termes de la table par 7,
# avec signalement des multiples de 3 :
 
i = 1 # compteur : prendra successivement les valeurs de 1 à 20
while i < 21:
# calcul du terme à afficher :
t = i * 7
# affichage sans saut à la ligne (utilisation de la virgule) :
print t,
# ce terme est-il un multiple de 3 ? (utilisation de l'opérateur modulo) :
if t % 3 == 0:
print "*", # affichage d'une astérisque dans ce cas
i = i + 1 # incrémentation du compteur dans tous les cas
</pre>
</li>
<li>Réfléchissez !</li>
<li>Réfléchissez !</li>
</ol>
{{fin}}