Problème python connaitre le nombre de le plus grand
Résolu/Fermé
Luten
-
Modifié le 21 févr. 2022 à 17:55
yg_be Messages postés 23277 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 octobre 2024 - 21 févr. 2022 à 21:07
yg_be Messages postés 23277 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 octobre 2024 - 21 févr. 2022 à 21:07
A voir également:
- Problème python connaitre le nombre de le plus grand
- Excel trier du plus grand au plus petit - Guide
- Citizen code python - Accueil - Outils
- Le fichier est trop grand pour le système de fichier de destination ✓ - Forum Windows
- Python retour à la ligne dans le code - Forum Python
2 réponses
yg_be
Messages postés
23277
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 octobre 2024
Ambassadeur
1 546
21 févr. 2022 à 18:15
21 févr. 2022 à 18:15
bonjour,
une technique habituelle, c'est de mémoriser le plus grand nombre observé jusqu'à présent.
une technique habituelle, c'est de mémoriser le plus grand nombre observé jusqu'à présent.
mamiemando
Messages postés
33325
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 octobre 2024
7 798
Modifié le 21 févr. 2022 à 20:17
Modifié le 21 févr. 2022 à 20:17
Bonjour,
La méthode proposée par yg_be est la plus naturelle et la plus simple.
Une autre manière de faire plus propre serait de distinguer le calcul des termes de ta suite et ce que tu en fais (libre à toi de faire un print à chaque itération, ou de l'envelopper dans la fonction
Pour cela il faut simplement envelopper ton calcul de sorte à en faire un générateur, c'est-à-dire quelque chose sur lequel on peut itérer e.g. avec une boucle
Exemple :
Résultat :
Bonne chance
La méthode proposée par yg_be est la plus naturelle et la plus simple.
Une autre manière de faire plus propre serait de distinguer le calcul des termes de ta suite et ce que tu en fais (libre à toi de faire un print à chaque itération, ou de l'envelopper dans la fonction
max()).
Pour cela il faut simplement envelopper ton calcul de sorte à en faire un générateur, c'est-à-dire quelque chose sur lequel on peut itérer e.g. avec une boucle
for.
Exemple :
def f(): x = 5 while x != 1: if x % 2 == 1: x = x * 3 + 1 else: x = x / 2 yield x print("-" * 78) print(max(f())) print("-" * 78) for y in f(): print(y)
Résultat :
------------------------------------------------------------------------------
16
------------------------------------------------------------------------------
16
8.0
4.0
2.0
1.0
Bonne chance
yg_be
Messages postés
23277
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 octobre 2024
1 546
21 févr. 2022 à 21:07
21 févr. 2022 à 21:07
dommage de faire deux itérations.
heureusement, dans ce cas, cela ne coûte presque rien.
heureusement, dans ce cas, cela ne coûte presque rien.