We were unable to load Disqus. If you are a moderator please see our troubleshooting guide.

Anonymous • 1 week ago

Bonjour,
J' arrive pas trop à comprendre.
Par exemple dans l' exercice 1 du 3/132, il y a marqué qu' un nombre n sera donné automatiquement. Sauf que moi dans les instructions, il n'y a pas marqué à quoi correspond n. Dans les inscriptions, il y a marqué : Soustraire 3 à n et sauvegarder le résultat dans x. Ensuite, afficher x
Aidez-moi svp.

M_C • 20 hours ago

Bonjour,

Le fonctionnement n'est pas toujours évident au début.
Le but de la plupart des exercices est de créer une fonction (ici de n). Pour vérifier si votre réponse est juste, des tests vont être faits avec différentes valeurs de n pour voir si le résultat est bon. C'est pour cela qu'il est marqué que n sera donné automatiquement, ce n'est pas à vous de lui donner une valeur.

EvaBri • 4 days ago

Bonjour,

En toute première commande de votre programme, il faudra indiquer la valeur de n. C'est à vous de la choisir arbitrairement.

EL KHOLDI • 2 months ago

Bonjour,
Merci pour votre aide!
Comment modifie-t-on votre code sur la chronophotographie dans la cas d'une chute verticale en tenant compte seulement des valeurs Y, pour tracer la vitesse suivant Y ?
Cordialement
MEL KHOLDI

Sam27 • 3 months ago

