گام چهاردهم: اعداد در متلب
متلب دسته بندی های مختلفی شامل اعداد صحیح علامت دار و بدون علامت و دقت معمولی و دقت مضاعف و اعداد – ممیز شناور را پشتیبانی می کند. به طور پیش فرض، متلب تمامی مقادیر عددی، به عنوان مثال ارقام نقطه اعشاری را ذخیره می کند.
شما می توانید هر عدد یا آرایه ای از اعداد به عنوان مثال اعداد صحیح یا اعداد دقت مضاعف را به انتخاب ذخیره می کنیم.
تمامی انواع عددی عملیات اساسی و عملیات ریاضی را پشتیبانی می کنند.
تبدیل انواع داده عددی مختلف
متلب توابع زیر را برای تبدیل انواع داده عددی مخلف فراهم می کند.
اهداف | توابع |
تبدیل به اعداد دقت مضاعف | double |
تبدیل به اعداد دقت معمولی | single |
تبدیل به ارقام علامت دار 8 بیتی | int8 |
تبدیل به ارقام علامت دار 16 بیتی | int16 |
تبدیل به ارقام علامت دار 32 بیتی | int32 |
تبدیل به ارقام علامت دار 64 بیتی | int64 |
تبدیل به ارقام بدون علامت 8 بیتی | uint8 |
تبدیل به ارقام بدون علامت 16 بیتی | uint16 |
تبدیل به ارقام بدون علامت 32 بیتی | uint32 |
تبدیل به ارقام بدون علامت 64 بیتی | uint64 |
مثال
یک فایل اسکریپت ایجاد کنید و کد زیر را تایپ نمایید:
x = single([5.323.476.28]).*7.5
x =double([5.323.476.28]).*7.5
x = int8([5.323.476.28]).*7.5
x = int16([5.323.476.28]).*7.5
x = int32([5.323.476.28]).*7.5
x = int64([5.323.476.28]).*7.5
زمانی که شما فایل را ایجاد می کنید، نتیجه زیر را نمایش می دهد:
مثال
اجازه دهید مثال قبلی را کمی بیشتر توسعه دهیم.یک فایل اسکریپت ایجاد کنید و کد زیر را تایپ نمایید:
x = int32([5.323.476.28]).*7.5
x = int64([5.323.476.28]).*7.5
x = num2cell(x)
زمانی که فایل را ایجاد می کنید، نتیجه زیر را نمایش می دهد:
کوچکترین و بزرگترین اعداد صحیح
توابع ()inmax و ()inmin کوچکترین و بزرگترین مقادیر که می تواند با تمامی انواع داده از ارقام عدد صحیح نشان داده شود را باز می گرداند.
هر دو تابع انواع داده عدد صحیح را به عنوان آرگومان می گیرد، برای مثال ، (intmax(int8 یا (intmin(int64 و مقادیر حداقل و حداکثر که شما می توانید با انواع داده عدد صحیح نمایش دهید برمی گرداند.
% displaying the smallest and largest signed integer data
str =‘the range for int8 is:\n\t%d to %d ‘;
sprintf(str, intmin(‘int8‘), intmax(‘int8‘))
str =‘the range for int16 is:\n\t%d to %d ‘;
sprintf(str, intmin(‘int16‘), intmax(‘int16‘))
str =’the range for int32 is:\n\t%d to %d ‘;
sprintf(str, intmin(‘int32‘), intmax(‘int32‘))
str =’the range for int64 is:\n\t%d to %d ‘;
sprintf(str, intmin(‘int64‘), intmax(‘int64‘))
% displaying the smallest and largest unsigned integer data
str =’the range for uint8 is:\n\t%d to %d ‘;
sprintf(str, intmin(‘uint8‘), intmax(‘uint8‘))
str =’the range for uint16 is:\n\t%d to %d ‘;
sprintf(str, intmin(‘uint16‘), intmax(‘uint16‘))
str =’the range for uint32 is:\n\t%d to %d ‘;
sprintf(str, intmin(‘uint32‘), intmax(‘uint32‘))
str =’the range for uint64 is:\n\t%d to %d ‘;
sprintf(str, intmin(‘uint64‘), intmax(‘uint64‘))
زمانی که فایل را ایجاد می کنید، نتیجه زیر را نمایش می دهد:
کوچکترین و بزرگترین ارقام نقظه ممیز شناور
توابع realmax() و realmin() بیشترین و کمترین مقادیر که می تواند با ارقام نقطه ممیز شناور نشان دهد را بر می گرداند.
هر دو تابع زمانی که آرگومان ‘ مجرد ‘ نامیده می شوند مقادیر حداقل و حداکثری که شما می توانید با انواع داده با دقت معمولی را نمایش دهید برمی گرداند و و زمانی آرگومان ‘ مضاعف’ نامیده می شود که مقادیر حداقا و حداکثری را که شما می توانید با انواع داده دقت مضاعف ارائه دهید بازمی گرداند.
مثال
مثال زیر چگونگی به دست آوردن کوچکترین و بزرگترین ارقام نقطه شناور را شرح می دهد. یک فایل اسکریپت ایجاد نمایید و کد زیر را در آن بنویسید:
% displaying the smallest and largest single-precision
% floating point number
str =‘the range for single is:\n\t%g to %g and\n\t %g to %g’;
sprintf(str,-realmax(‘single‘),-realmin(‘single‘),…
realmin(‘single‘), realmax(‘single‘))
% displaying the smallest and largest double-precision
% floating point number
str =‘the range for double is:\n\t%g to %g and\n\t %g to %g‘;
sprintf(str,-realmax(‘double‘),-realmin(‘double‘),…
realmin(‘double‘), realmax(‘double‘))
زمانی که شما فایل را اجرا می کنید، نتیجه زیر نشان داده می شود:
خرید کتاب 28 گام موثر در فتح متلب