Comment connaître le résultat le plus proche
Lieusaint
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjours, je suis étudiant en 1er STI2D et je voulais connaître une formule mathématique qui permettes de calculer quelle est le nombre le plus proche entre 2 nombre. Mon objectif est de réaliser un programme pouvant dire quelle est le nombre le plus proche d'un dit chiffre. Par exemple si j'ai 18 et que les je veux savoir (entre 2 et 20) quelle est le nombre le plus proche. (a plus proche de x que b ou non)
A voir également:
- Comment connaître le résultat le plus proche
- Resultat foot - Télécharger - Vie quotidienne
- Comment envoyer de l'argent sur paypal a un proche - Guide
- Lexer resultat - Télécharger - Sport
- Les données fournies dans le fichier à télécharger peuvent être synthétisées par le tableau récapitulatif ci-dessous. dans le fichier, générez ce tableau automatiquement (tableau croisé dynamique ou table de pilote) à partir des quatre premières colonnes. il manque 5 valeurs dans le tableau ci-dessous. retrouvez-les dans votre tableau, puis reportez-les arrondies à l’entier le plus proche. - Guide
- 5/90 resultat ✓ - Forum Excel
2 réponses
Bonsoir.
1ère chose, enregistrer les valeurs à tester dans un itérable, ici un tuple.
Maintenant si l'on fait une soustraction de valeurs, on se retrouvera avec quelques valeurs négatives peu importe le sens choisi (2 - 15 ou 15 - 20), python propose une fonction pour convertir valeurs négatives en positives => abs
Donc on va calculer les différences de chaque nombre par rapport à x que l'on va enregistrer dans une liste.
Cette liste construite, on va en déterminer la valeur mini.
Il ne reste plus qu'à récupérer les indices de la liste "differences" dont les valeurs sont celles de la différence mini, et d'associer ces indices aux nombres.
On peut raccourcir tout cela en quelques lignes avec python
1ère chose, enregistrer les valeurs à tester dans un itérable, ici un tuple.
nombres = (2, 20, 10,) x = 15
Maintenant si l'on fait une soustraction de valeurs, on se retrouvera avec quelques valeurs négatives peu importe le sens choisi (2 - 15 ou 15 - 20), python propose une fonction pour convertir valeurs négatives en positives => abs
Donc on va calculer les différences de chaque nombre par rapport à x que l'on va enregistrer dans une liste.
differences = [] for nombre in nombres: differences.append(abs(x - nombre))
Cette liste construite, on va en déterminer la valeur mini.
difference_min = float('inf') for difference in differences: if difference < difference_min: difference_min = difference print('différence mini', difference_min)
Il ne reste plus qu'à récupérer les indices de la liste "differences" dont les valeurs sont celles de la différence mini, et d'associer ces indices aux nombres.
nombres_plus_proches_de_x = [] for i, difference in enumerate(differences): if difference == difference_min: nombre = nombres[i] nombres_plus_proches_de_x.append(nombre) print(nombres_plus_proches_de_x)
On peut raccourcir tout cela en quelques lignes avec python
difs = tuple(abs(x - n) for n in nombres) dif_min = min(difs) nombres_proches = tuple(nombres[i] for i, v in enumerate(difs) if v == dif_min) print(nombres_proches)
Et tu iras passer son bac à sa place?
Une des règles ici est qu’on ne fait pas les exercices à la place des demandeurs.
On attend qu’ils réfléchissent un peu par eux même, qu’ils proposent au moins un debit de solution et on les oriente s’il y a des corrections à apporter.
Là déjà https://forums.commentcamarche.net/forum/affich-36260371-algorithme-affichage-du-nombre-de-chiffre-d-un-entier-et-son-nombre-inverse#p36261305 tu en as trop fait
Une des règles ici est qu’on ne fait pas les exercices à la place des demandeurs.
On attend qu’ils réfléchissent un peu par eux même, qu’ils proposent au moins un debit de solution et on les oriente s’il y a des corrections à apporter.
Là déjà https://forums.commentcamarche.net/forum/affich-36260371-algorithme-affichage-du-nombre-de-chiffre-d-un-entier-et-son-nombre-inverse#p36261305 tu en as trop fait