float در آردوینو

float در آردوینو

float در آردوینو
float در آردوینو

نوع‌داده‌ی float در آردوینو برای ذخیره‌سازی اعداد ممیز شناور (اعدادی که ممیز یا نقطه اعشار دارند) است. معمولاً از اعداد ممیز شناور برای تقریب زدن مقادیر آنالوگ و پیوسته استفاده می‌شود؛ چراکه این نوع اعداد دقت بیشتری از اعداد صحیح (integers) دارند.

اعداد ممیز شناور می‌توانند به بزرگی 3.4028235E+38 و به کوچکی 3.4028235E+38- باشند. این نوع‌داده 32 بیت (4 بایت) اطلاعات را در خود ذخیره می‌کند.

floatها 7-6 عدد ده‌دهی دقت دارند؛ یعنی کل عدد، این تعداد رقم دارد، نه تعداد ارقام سمت راست اعشار. برعکس دیگر زبان‌ها که برای افزایش دقت (به‌عنوان‌مثال تا 15 رقم) می‌توان از نوع‌داده‌ی double استفاده کرد، در آردوینو، double نیز هم‌اندازه‌ی float است.

اعداد ممیز شناور، دقیق نیستند و ممکن است هنگام مقایسه، نتایج عجیبی تولید کنند. برای مثال حاصل 6.0/3.0 ممکن است برابر با 2.0 نشود. به جای اینکار باید چک کنید که مقدارِ مطلقِ تفاضلِ بین اعداد، کمتر از عددی کوچک باشد.

در انجام محاسبات، اعداد ممیز شناور بسیار آهسته‌تر (زمان‌برتر) از محاسبات اعداد صحیح هستند. پس اگر به‌عنوان‌مثال برای یک کار حیاتی از نظر زمان، حلقه‌ای دارید که باید با نهایت سرعت اجرا شود، از اعداد ممیز شناور استفاده نکنید. معمولاً برنامه‌نویسان برای افزایش سرعت، اعداد ممیز شناور را به اعداد صحیح تبدیل می‌کنند.

اگر می‌خواهید با اعداد ممیز شناور محاسبات انجام دهید، باید یک ممیز قرار دهید؛ وگرنه عدد به‌عنوان int در نظر گرفته خواهد شد. برای جزییات بیشتر صفحه‌ی ثابت‌های ممیز شناور را ببینید.

مثال:

 

سینتکس (نحو):

  • var: نام متغیرِ از نوع float.
  • val: مقداری که به متغیر نسبت می‌دهید.

کد نمونه:

 

 

int در آردوینو

double در آردوینو

منبع

حمایت از Yalda

خوشحال میشیم برای تداوم و کیفیت ما رو حمایت کنید.

0 نفر

پــــســنــدیـده انـد

توجه

Yalda
Yalda

علاقه‌مند به یادگیری چیزهای جدید!

دیدگاه ها

4 دیدگاه

  • مهدي
    ۲۴ بهمن ۱۳۹۹

    سلام خسته نباشد
    ميخاستم از ورودي آنالوگ مثلا يك سنسور استفاده كنم و مقدار ورودي اين سنسور خيلي برام مهمه.ولي همش 2 يا 3 رقم اعشارو نشون ميده كه اونم خيلي بالا پايين ميشه وثابت نيست .آيا ميشه تا يك رقم اعشارو از اين ورودي آنالوگ خوند و دريافت كرد.؟؟؟فقط تا يك رقم اعشار
    با تشكر

    • Zeus ‌
      Zeus ‌
      ۲ اسفند ۱۳۹۹

      سلام دوست عزیز
      اعداد ممیز شناور در واقع به شکل ۴ بایت از حافظه رو اشغال میکنن و این که بگید با فلان مقدار اعشار بخونم در واقع معنی درستی نمیده
      کاری که میتونید انجام بدید اینه که با یک رقم اعشار نمایش بدید که توی حوزه بندی دستور printf میتونید جزییاتش رو ببینید.
      اگر پرش روی نمونه ها دارید میتونید از داده های دریافتی میانگین گیری کنید تا پرش ها کمتر شوند

  • بهزاد
    ۸ بهمن ۱۳۹۸

    سپاس
    بدردم خورد

