+ 1

Guys can anybody pin point what is wrong?

When I enter a value in p1 like 10 or 1000 and a value of 9 in p2 I always get that p2 in bigger than p1! https://code.sololearn.com/ciqFE5g3F5zM/?ref=app

11th Aug 2017, 10:35 PM
Ahmad Nahhas
4 Respuestas
+ 3
You're very much correct Maz on needing to change lines 1-2 (surround both inputs with an int() function), no worries. Otherwise it simply compares the strings, not the value itself. ^^ The individual character comparison is done on the Unicode level from what I understand. Here's your code again Author, I also added proper indentation. p1 = int(input()) p2 = int(input()) if p1 > p2: print("player 1 won the game") else: if p2 > p1: print("player 2 won the game") x = input("do you want a rematch? ") print(x) if x == "yes": print("game will start shortly.") if x == "no": print("game over, see you next time. ")
11th Aug 2017, 10:57 PM
Sapphire
+ 12
I do not know how Python considers strings comparison, but you did not convert your input in numbers and Python manage them as normal strings (probably making a comparison with their ASCII values) Replace your first two lines with: p1=int(input()) p2=int(input()) ... or this other one to manage float numbers: p1=float(input()) p2=float(input())
11th Aug 2017, 10:41 PM
Maz
Maz - avatar
+ 1
Thnx saphire :)
11th Aug 2017, 10:58 PM
Ahmad Nahhas
0
Thanks alot, that was a big help.
11th Aug 2017, 10:51 PM
Ahmad Nahhas