Programme avec partie entière et logarithme

narrowdu89 Messages postés 2 Statut Membre -  
 Utilisateur anonyme -
Bonjour,
alors voilà j'essaye de corriger mon ds d'info et je bloque sur la création d'un programme, le prof nous ayant pas encore donné la correction
voilà l'énoncé :

écrivez un script en langage python permettant de montrer les couples d'entier (m,n) avec 2=<m<n=<28 tels que m^n et n^m ont le même nombre de chiffres.
on commencera par prouver que le nombre de chiffres d'un entier N de N* est (partieentière(log(N)))+1
en python, la partie entière d'un nombre s'écrit floor(x) et le logarithme décimal log10(x)

from math import floor
from math import log10

L=[2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28]

for e in L:
    for i in L:
        if floor(log10(e^i))+1==floor(log10(i^e))+1 is True:
            print(e,i)


voilà ce que j'ai fait mais je ne sais pas comment continuer
merci d'avance pour vos indications

1 réponse

  1. Utilisateur anonyme
     
    Bonjour

    on commencera par prouver que le nombre de chiffres d'un entier N de N* est (partieentière(log(N)))+1

    L'as tu fait?

    d'entier (m,n) avec 2=<m<n=<28

    Pourquoi les appeler e et i dans ton code ?
    La condition est-elle bien respectée?

    0
    1. narrowdu89 Messages postés 2 Statut Membre
       
      merci pour ta réponse rapide

      Je ne sais pas comment faire pour prouver
      Je pensais qu'on pouvait uniquement utiliser e et i dans les boucles for
      De quelle condition parles tu ?
      0
    2. Utilisateur anonyme
       
      Je ne sais pas comment faire pour prouver
      ok, mais il va te falloir y réfléchir, ça fait parti de ton énoncé.

      Je pensais qu'on pouvait uniquement utiliser e et i dans les boucles for
      non, tu peux même utiliser papa et maman, mais comme ton énoncé parle de m et n, c'est plus simple pour suivre non?

      De quelle condition parles tu ?
      m < n

      En outre
      if toto == tata:
      suffit pas la peine de rajouter is True
      Tant qu'on est dans la simplification, si X+1 égal Y+1, peut on dire que X = Y?

      Et enfin la puissance c'est pas ^, une petite recherche te permettra de trouver le bon opérateur.
      0