مشاركة حلول: تجنب النسخ واللصق باسخدام الدوال

الخطأ هو IndentationError: unindent does not match any outer indentation level
يعني من الممكن انك خلطتي بين Tab and space يجب ان تستخدمي احداهما وليس خليط منهم.
في بايثون يفضل ان تستخدمي 4 مسافات بدل من Tabs

2 Likes

بعد التعديل :star_struck: :sweat_smile:

mony = 500
def ATM(mony, request):
   print('Mony in  the ATM =',mony,'$')
   print('Your request =',request,'$')
   if request > mony:
        print('the mony in the ATM not enough ')
   elif request < 0:
        print('please enter the mony you need')
   else:
    result=mony-request
    while request > 0:
      if request >= 100:
          request-=100
          print('give 100$') 
      elif request >= 50:
          request-=50
          print('give 50$')      
      elif request >= 10:
          request-=10
          print('give 10$')      
      elif request >= 5:
          request-=5
          print('give 5$') 
      elif request < 5:
              print("give " + str(request))
              request = 0
             

   print('')
   return result                
mony = ATM(mony, 277)
mony = ATM(mony, 50)
mony = ATM(mony, 100)
mony = ATM(mony, 70)


print('Remaining Mony In The ATM = ',mony,'$just')

2 Likes

اللغة حلووه واسهل من c++ لكن موضوع المسافات متعب شويه :sweat:

2 Likes

نعم اسهل بكثير c++ بتخوفني :fearful:
موضوع المسافات هذا يجعل الكود جميل ومقروء , بس تعودي على انك تستعملي ال Space
بالمناسبة في اي محرر نصوص موجود عندهم ان يحولك ال Tab الى مسافة
يعني مثلا تضغطي ع Tab يحولها الى 4 مسافات , افضل من الضغط 4 مرات على Space :grin:

2 Likes

:star_struck:اووكي :+1:

2 Likes
def withdraw(balance, request):
    print('the balance is',balance)
    
    if request > balance:
        print("Can't give you all this money !!")

    elif request < 0:
        print("More than zero plz!")

    else:
        remainder=balance-request
        while request > 0:

            if request >= 100:
                request -= 100
                print("give 100")

            elif request >= 50:
                request -= 50
                print("give 50")

            elif request >= 10:
                request -= 10
                print("give 10")

            elif request >= 5:
                request -= 5
                print("give 5")

            elif request < 5:
                print("give " + str(request))
                request = 0
        return remainder
balance = withdraw(balance,277)
balance = withdraw(balance,30)
balance = withdraw(balance,5)
balance = withdraw(balance,500)
2 Likes

عمل ممتاز اسيل :clap:

بعض الملاحظات

لقد نسيتي ان تعطي قيمة بدائية للمتغير balance الان الكود يعطي error

NameError: name 'balance' is not defined

شيء اخر يفضل ان ضعي سطرين فارقين بين تعريف الدالة والكود اللذي بالاسفل . مثال

def function():
   # code


var = 'something'

1 Like

شكرا على الملاحظات… الظاهر عند لصق الكود ضاع مني السطر الاول

2 Likes
balance = 500
def withdraw(balance, request):

    print('the balance is',balance)
    
    if request > balance:
        print("Can't give you all this money !!")

    elif request < 0:
        print("More than zero plz!")

    else:
        remainder=balance-request
        while request > 0:

            if request >= 100:
                request -= 100
                print("give 100")

            elif request >= 50:
                request -= 50
                print("give 50")

            elif request >= 10:
                request -= 10
                print("give 10")

            elif request >= 5:
                request -= 5
                print("give 5")

            elif request < 5:
                print("give " + str(request))
                request = 0
        return remainder
balance = withdraw(balance,277)
balance = withdraw(balance,30)
balance = withdraw(balance,5)
balance = withdraw(balance,500)
2 Likes

عمل ممتاز :ok_hand: و النسخ واللصق دائما بيجيب لنا اخطاء :tired_face:

2 Likes

@ahmedalrifai

def withdraw(balance, request):

    if request > balance:
        print("Can't give you all this money !!")

    elif request < 0:
        print("More than zero plz!")

    else:
        while request > 0:

            if request >= 100:
                request -= 100
                print("give 100")

            elif request >= 50:
                request -= 50
                print("give 50")

            elif request >= 10:
                request -= 10
                print("give 10")

            elif request >= 5:
                request -= 5
                print("give 5")

            elif request < 5:
                print("give " + str(request))
                request = 0
            return balance-request
balance = 500
print("request number1")
balance = withdraw(balance, 277)
print("request number2")
balance = withdraw(balance, 30)
print("request number3")
balance = withdraw(balance, 5)
print("request number4")
balance = withdraw(balance, 500)

2 Likes

عمل ممتاز اسراء :clap:

بس عندي ملاحظة بسيطة

بعد تعريف الدالة يفضل ان تضعي سطرين ثم الكود الذي يستدعيها بهذه الطريقة

def function():
   # code


var = 'something'

2 Likes

مراجعة أكوادك من قبل المدربين المختصين متاحة فقط للمسجلين في مخيم كورتابز :point_left: coretabs.net