exercice ioi programme "Origami"

Publié le 8 nov. 2019 il y a 4A par lisa21 - Fin › 30 nov. 2019 dans 4A
5

Sujet du devoir

Bonjour j'ai beaucoup de difficulter sur ioi un site pour apprendre le language de "Python" et je suis bloquer au niveau 2 le premier problème je vous le met ci-dessous. J'aimerais que vous m'aidiez a le comprendre. Merci d'avance

PS : Je pense vous demander beaucoup de fois car j'ai regarder un petit peut les suivant et j'ai du mal ! merci d'avance encore et bon courage pour le comprendre ! (mdr)

 

Des enfants découvrent les joies de l'origami (créer des objets en pliant une feuille de papier), et l'un d'eux s'amuse à replier sur elle-même une feuille le plus de fois possible. Il pense qu'il peut replier la feuille en deux 15 fois de suite !

Vous pressentez que cela risque fort d'être impossible. Pendant qu'il essaie, vous décidez de calculer l'épaisseur qu'aurait son pliage final si par hasard l'enfant arrivait à atteindre son objectif.

Ce que doit faire votre programme :

L'épaisseur d'une feuille de papier est de 110 micromètres c'est à dire 0,110 millimètres. Si on la plie 15 fois sur elle-même et que l'épaisseur double à chaque fois, quelle sera l'épaisseur finale si on l'exprime en centimètres ? Votre programme devra calculer et afficher cette valeur (qui n'est pas forcément entière).



Nombres à virgule

Afficher un nombre à virgule

En Python, les nombres à virgules (ou nombres décimaux) ne s'écrivent pas avec une "virgule" mais avec un "point", comme le font les anglais ou les américains. Ainsi, si on veut afficher le nombre "3,14" on va écrire le programme suivant :

print(3.14)
3.14

Déclarer un nombre à virgule

Pour affecter à une variable une valeur décimale (c'est-à-dire non entière), ou pour faire des calculs, on fait comme pour les entiers.

prixJeu =29.99
prixConsole =299
print(prixJeu +prixConsole -49.95)
279.04



1 commentaire pour ce devoir


thomas4085
thomas4085
Posté le 8 nov. 2019

Hello !

 

Ici, on veut savoir l'épaisseur de la feuille après le 15e pliage. On se pose alors la question : si on appelle e0 l'épaisseur au début, à quoi est égale l'épaisseur e1 après 1 pliage ? Et l'épaisseur e2 en fonction de e1 ?

On voit alors apparaître quelque chose d'intéressant : si on nomme ek l'épaisseur après le k-ième pliage, on remarque que e(k+1) = ____ek. Maintenant, on part côté Python. Il faudrait un programme dans lequel on rentre l'épaisseur e0, et qui répète 15 fois une même multiplication. Quelle structure on pourra utiliser (sachant que celles qu'on connaît sont les tests logiques (if) et les boucles (for / while) ? Quelles instructions on met dans la boucle ?

 

Voilà, j'espère que ça t'aidera. N'hésite pas à me dire s'il y a quoi que ce soit que tu ne comprends pas, et à poster le code que tu proposes (ou au moins l'algorithme en français avant de le passer en Python).

Bon courage !


Ils ont besoin d'aide !

Il faut être inscrit pour aider

Crée un compte gratuit pour aider

Je m'inscrisOU

J'ai déjà un compte

Je me connecte