اطلاعیه

Collapse
No announcement yet.

درصد گیری ار یک متغییر(مشکل بر طرف شد)

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    درصد گیری ار یک متغییر(مشکل بر طرف شد)

    سلام.

    من یه متغییر دارم به نام b که داخلش یه عددی هست که این عدد به صورت نزولی تا صفر بر روی lcd نمایش داده میشود.

    که من میخوام وقتی مقدار عدد به 75% مقدار اولیه رسید بر روی lcd نمایش دهم 75% اگه به 50 درصد رسید به همین صورت و 25 % هم یه همین صورت.

    این برنامه رو نوشتم ولی جواب نمیده.

    B1 = B
    Zarb = B1 * 75
    D75 = Zarb / 100

    Zarb = B1 * 50
    D50 = Zarb / 100

    Zarb = B1 * 25
    D25 = Zarb / 100

    و در روتین برنامه دستور if رو به این صورت نوشتم :
    If B = D75 Then
    Locate 2 , 7
    Lcd "75%"
    End If
    If B = D50 Then
    Locate 2 , 7
    Lcd "50%"
    End If
    If B = D25 Then
    Locate 2 , 7
    Lcd "25%"
    End If

    اگه میشه ببینید مشکل برنامه چیه یا یه مثال خودتون بزنید :agree:
    www.icesi.ir

    #2
    پاسخ : درصد گیری ار یک متغییر

    میلاد جان متغیرها رو از چه نوعی تعریف کردی؟
    این خیلی مهمه و فکر می کنم ایراد از همین باشه. می تونی تو سیمولاتور بیسکام خط به خط اجرا کنی و ببینی هر لحظه تو متغیرها چه مقداری هست.

    دیدگاه


      #3
      پاسخ : درصد گیری ار یک متغییر

      خودت ببینی بهتره

      Dim B1 As Byte
      Dim D100 As Byte
      Dim D75 As Byte
      Dim D50 As Byte
      Dim D25 As Byte
      Dim D0 As Byte
      Dim Taghsim As Integer
      Dim Zarb As Word

      اصلا هیچی نشون نمیده .نمیدونم چرا؟ به نظرم متغییر ها مشکلی نداره .مشکل از برنامه نیست؟
      www.icesi.ir

      دیدگاه


        #4
        پاسخ : درصد گیری ار یک متغییر

        حامد جان داخل متغییر d75 مقدار 0 و داخل متغییر d50,d25 مقدار 1 موجود هست.

        به نظرت عجیب نیست؟
        www.icesi.ir

        دیدگاه


          #5
          پاسخ : درصد گیری ار یک متغییر

          متغیر B رو هم برای من تعریف نکردی.
          با این شکل تعریف فکر می کنم اگه D75 و D25 و D50 رو از نوع word تعریف کنی درست بشه.
          امتحان کن/

          دیدگاه


            #6
            پاسخ : درصد گیری ار یک متغییر

            آقا متغییر b از نوع byte هستش .

            D75 و D25 و D50 از نوع word تعریف کردم ولی نشد.

            برای هر مقدار متغییر b D75 و D25 و D50 اعدادی زیر 3 نشون میدن یعنی یا 0 یا 1 یا 2 هستن دیگه بیشتر از این نمیره.

            حامد میشه یه برنامه شما بنویسی شاید درست بشه.فقط همون قسمت درصد گیری رو بنویس برای D75 و D25 و D50 کافیه.

            سپاس گذار
            www.icesi.ir

            دیدگاه


              #7
              پاسخ : درصد گیری ار یک متغییر

              آقا من این کار رو کردم:

              $sim
              $regfile = "m32def.dat"
              $crystal = 8000000

              Dim B As Byte
              Dim B1 As Byte
              Dim D100 As Word
              Dim D75 As Word
              Dim D50 As Word
              Dim D25 As Word
              Dim D0 As Byte
              Dim Taghsim As Integer
              Dim Zarb As Word

              Do
              Input B

              B1 = B
              Zarb = B1 * 75
              D75 = Zarb / 100
              Print "D75=" ; D75
              Zarb = B1 * 50
              D50 = Zarb / 100
              Print "D75=" ; D75
              Zarb = B1 * 25
              D25 = Zarb / 100
              Print "D75=" ; D75
              Loop

              End

              تو سیمولاتور امتحان کردم درست بود.
              یه امتحان بکن.

              دیدگاه


                #8
                پاسخ : درصد گیری ار یک متغییر

                تعجب داره :surprised: :eek:

                برنامه شما دقیقا مثل برنامه منه فقط شما تابع print رو بهش اضافه کردید که من اونو تو برنامه حذف کردم و تابع نمایش بر روی lcd رو بهش اضافه کردم که کار کرد.

                B1 = B
                Zarb = B1 * 75
                D75 = Zarb / 100

                Zarb = B1 * 50
                D50 = Zarb / 100

                Zarb = B1 * 25
                D25 = Zarb / 100


                اینم کدها رو هم تو برنامه اضافه کردم


                If B = D75 Then
                Locate 2 , 7
                Lcd " "
                Locate 2 , 7
                Lcd "75%"
                End If

                If B = D50 Then
                Locate 2 , 7
                Lcd " "
                Locate 2 , 7
                Lcd "50%"
                End If

                If B = D25 Then
                Locate 2 , 7
                Lcd " "
                Locate 2 , 7
                Lcd "25%"
                End If

                که درست کار کرد/
                بازم دستت درد نکنه .سپاس گذار از لطفت
                www.icesi.ir

                دیدگاه


                  #9
                  پاسخ : درصد گیری ار یک متغییر(حل شد با کمک حامد جعفری)

                  خواهش میکنم میلاد جان.
                  پرتلاش و موفق باشی.

                  دیدگاه


                    #10
                    پاسخ : درصد گیری ار یک متغییر(حل شد با کمک حامد جعفری)

                    همچنین ،البته با کمک شما :nice:
                    www.icesi.ir

                    دیدگاه

                    لطفا صبر کنید...
                    X