اطلاعیه

Collapse
No announcement yet.

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

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

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

    سلام به همه
    کسی می دونه با چه دستوری در بسکام می شه اعداد اعشاری رو تا چند رقم اعشار(مثلا دو رقم ) گرد کرد ؟
    آخه متغیرم رو از نوع single تعریف کردم ، نیاز به دو رقم اعشار دارم ، رو lcd که نشون می دم 12 رقم اعشار رو نشون می ده ، می خوام فقط تا دو رقم اعشار رو نشون بده ، چیکار باید کنم ؟؟؟
    مرسییییی
    زندگی تاس خوب آوردن نیست ، تاس بد را خوب بازی کردن است

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

    با سلام
    می تونید از دستور FUSING استفاده کنید:
    مثلا :

    Dim Volt As Single
    .
    .
    .
    Locate 1 , 1
    Lcd "Volt = " ; Fusing(volt , "##.###&quot ; " [v]"
    .
    .
    .

    دیدگاه


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

      سلام

      بیاد داشته باش که دستور fusing متغییر رو به فرمی که دوست داری روند میکنه یعنی اینکه اگر به تعداد رقم اعشار بیشتر از دوتا نیاز داشتی ، باید تعداد # پس از "." رو بیشتر کنید. :smile:
      تشکر لازم نیست. :^O
      اینها همش وظیفه ست. :^O

      دیدگاه


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

        ضمن تشکر از دوستان و اساتید

        اگه بخوایم اعداد اعشاری رو روندتر کنیم باید چیکار کنیم؟؟ :eek:
        مثلا" از میکرو میخوام 12.2 رو 12.5 نشون بده و 12.7 رو 13
        یا 33.4 رو 33.5
        و 65.6 رو 66 نشون بده

        با سپاس
        تخیل مهمتر از دانش است
        علم محدود است اما تخیل دنیا را دربر میآ‌گیرد
        آلبرت انیشتین

        دیدگاه


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

          نوشته اصلی توسط مجتبی-
          با سلام
          می تونید از دستور FUSING استفاده کنید:
          مثلا :

          Dim Volt As Single
          .
          .
          .
          Locate 1 , 1
          Lcd "Volt = " ; Fusing(volt , "##.###&quot ; " [v]"
          .
          .
          .
          دوستان اگه دستور fusing رو در help بسکام نگاه کنید میبینید
          که یه طرف باید string باشه اینطوری (برای دو رقم اعشار) :

          dim a as single
          dim volt as string*10
          .
          .
          .
          volt=fusing(a,"#.##&quot

          من الان هر کاری میکنم دستور آخر رو اشتباه می نویسه شما خودتون تو help بسکام نگاه کنید
          من نمىآ‌توانم فرضیه «بىآ‌اخلاقى انسان» را بپذیرم، و من اخلاق را منحصرا امرى انسانى و متعلق به انسان مىآ‌دانم که هیچ نوع قدرت مافوق انسانى در پشت آن وجود ندارد
          آلبرت اینشتین
          منبع: http://fa.wikiquote.org

          دیدگاه


            #6
            سلام دوست عزیز
            در ابتدای برنامه خودتون از این دستور استفاده کنید.
            Config Single = Scientific , Digits = 1
            تعداد رقم اعشار رو میتونید از یک تا 7 تنظیم کنید.
            هلپ بسکام رو هم ببینید توضیح داده.

            تابع Fusing برای پرینت کردن روی پورت سریال و نمایش روی LCD کاربرد داره. و عمل رند کردن رو روی اعداد انجام نمیده.
            جدیدترین ویرایش توسط samen electronic; ۱۵:۵۳ ۱۴۰۳/۰۶/۱۳.

            دیدگاه

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