اطلاعیه

Collapse
No announcement yet.

کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

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

    کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

    سلام اشکال این برنامه چیه ؟ (یه برنامه قفل رمز با قابلیت تغییر رمز هستش) :cry2:


    Config Porta = Output
    Dim A As Byte
    Dim B As Byte
    Dim C As Byte
    Dim F As Byte


    Main:
    Cls
    Locate 1 , 1
    Lcd "Input code = 1"
    Locate 2 , 1
    Lcd "Change code = 2"
    Goto P
    End


    P:
    F = Getkbd()
    If F > 15 Then Goto P
    Else
    Lcd F
    If F = 1 Then Goto Z
    Else If F = 2 Then Goto St
    Else Goto P
    End If



    St:
    Cls
    Lcd "input old code"
    Goto S
    End



    S:
    F = Getkbd()
    If F > 15 Then Goto S
    Else Lcd F
    Readeeprom A , 0
    If A = F Then Goto S1
    Else Goto S3
    End If



    S1:
    F = Getkbd()
    If F > 15 Then Goto S1
    Else Lcd F
    Readeeprom B , 1
    If B = F Then Goto S2
    Else Goto S4
    End If



    S2:
    F = Getkbd()
    If F > 15 Then Goto S2
    Else Lcd F
    Readeeprom C , 2
    If C = F Then Goto S6
    Else Goto S5
    End If




    S3:
    F = Getkbd()
    If F > 15 Then Goto S3
    Else Lcd F
    Goto S4
    End If



    S4:
    F = Getkbd()
    If F > 15 Then Goto S4
    Else Lcd F
    Waitms 150
    Goto S5
    End If


    S5:
    Lcd "INCORRECT !"
    Waitms 150
    Goto Ss
    End


    S6:
    Cls
    Lcd "INPUT NEW CODE"
    Goto S7
    End



    S7:
    F = Getkbd()
    If F > 15 Then Goto S7
    Else
    Cls
    Lcd F
    Writeeeprom F , 0
    Goto S8
    End If


    S8:
    F = Getkbd()
    If F > 15 Then Goto S8
    Else Lcd F
    Writeeeprom F , 1
    Goto S9
    End If


    S9:
    F = Getkbd()
    If F > 15 Then Goto S9
    Else Lcd F
    Writeeeprom F , 2
    Goto Main
    End



    Z:
    Cls
    Lcd : "input code"
    Goto Z1
    End



    Z1:
    F = Getkbd()
    If F > 15 Then Goto Z1
    Else Cls
    Lcd F
    Readeeprom A , 0
    If F = A Then Goto Z2
    Else Goto Z5
    End If



    Z2:
    Getkbd()
    If F > 15 Then Goto Z2
    Else Lcd F
    Readeeprom B , 1
    If B = F Then Goto Z3
    Else Goto Z6
    End If



    Z3:
    Getkbd()
    If F > 15 Then Goto Z3
    Else Lcd F
    Readeeprom C , 2
    If C = F Then Goto C
    Else Goto Z7
    End If



    C:
    Waitms 100
    Lcd "**CORRECT**"
    Set Porta.0
    End



    Z5:
    Getkbd()
    If F > 15 Then Goto Z5
    Else Lcd F
    Goto Z6
    End If




    Z6:
    Getkbd()
    If F > 15 Then Goto Z6
    Else Lcd F
    Goto Z7
    End If



    Z7:
    Waitms 150
    Cls
    Lcd : "INCORRECT"
    Waitms 200
    Goto Z
    End
    موفقيت = يك درصد نبوغ ، 99 درصد عرق ريختن
    (اديسون)

    #2
    پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

    خب حتما کسی نمی دونه ! :agree:
    موفقيت = يك درصد نبوغ ، 99 درصد عرق ريختن
    (اديسون)

    دیدگاه


      #3
      پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

      سلام
      خیلی مساله رو بغرنجش کردین
      کامل نخوندم اما یکم config هاتون ناقصه یکم اون اول ها باید نوع میکرو و کریستال رو تعریف می کردین
      نوع متغیر رو از نوع ایپرام بایت تعریف میکردین کار راحت تر می شد
      حالا چه ایرادی میده شما بگید دوستان جواب میدن :mrgreen: :mrgreen: :nerd:

      دیدگاه


        #4
        پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

        سلام

        من پیشنهاد میکنم که این برنامه رو بخیال بشین .......... خیلی بد برنامه رو نوشتین (البته با عرض معذلت ) :smile:
        مهم نيست كه چه انديشه اي در سر و چه ترسي در دل داريد؛ مهم آن است كه بيكار ننشينيد و دست به كاري بزنيد و وارد ميدان عمل بشويد.

        نمي توانيد به كودكي بياموزيد كه از خود مواظبت كند، مگر آنكه او را آزاد بگذاريد تا براي مواظبت از خود بكوشد؛ ممكن است اشتباه كند، ولي دانايي او از ميان همين اشتباهات سرچشمه مي گيرد.

        دیدگاه


          #5
          پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

          فرکانس و ای سی و.................ههمه چی تو خود برنامه مشخص شده از اون لحاظ مشکلی نداره ........

          بعدش هم شما به جای این که بگین بی خیال برنامه بشم راهنمای کنیدکه چه کارش کنم......منکه مشکلی تو فلوچارت و دوستورا ت برنامه نمی بینم....
          موفقيت = يك درصد نبوغ ، 99 درصد عرق ريختن
          (اديسون)

          دیدگاه


            #6
            پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

            شما بهتره به جایی اینکه هر بار که کلید زده شد تو eeprom بنویسی یا بخونی یه متغییر از تون word یا integer بسازی و کلید هارو در ان قرار بدی که بعد از زدن اینتر که می تونه ستاره یا کلید شارپ باشه اون متغییر رو در eeprom بنویسی یا با eeprom مقایسه کنید
            ما زنده به آنیم که آرام نگیریم موجیم که آسودگی ما عدم ماست

            وقتی یک ملت برای فرهنگ و نژاد و ملیت خویش ارزشی قائل نشد و حقی را که طبیعت برای نگاهداری نژاد پاکش به او ارزانی داشته بود پایمال ساخت و به بیگانگان روی آورد و تسلیم شد دیگر حق ندارد از شکست و بدبختی سیاسی که خودش باعث آن شده است شکایت کند .ادولف هیتلر

            r.babazadeh@yahoo.com

            دیدگاه


              #7
              پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

              $regfile = "m64def.dat"
              $crystal = 16000000

              Config Porta = Output
              Dim A As Byte
              Dim B As Byte
              Dim C As Byte
              Dim F As Byte
              Dim Kol As Word
              Dim Koll As Eram Word
              Config Kbd = Portb


              Main:
              Cls
              Locate 1 , 1
              Lcd "Input code = 1"
              Locate 2 , 1
              Lcd "Change code = 2"
              Wait 1


              P:
              F = Getkbd()
              If F > 15 Then Goto P

              f = Lookup(f , Kiki)
              Lcd F


              If F = 1 Then Goto Z

              If F = 2 Then Goto Sst

              Cls
              Lcd "insert only 1 or 2"
              Wait 1
              Goto Main




              Sst:
              Cls
              Lcd "input old code"




              S:
              F = Getkbd()
              If F > 15 Then
              Goto S
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = F


              End If



              S1:
              F = Getkbd()
              If F > 15 Then
              Goto S1
              Else
              f = Lookup(f , Kiki)
              Lcd F

              Kol = Kol * 10
              Kol = Kol + F
              End If



              S2:
              F = Getkbd()
              If F > 15 Then
              Goto S2
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F

              End If




              S3:
              F = Getkbd()
              If F > 15 Then
              Goto S3
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F
              End If



              S4:
              F = Getkbd()
              If F > 15 Then
              Goto S4
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F
              Waitms 150
              End If


              S5:
              If Kol <> Koll Then
              Lcd "INCORRECT !"
              Waitms 150
              Goto Main
              End If


              S6:
              Cls
              Lcd "INPUT NEW CODE"

              End



              S7:
              F = Getkbd()
              If F > 15 Then
              Goto S7
              Else
              Cls
              f = Lookup(f , Kiki)
              Lcd F
              Kol = F

              End If


              S8:
              F = Getkbd()
              If F > 15 Then
              Goto S8
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F
              End If


              S9:
              F = Getkbd()
              If F > 15 Then
              Goto S9
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F

              End If

              S10:
              F = Getkbd()
              If F > 15 Then
              Goto S9
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F

              End If



              Z:
              Cls
              Lcd "save pass"
              Kol = Kol
              Waitms 4
              Goto Main
              End





              Zs:
              '----------------------------------------------------
              Cls
              Lcd "input pass for set"


              F = Getkbd()
              If F > 15 Then
              Goto Zs
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = F


              End If



              Zs1:
              F = Getkbd()
              If F > 15 Then
              Goto Zs1
              Else
              f = Lookup(f , Kiki)
              Lcd F

              Kol = Kol * 10
              Kol = Kol + F
              End If



              Zs2:
              F = Getkbd()
              If F > 15 Then
              Goto Zs2
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F

              End If




              Zs3:
              F = Getkbd()
              If F > 15 Then
              Goto Zs3
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F
              End If



              Zs4:
              F = Getkbd()
              If F > 15 Then
              Goto Zs4
              Else
              f = Lookup(f , Kiki)
              Lcd F
              Kol = Kol * 10
              Kol = Kol + F
              Waitms 150
              End If


              Zs5:
              If Kol <> Koll Then
              Lcd "INCORRECT !"
              Waitms 150
              Goto Main
              Else
              Set Porta.1
              Cls
              Lcd "ok"
              Wait 1
              Goto Main
              End If




              Kiki:
              Data 1
              Data 2
              Data 3
              Data 10
              Data 4
              Data 5
              Data 6
              Data 11
              Data 7
              Data 8
              Data 9
              Data 12
              Data 0
              Data 13
              Data 14
              Data 15

              این برنامه تست نشده و چون نخواستم main برنامه شما رو خراب کنم یه برنامه بسیار طولانی و (بد )از اب در اومده ولی در عوض فهمش بسیار سادس :icon_razz:
              علم چندانکه بيشتر خواني چون عمل در تو نيست ناداني

              دیدگاه


                #8
                پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

                سلام . امید جان این برنامه مشکلات فراوون داره . نوشته ها خیلی دیر میاد . کیبرد درست کار نمیکنه . کدش معلوم نیس چند رقمیه وقتی میخای عدد وارد کنی صفحه پاک نمیشه و .......

                لطفا یه بار دیگه تستش کن تو بسکام . برای من که اصلا جواب نداد و فکر می کنم فلو چارت هم تغییر کرده بود . :NO:
                موفقيت = يك درصد نبوغ ، 99 درصد عرق ريختن
                (اديسون)

                دیدگاه


                  #9
                  پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

                  سلام دوست من
                  اگر دنبال یه برنامه آماده برا قفل میگردی برو تو سایت wwwavr64.com چیزی که میخوای هست.اما سعی کن طریقه نوشتن رو یاد بگیری.اوکی.

                  دمت گرم :bye
                  سه توصیه دارم:
                  1.کار 2.کار 3.کار
                  ادیسون

                  دیدگاه


                    #10
                    پاسخ : کسی میتونه اشکال این برنامه رو به من بگه (برنامه دوم) ؟!(بیسیک)

                    نه این برنامه خودم هست که نوشتمش و دارم ایراد هاش رو بر طرف می کنم به کمک دوستان. برنامه اماده که تا دلتون بخاد هست . مهم یاد گرفتنه . :nerd:
                    موفقيت = يك درصد نبوغ ، 99 درصد عرق ريختن
                    (اديسون)

                    دیدگاه

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