Bader Aljabri نشر 11 نوفمبر 2021 أرسل تقرير نشر 11 نوفمبر 2021 weight=input("your weight ?") tall=input("your tall ? ") age=input("your age ? ") BMR= 10*weight+6 *tall-5*age+5 print(BMR) لدي خطاء في الامر(BMR ) مع العلم انا استخدام لغة python اتمنى تصحيح الخطاء 2 اقتباس
0 شرف الدين حفني نشر 11 نوفمبر 2021 أرسل تقرير نشر 11 نوفمبر 2021 هذا الخطأ بسبب أن الدالة input تقوم بقراءة القيمة من المُستخدم على هيئة نص ( string) وما تحاول فعله من عمليات حسابية مثل الضرب والجمع والطرح يجب أن يتم على أرقام وليس نصوص, لذا يجب تحويل المدخلات من المُستخدم إلى أرقام ويمكن أن يتم ذلك عبر الدالة int() والتي تعمل بالشكل التالي number = int(string) والتي يمكن تطبيقها في حالتك لتصبح بالشكل التالي weight = int(input("what your weight ?")) لتصبح الشفرة البرمجية بالشكل النهائي التالي weight = int(input("your weight ? ")) tall = int(input("your tall ? ")) age = int(input("your age ? ")) BMR= 10*weight+6 *tall-5*age+5 print(BMR) اقتباس
1 سامح أشرف نشر 11 نوفمبر 2021 أرسل تقرير نشر 11 نوفمبر 2021 يمكنك أيضًا أن تتحقق من المدخلات من خلال جملة Try .. Except، لأن المستخدم قد يدخل أحرف وليس أرقام، كالتالي: def user_input(message): while True: try: return int(input(message)) except ValueError: print('please enter an integer') age = user_input('your age: ') weight = user_input('your weight: ') tall = user_input('your tall: ') BMR = (10 * weight) + (6 * tall) - (5 * age) + 5 print(BMR) بهذه الطريقة إن قام المستخدم بإدخال قيمة غير عددية سوف يتم الطلب منه أن يقوم بإدخال رقم صحيح. 1 اقتباس
السؤال
Bader Aljabri
لدي خطاء في الامر(BMR ) مع العلم انا استخدام لغة python اتمنى تصحيح الخطاء
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.