اطلاعیه

Collapse
No announcement yet.

عدد اعشاری در بسکام

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

    عدد اعشاری در بسکام

    سلام دوستان من در حال نوشتن یه برنامه در بسکام بودم که به عدد اعشاری نیاز پیدا کردم .یه چی تو مایه های همون float در c .اگر کمکم کنید ممنون میشم. :nice:
    به جای اینکه یه اقیانوس کم عمق باشی, یه چاه ژرف باش.

    #2
    پاسخ : عدد اعشاری در بسکام

    به جای اینکه یه اقیانوس کم عمق باشی, یه چاه ژرف باش.

    دیدگاه


      #3
      پاسخ : عدد اعشاری در بسکام

      خب باید متغیر رو از نوع Single معرفی کنی.

      دیدگاه


        #4
        پاسخ : عدد اعشاری در بسکام

        یه دنیا ممنون. :applause: :job: :bye
        به جای اینکه یه اقیانوس کم عمق باشی, یه چاه ژرف باش.

        دیدگاه


          #5
          پاسخ : عدد اعشاری در بسکام

          اقا یه سوال دیگه من وقتی این single رو مثلا 10 میذارم و به 3 تقسیمش میکنم میشه
          333333/3 راهی برای محدود کردن عدد بعد اعشار هست ?میشه single و ول کرد و نوشت
          dim a as byte
          dim b as string*3
          a=10
          a=a/3
          b=a mod 10
          lcd a; "/" ;b
          end
          ????????
          به جای اینکه یه اقیانوس کم عمق باشی, یه چاه ژرف باش.

          دیدگاه


            #6
            پاسخ : عدد اعشاری در بسکام

            دوستان من یه برنامه اهم متر نوشتم.البته احتیاج به یه کم کالیبره کردن محاسباتش هست اگه برنامه از نظر شما اساتید ایراد داره بگید تا کامل کنم و بذارم تو کامل شده ها. :bye
            $regfile = "m32def.dat"
            $crystal = 1000000
            Config Lcdpin = Pin , Db4 = Portd.1 , Db5 = Portd.2 , Db6 = Portd.3 , Db7 = Portd.4 , Rs = Portd.5 , E = Portd.6
            Config Lcd = 16 * 2
            Dim A As Word
            Dim G As Word
            Dim B As Single
            Dim I As Byte
            Deflcdchar 0 , 32 , 14 , 17 , 17 , 10 , 27 , 32 , 32 'alamate ohm
            G = 0
            Cls
            Cursor Off
            Do
            Do
            For I = 0 To 5
            A = Getrc(pind , 0)
            G = G + A
            Next I
            G = G / 5
            B = G * 0.024
            If B < 1 Then
            B = B * 1000
            Goto Zire1000
            End If
            Home
            Lcd B
            Locate 1 , 6
            Lcd " k" ; Chr(0) ; " "
            Loop
            Zire1000:
            Home
            Lcd B
            Locate 1 , 6
            Lcd " " ; Chr(0) ; " "
            Loop
            End
            به جای اینکه یه اقیانوس کم عمق باشی, یه چاه ژرف باش.

            دیدگاه


              #7
              پاسخ : عدد اعشاری در بسکام

              برنامه ایراد داره. وقتی متغیر G رو Word نعریف می کنی نمی تونی اون رو تو یه عدد اعشاری ضرب کنی. چون برنامه اون رو به صورت عدد صحیح فرض می کنه.
              با String هم نمیشه کار کرد چون به هیچ هنوان مربوط به محاسبات عددی نیست. بقیه برنامه رو من نگاه نکردم. برای اینکه بهتر بتونی روند برنامه رو بفهمی یه Sim$ اول برنامه بذار و کامپایل کن ، بعد برنامه رو با سیمولاتور خط به خط اجرا کن.

              دیدگاه


                #8
                پاسخ : عدد اعشاری در بسکام

                ممنون
                حامد عزیز من این مدار رو بستم و جواب گرفتم.در مورد ضرب نشدنشم من فکر میکنم که چون حاصلضرب قراره در متغیر B که single هست ریخته شه همه چی حله کامپایلر error نزد من رو lcd یه متغیر با کلی عدد اعشار دارم.مثلا شما فکر کن 2*5/2=5 .یعنی 2 که صحیحه با 5 که کار نداره.اگه قبول نداشتی بیا بحثو ادامه بده.در ضمن بابت جواب ها ممنون
                :job:
                به جای اینکه یه اقیانوس کم عمق باشی, یه چاه ژرف باش.

                دیدگاه


                  #9
                  پاسخ : عدد اعشاری در بسکام

                  از این که جواب هایی که گرفتی دقیق نیستن مطمئنم. چون ضرب یه عدد اعشاری در یک عدد صحیح میشه یه عدد اعشاری. ولی تو اونو تو یه عدد صحیح ریختی( Word ).ضمنا من گفتم استفاده از String تو این حالت اشتباهه نه Single.
                  کافیه تو سیمولاتور یه سری اعداد مختلف بدی نتیجه رو می بینی.

                  دیدگاه


                    #10
                    پاسخ : عدد اعشاری در بسکام

                    حامد جان از اینکه به سوال هام جواب میدی ممنون ولی من که تو کتم نمیره شما چی میگید.من فقط G رو یه بار برای معدل گیری تقسیم به 5 کردم.شما خودت میگی ضرب یه عدد اعشاری در یک عدد صحیح میشه یه عدد اعشاری خوب من حاصلضرب رو در B ریخیتم.من یه کم کند ذهنم.اگه میشه اون قسمتی رو که شما میگی اشتباهه رو بنویس.شما خودت مو سفید کرده این کاری ولی به نظر ناقص من خود شما گفتی SINGLE اعشاریه.بعد هم میگی حاصلضرب بالا اعشاریه .خوب حاصلضرب که رفته تو B که اعشاریه.ببخشید که مزاحم وقتت شدم بازم از اینکه به سوالام جواب میدی ممنون :job:.
                    به جای اینکه یه اقیانوس کم عمق باشی, یه چاه ژرف باش.

                    دیدگاه


                      #11
                      پاسخ : عدد اعشاری در بسکام

                      شاید منظور دوستمون اونجاییه که نوشنی g=g/5 درحالی که خود g یه متغیر از نوع word هست و این باعث میشه جوابت تبدیل به عدد صحیح بشه و دقتش رو از دست بده
                      ضمنا برای نشون دادن عددت با یه فرمت دلخواه میتونی از fusing استفاده کنی
                      سه سری به هلپ خود بیسکام بزنی توضیح داده
                      استفاده راحت از رپیدشیر و مگاپلود و سایر سرورها
                      http://rapidbaz.com/from/26877

                      دیدگاه

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