Bonjour dans l'exo 1 (le Hello World), j'ai écrit cela (avec l'indentation) :
def ma_fonction(a,b):
print("Hello World")

Cependant en compilant, j'obtiens cette erreur ainsi qu'un échec :
Traceback (most recent call last):
File "Variables_et_fonctions/Hello_world_test.py", line 2, in <module>
from Prise_en_main_Exo_1 import mon_programme
ImportError: cannot import name 'mon_programme' from 'Prise_en_main_Exo_1' (/project/target/Variables_et_fonctions/Prise_en_main_Exo_1.py)

M_C • 2 months ago

Corrigé.

Merci pour la remarque

ilo2008 • 1 year ago

J'ai essayé le deuxième exercice avec le code suivant

from math import sqrt

def mon_programme(n):
#Ne pas toucher ce qui précède
#Les valeurs pour les variables en entrée seront automatiquement données
#Ecrire ci-dessous en n'oubliant pas d'indenter
a = (n+4)**3
print(a)
b = sqrt(a)
print(b)
c = a//n
print(c)
d = a%n
print(d)
e = (a+5)%(n-1)
print(e)
f = a*c*d*e
print(f)
# Appuyer sur Run pour recevoir les instructions

Mai j'ai eu cette erreur

Traceback (most recent call last):
File "Variables_et_fonctions/Programme_calcul1_Test.py", line 90, in <module>
if __name__ == "__main__": test()
File "Variables_et_fonctions/Programme_calcul1_Test.py", line 76, in test
mon_programme(n)
File "/project/target/Variables_et_fonctions/Programme_calcul1.py", line 9, in mon_programme
b = sqrt(a)
ValueError: math domain error

M_C • 1 year ago

Dans les tests, il y avait n=-5. Je l'ai retiré donc cela devrait marcher normalement.
Je n'avais pas vu l'erreur car j'avais utilisé la puissance 0.5 qui donne la valeur complexe et donc ne renvoie pas d'erreur.
Merci de m'avoir signalé le problème.

Paul Leroy • 4 days ago

Bonjour merci beaucoup pour ce cours très utile ! Je me pose désormais une question comment écrire un programme qui demande à l'utilisateur d'entrer une fonction polynôme de degré deux et qui affiche sa représentation graphique ?

Cordialement

M_C • 20 hours ago

Bonjour,

Le plus simple pour rentrer une fonction polynôme est de ne demander que ses coefficients. Deux possibilités :

- Soit utiliser la fonction input comme ceci par exemple : a=float(input("a=")) qui affichera a=? et on devra rentrer la valeur de a ce qui a le bon goût de rendre notre programme un peu intéractif. On fera attention au fait qu'utiliser input renvoie une chaine de caractère (même si on rentre la valeur 2). Il faudra donc le transformer en nombre en utilisant la fonction float.
- Soit mettre les valeurs a,b,c comme paramètres de la fonction ce qui est plus dans l'optique des nouveaux programmes de lycée. Cela correspond à créer une fonction comme ceci : def dessiner(a,b,c) : ...

Pour ce qui est de la représentation graphique, je renvoie à la partie cours sur matplotlib où un des exemples est justement une représentation d'une fonction du second degré.

EagleBlack • 2 weeks ago

Bonjour,j'ai remarquer une erreur des le QCM numéro 10 de la partie 11/132
On demande de cochez les cases correspondant au numéro des lignes qui vont afficher True dans ce code:
texte = "Un chasseur sachant chasser doit savoir chasser sans son chien."
print("ch" in texte)
print("chant" in texte)
print("Un chien" in texte)
print("r s" in texte)
print("u" in texte)
je ne donnerais pas la réponse mais je demanderais au modérateur d'y jeter un coup d’œil et de vérifier le code car en testant moi même le code je n'est pas trouver ce que le site m'indiquais comme réponse.

M_C • 20 hours ago

Corrigé, je vous remercie.

EagleBlack • 2 weeks ago

Bonjour dans l'exercice 1 de la partie 6/132 je dois calculer 3a+1 et 2a-b et sauvegarder le résultat dans a et b respectivement. Ensuite, afficher a et b sur une seule ligne, séparés d'un espace. mais en entrant mon code que voici:
def mon_programme(n):
#Ne pas toucher ce qui précède
#Les valeurs pour les variables en entrée seront automatiquement données
#Ecrire ci-dessous en n'oubliant pas d'indenter
a = n+n
print(n)
a += 5
print(a)
b = n**2
print(b)
b, a = a, b
print(a,b)
a, b = 3*a+1, 2*a-b
print(a,b)
pass
# Appuyer sur Run pour recevoir les instructions

l'instruction est Calculer le double de n et sauvegarder le résultat dans a. Ensuite, afficher a c'est la premiere instruction qui doit etre realiser et que j'ai deja faite.
Pouvez vous m'aider svp

M_C • 20 hours ago

Bonjour,

Le premier print n'est pas bon. Il faut afficher a et non n

jimi2bb • 2 weeks ago

bonjour
dans la partie 7/130 exercice 2, la consigne est :
Ecrire un programme qui prend en entrée une température t et qui affiche l'état de l'eau à cette température c'est à dire "SOLIDE", "LIQUIDE" ou "GAZEUX".
le pgrm doit "afficher" mais il faut "retourner" pour passer les test!! il y a donc une confusion qu'il faudrait lever.
bonne journée

M_C • 2 weeks ago

Merci pour la remarque, je corrige de suite.

TagouguiAnis • 3 weeks ago

bonsoir
svp est ce que je peux avoir le pdf de ce cours ?

YvelGYYY • 3 weeks ago

bonjour dans l'exercice 1 du 5/147 en entrant ceci :

from math import *

def mon_programme(n):
#Ne pas toucher ce qui précède
#Les valeurs pour les variables en entrée seront automatiquement données
#Ecrire ci-dessous en n'oubliant pas d'indenter
pass
# Appuyer sur Run pour recevoir les instructions
a=n+pi
print(a)

on m'affiche cela :
Attention , vous utilisez le nom 'n' alors qu'il n'est pas défini
En général, c'est soit une erreur de frappe soit que vous n'avez pas créé votre variable ou fonction avant de l'utiliser.

or , dans le premier exercice de ce type "n" n'avait pas besoin d'être défini

sauf erreur de ma part je crois qu'il y a un soucis

M_C • 2 weeks ago

Bonjour,

C'est simplement une erreur d'indentation. Le a=n+pi et le print(a) doivent être décalé au même niveau que les #

Nico • 3 weeks ago

Salut!

J'essaye d'aider ma femme à faire un programme en python, mais je n'ai aucune base en python autre que ce que j'ai lu à droite à gauche.
Le programme doit définir une fonction, qui remplit une liste de valeurs entières aléatoires comprises entre 0 et 20 (bornes incluses).
La longueur de la liste est donnée en entrée.
On doit utiliser la fonction randint du module random.
On doit écrire un programme principal qui demande à l'utilisateur combien il souhaite avoir de valeurs pour générer une liste d'autant de valeurs aléatoires que souhaitées par l'utilisateur en appelant la fonction définie auparavant et afficher.

Moi j'ai fait:

def tirage (nbtirage) :

val = []
nbdeval = int(input("combien de valeurs voulez-vous?"))
for i in range(0, nbdeval):
val.append(input(random.randint(0, 20)))

print (val)

Mais c'est pas bon du tout ^^.
J'espère que vous trouverez le temps de me répondre!

Amicalement.

Nico • 3 weeks ago

J'ai changé ma fonction. elle ne marche toujours pas mais je sens que je ne suis pas loin:

# script tirage.py

def tirage_multiple_de(nbtir):

nbtir = int(input("combien de tirages voulez-vous?"))
return nbtir

def tirage_multiple_de(nombretirage):
#Retourne une liste de nombres entiers aléatoires entre 0 et 20
import random
resultat = [random.randint(0, 20) for i in range(nombretirage)] # compréhension de listes (Cf. annexe)
return resultat

# début du programme
print(tirage_multiple_de(nbtir))

M_C • 3 weeks ago

Bonjour,

Je ferais comme ceci :

from random import randint
def tirage(longueur):
return [randint(0,20) for n in range(longueur)]

et pour l'utiliser : print(tirage(10)) pour afficher une liste de longueur 10

Je ne comprends pas trop, dans votre programme l'interêt de redemander la valeur de nbtir avec input. Soit on donne nbtir en entrée de la fonction, soit on utilise input mais pourquoi faire les deux ?

Poolp21 • 4 weeks ago

Si jamais des gens sont intéressé, j'ai compilé toutes les commandes vu dans les chapitre 1/147 à 21/147 dans un PDF afin de faciliter les exercices par la suite (c'est plus simple de retrouver sa commande dans un 9 pages que de remonter tout le cours :p).
En tout cas GG pour ce boulot titanesque, j'attaque sérieusement les exercices et j'ai même déjà pu résoudre des problèmes du Projet Euler !

