Python integer Problem !



  • Hallo
    ich kann die Sprachen c++/c jetzt hab ich mit Python angefangen.
    Ich schreibe ein Programm was die Zahl die ich denke herausfindet
    zwischen 1 - 1000. Dabei stellt er mir fragen er darf nicht mehr als
    10 stück fragen stellen.

    hi = 1000
    lo = 0
    mit = int((hi+lo)/2)
    
    while True:
        mit = (hi+lo)/2
        print("Hallo ist die Zahl " , mit , " ?  \n")
        a = input()
        if a == 'h':
            lo = mit
    
        if a == 'k':
            hi = mit
    
        if a in ('j', 'ja'): break
    
    print("Super, Sie haben die Zahl gefunden ",mit, "\n")
    

    Mein frage :
    Wieso ist jetzt mit kein Integer? Es wird auch nach dem Komma angezeigt ....
    Das will ich nicht und verbesserungs vorschlaege waeren auch gut.



  • Python ist dynamisch typisiert, das heisst, der Typ einer Variablen kann sich während der Laufzeit eines Programms ändern. In Zeile 3 (die Du übrigens ersatzlos streichen kannst) weißt Du mit einen int zu, in Zeile 6 einen float (oder wie Python das auch immer nennt).



  • Du kannst das ergebnis mit int() in einen integer umwandeln

    mit = int((hi+lo)/2)
    

    so wie du es oben gemacht hast



  • Du kannst weder C, noch C++.



  • mit = (hi+lo)//2 .



  • PI hat geschrieben:
    [quote]Du kannst weder C, noch C++.[code]

    Musst du immer so herzzerreißend sein? Lass ihm doch die Illusion ...


Anmelden zum Antworten