Étant donné 4 nombres à virgule flottante. Utilisez une expression de formatage de chaîne avec des spécificateurs de conversion pour afficher leur produit et leur moyenne sous forme d'entiers (arrondis), puis sous forme de nombres à virgule flottante.
Sortez chaque entier arrondi en utilisant ce qui suit : print('{:.0f}'.format(your_value))
Générez chaque valeur à virgule flottante avec trois chiffres après la virgule décimale, ce qui peut être réalisé comme suit : print('{:.3f}'.format(your_value))
Ex : Si l'entrée est :
8,3 10,4 5,0 4,8
Cela renvoie :
2072
7
2071.680
7.125
Devrait être:
2072 7 2071.680 7.125
Mon code :
num1 = float(input())
num2 = float(input())
num3 = float(input())
num4 = float(input())
avg = (num1 + num2 + num3 + num4) / 4.0
product = (num1 * num2 * num3 * num4)
print('{:.0f}'.format(product, end = ' ')), print('{:.0f}'.format(avg))
print('{:.3f}'.format(product, end = ' ')), print('{:.3f}'.format(avg))
Solution du problème
Quelques soucis avec ça...
Tout d'abord, vous ne transmettez pas réellement la valeur de fin à l'instruction print, la syntaxe est la suivante.
print(item.format(), end="")
Deuxièmement, la raison pour laquelle vous ajoutez 2 impressions par ligne n'est pas très claire. Vous appelez également une fonction d'impression à l'intérieur d'une autre impression, si nous simplifions votre code pour qu'il contienne simplement x
où vous passez quelque chose à imprimer, cela ressemblerait à ceci :
print(x, print(x))
Vous pouvez tout aussi facilement les ajouter tous à un seul relevé d'impression comme suit :
print('{:.0f}'.format(product, end = ' '), '{:.0f}'.format(avg), '{:.3f}'.format(product),'{:.3f}'.format(avg))
Aucun commentaire:
Enregistrer un commentaire