Grundrechenarten Ergebnisanzeige

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
cxy123
User
Beiträge: 3
Registriert: Samstag 16. Mai 2015, 22:13

Hallo,

wenn ich in der IDLE

Code: Alles auswählen

13-5*2+12/6
berechne kommt als Ergebnis 5 heraus. In der IDLE wird aber 5.0 angezeigt. Wieso wird 5.0 und nicht 5 angezeigt? Wenn ich in der IDLE berechne kommt genau 5 heraus.

Für Hilfe wäre ich sehr dankbar.

Gruß

cxy123
BlackJack

@cxy123: Durch die Division hast Du ein Teilergebnis das keine ganze Zahl sondern eine Gleitkommazahl ist, womit dann auch das Endergebnis diesen Typ hat. Was letztlich aber vom Wert her keinen Unterschied macht. Denn es gilt ja 5.0 == 5 denn auch 5.0 ist genau 5 und nicht mehr oder weniger als das.

Edit: Wenn Du ganzzahlige Division haben möchtest, dann musst Du den entsprechenden Operator ``//`` statt ``/`` verwenden. Wobei da dann auch eine ganze Zahl heraus kommt wenn das Ergebnis bei ”echter” Division nicht ganzzahlig wäre. Die Nachkommastellen werden dann einfach abgeschnitten.
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

Und vielleicht auch noch wichtig zu wissen:

Code: Alles auswählen

Python 2.7.9 (default, Mar  1 2015, 12:57:24) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 12 / 5
2
>>> 12 / 5.0
2.4

Code: Alles auswählen

Python 3.4.2 (default, Oct  8 2014, 10:45:20) 
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 12 / 5
2.4
mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
Benutzeravatar
darktrym
User
Beiträge: 784
Registriert: Freitag 24. April 2009, 09:26

Besser man holt gleich division von __future__ und hat den gleichen Syntax und Verhalten.
„gcc finds bugs in Linux, NetBSD finds bugs in gcc.“[Michael Dexter, Systems 2008]
Bitbucket, Github
cxy123
User
Beiträge: 3
Registriert: Samstag 16. Mai 2015, 22:13

Danke für die Antworten.

Ich habe den Ganzzahldivisionsoperator // benutzt. Ich bekomme 5 jetzt auch als ganze Zahl heraus.

Gruß

cxy123
Antworten