پر بحث ترین ها

مسابقه دوم : چالش برنامه نویسی به زبان C

مسابقه اول سیسوگ (مسابقه اول: درک سخت افزار) انتقادهای زیادی رو در پی داشت تا جایی که حتی خودمم به نتیجه مسابقه...

Zeus ‌ Zeus ‌
  • 2 سال پیش

راه اندازی LCD گرافیکی Nokia 1661 و دانلود کتابخانه آن

LCD گرافیکی یکی از مهم ترین پارامترهای موجود در طراحی انواع مدارات الکترونیکی پیچیده و حتی ساده است ، نمایش وضعیت و...

Zeus ‌ Zeus ‌
  • 4 سال پیش

ریموت کدلرن و چکونگی دکد کردن آن به همراه سورس برنامه

ریموت کنترل امروزه کاربرد زیادی پیدا کرده است؛ از ریموت‌های درب بازکن تا ریموت‌های دزدگیر و کنترل روشنایی همه از یک اصول اولیه پیروی می‌کنند و آن‌هم ارسال اطلاعات به‌صورت بی‌سیم است....

Zeus ‌ Zeus ‌
  • 5 سال پیش

مسابقه سوم: استخراج داده از رشته ها در زبان C

نزدیک به 5 ماه از مسابقه دوم سیسوگ می‌گذره و فکر کردم که بد نیست یک چالش جدید داشته باشیم! البته چالش‌ها...

Zeus ‌ Zeus ‌
  • 2 سال پیش

همه چیز درباره ریموت کنترل‌های هاپینگ

امنیت همیشه و در همه‌ی اعصار، مقوله‌ی مهم و قابل‌توجه‌ ای بوده و همیشه نوع بشر به دنبال امنیت بیشتر، دست به ابداعات و اختراعات گوناگونی زده است. ریموت کنترل یکی از این اختراعات است. در این مقاله، به بررسی امنیت انواع ریموت‌های کنترل خواهیم پرداخت....

Zeus ‌ Zeus ‌
  • 5 سال پیش

مسابقه ششم: بزن میکروکنترلر را بسوزون!

بزنم میکروکنترلر را بسوزونم اونم تو  این شرایط!، طراحی مسابقه از اون چیزی که به نظر می‌رسه سخت‌تر است، باید حواست باشه...

Zeus ‌ Zeus ‌
  • 9 ماه پیش

آموزش قدم به قدم راه اندازی +NRF24L01

آموزش قدم به قدم راه اندازی +NRF24L01  با کتابخانه سازگار با انواع میکروکنترلرها و کامپایلرها قبل از اینکه قسمت بشه با ماژول...

رسول خواجوی بجستانی رسول خواجوی بجستانی
  • 3 سال پیش

ساخت ماینر با FPGA و ARM

چند ماهی هست که تب بیت کوین و ارزهای دیجیتال خیلی بالا رفته! چه شد که این پست را نوشتم همانطور که...

Zeus ‌ Zeus ‌
  • 3 سال پیش

مسابقه چهارم: کدام حلقه سریع‌تر است؟

حدود ۷ ماه پیش، مسابقه سوم سیسوگ رو برگزار کردیم و کلی نکته در مورد خواندن رشته‌های ورودی را بررسی کردیم. فکر...

Zeus ‌ Zeus ‌
  • 1 سال پیش

کار با ماژول تمام عیار mc60 – قسمت دوم – راه اندازی OpenCPU

در قسمت اول به یکسری اطلاعات کلی ماژول mc60 پرداختیم، با نرم افزار QNavigator کار کردیم و یک هدربرد هم برای کار...

Mahdi.h   Mahdi.h  
  • 2 سال پیش
سیـــســـوگ

مرجع متن باز آموزش الکترونیک