مبدأيا كدا هو مش متعرف ع المتغي computer _result
ابعتي حضرتك الكود كله كدا …
import random
print(“welcom to the coin guessing game!”)
print(“choose a method to toss the coin:”)
print(“1.using random .random()”)
print(“2.using random.randint()”)
choice=input("enter your choice 1 or 2\n ")
if choice ==1:
random_number=random.random()
if random_number>= 0.5 :
computer_result =“heads”
else:
computer_result=“tails”
elif choice== 2:
if random.randint(0,1)==0:
computer_result=“heads”
else:
computer_result=“tails”
else:
print (“invalid choice.please select either1 or2”)
user_choice=input(“enter your guess (heads or tails)”)
if user_choice.lower()==computer_result.lower():
print(“you win”)
else:
print(“you lost”)
print(f"the computer’s coin toss result was :{computer_result}")
في الاثنين، ٧ أكتوبر ٢٠٢٤، ١:٣٦ م Abdelrahman Saber عبر أكتو كود تعلم البرمجة من الصفر <notifications@octucode1.discoursemail.com> كتب:
المشكله بسيطة جدااا…
حضرتك عارفه أنواع البيانات
وإن الفانكشن input بتاخد ايا كان المستخدم هيكتبه وترجعة علي انه نص string …
بالتالي لما شيكتي ع المتغير choice (ال مخزن فيه بيانات من نوع string) انه يساوي 1 —>>ال هو رقم integer … اكيد الشرط مش هيتحقق دا ال خلي بايثون تنزل ل else وتطبع ال تحتها وحدوث خطأ…
بالتالي محتاجين نحول المتغير ده ل integer او الرقم ل string ثم نشيك
الكود هيكون بالشكل دا
:"if choice == "2
او
:if int (choice) == 1