GIJane • 1 month ago

Bonjour,
Merci beaucoup pour ces cours, ils sont très clairs !
J'ai un petit soucis dans le cours 7 sur les conditions. Dans le premier exercice, j'ai mis ça :
def ma_fonction(x):
#Ne pas toucher ce qui précède
#Les valeurs pour les variables en entrée seront automatiquement données
#Ecrire ci-dessous en n'oubliant pas d'indenter
if x==0:
print("Impossible")
else:
print(1/x)

Quand je clique sur "Run", ça affiche ça :
Standard Output
SOLIDE
Oops!
En testant les valeurs -10 le résultat obtenu est None au lieu de SOLIDE

A quoi est dû le problème de "None" ?

M_C • 1 month ago

Bonjour,

C'est simplement car vous avez utilisé la fonction print au lieu de return

Fidele Kayokela • 1 month ago

Bonjour!
J'ai commence a apprendre Python sur ce site il y a peu de deux semaines.
Pour l'instant, je suis bloque aux exercices de "complements de chaines de caracteres" (12/147)

Que puis-je faire, vu que ma solution ne tiens pas.
Exercice 2
Pour le texte donné dans la fenêtre ci-dessous, créer un programme qui, pour chaque lettre du texte, affiche la lettre suivante dans l'alphabet.

Quelques compléments :

Pour le "z", on affichera "a".
Le texte n'est composé que de lettres minuscules et sans accent.
Pour l'affichage, on utilisera print et chaque lettre sera affichée en allant à la ligne.

texte = "azqcoiihcvobzerajzasoijixbougroizaziabxbncpvirizojasgpoofoabsvhcvxihosaojqxxbbxhjvvwiyagslxmxciabnxqlahxgavvwcbavvwcgsioidhkkgcgkjzbnvxgcahgcxaxgjhxwglja"
compt=0
for el in texte:
____numero = 0
____for numero in range(26):
________result = (chr(ord("a") + numero))
____numero +=1
____print (texte.replace(result, el))

M_C • 1 month ago

Bonjour,

Pour chaque lettre du texte il faut la remplacer par la suivante et l'afficher directement. Le texte.replace modifie tout le texte c'est à dire aussi les lettres précédentes déjà modifiées et celles pas encore modifiées. De plus, j'ai l'impression que votre code ne prend pas en compte le problème avec "z" qui doit être remplacé par "a"

Fidele Kayokela • 1 month ago

Bien merci pour votre reponse, mais ceci ne semble pas eclaircir ma voix vers la solution. Que suggeriez-vous que je fasse?

Merrion • 2 months ago

Quelle est la solution pour le dernier exercice de la leçon 11, le programme qui affiche l'indice de tous les "e" dans un texte?

(Est-ce qu'il y aurait d'ailleurs à disposition la solution de tous les exercices?)

Merrion • 2 months ago

Même question mais pour le dernier exercice de la leçon 12...

Swirly • 2 months ago

Merci énormément pour ce travail colossal.
Vous hébergez les sources du playground sur GIT ? Vous y accepteriez des push request ?

Elwithien • 3 months ago

Bonjour, dans l'exo 1 de la leçon 9/144 j'utilise ce code :

def ma_fonction(liste):
for nb in liste:
if nb == 0:
return "0 trouvé"
else:
return "0 non trouvé"

mais j'ai droit à "échec, essayez à nouveau". Pourtant le code fonctionne sous idle.
Où est mon erreur ?

M_C • 3 months ago

Bonjour,
Votre programme est tout à fait correct, c'est simplement le script de vérification qui ne lançait pas d'erreur car j'avais prévu un test sur une liste trop grande et se contentait d'afficher la barre en rouge. C'est normalement corrigé.
Merci pour votre commentaire, n'hésitez pas à me signaler d'autres bugs si vous en croisez.

Elwithien • 3 months ago

avec l'indentation ça donne :
def ma_fonction(liste):
__for nb in liste:
____if nb == 0:
______return "0 trouvé"
__else:
____return "0 non trouvé"

M_C • 3 months ago

Je vais modifier énormément ce recueil d'exercices durant tout l'été pour qu'il soit opérationnel pour la rentrée.
Je m'excuse par avance pour les désagréments que cela pourrait apporter.
N'hésitez pas à me signaler les erreurs que vous rencontrez

Anonymous • 8 months ago

J'ai réussi a faire le premier exercice , merci pour les explications !

Anonymous • 5 months ago

comment on fait? j'y arrive pas!