Aide exercice python

Résolu
jawhar -  
 PierrotLeFou -

Bonsoir,

J'ai besoin d'aide sur cet exercice s'il vous plaît. Je suis débutant et je découvre le python

Ecrire un programme permettant de saisir un entier positif n et un chiffre c (c>1) puis afficher combien de fois n est divisible par c.
Exemple : si n=40 et c=2 (40=2*2*2*5) donc le programme affiche la valeur 3

On a besoin d'utiliser la bouche tant que.

Voici mon essai.

n = int(input("n=")
while (not(n > 0)):
   n = int(input("n=")
 
c = int(input("c=")
while (not(1 < c <= 9)):
   c = int(input("c=")
 
nb = 0
while(n % c) != 0
   r = n % c
   nb = nb + 1
   n = n // c
print(n, "divisible", nb, "fois par", c)

2 réponses

  1. Smoodie
     

    Je ne pense pas avoir très bien compris mais j'ai tenté quelque chose, voila :

    n = int(input("Entrez un entier positif 'n' : "))
    c = int(input("Entrez un chiffre 'c' (supérieur à 1) : "))
    
    divisions = 0
    while n % c == 0:
        n = n / c
        divisions += 1
    
    print(f"{divisions} fois")
    
    1
  2. PierrotLeFou
     

    Plusieurs erreurs de syntaxe :

    n = int(input("n="))    # Il manque une )
    while (not(n > 0)):
       n = int(input("n="))   # Autre ) manquante
     
    c = int(input("c="))   # Encore )
    while (not(1 < c <= 9)):
       c = int(input("c="))   # Encore ...
     
    nb = 0
    sn = n   # Je sauve n dans sn
    while (n % c) == 0:   # Le : était absent, il faut mettre == au lieu de !=
       r = n % c   # Inutile
       nb = nb + 1
       n = n // c
    print(sn, "divisible", nb, "fois par", c)   # sn au lieu de n

    L'énoncé est suffisamment clair :

    • Ecrire un programme permettant de saisir un entier positif n et un chiffre c (c>1) puis afficher combien de fois n est divisible par c.
    • Exemple : si n=40 et c=2 (40=2*2*2*5) donc le programme affiche la valeur 3

    @Smoodie: c'est la bonne solution.

    0