مرکزی مواد پر جائیں
ماڈیول 2 · سبق 3 از 4کورس میں 7/32~10 min
ماڈیول اسباق (3/4)

نمبر اور ریاضی

JavaScript میں صرف ایک عددی قسم ہے: number۔ دونوں عدد عدد اور اعشاریہ (فلوٹنگ پوائنٹ) وہاں رہتے ہیں۔ کوئی الگ نہیں int / float دوسری زبانوں کی طرح۔

JS
typeof 42; // 'number'
typeof 3.14; // 'number'
typeof -0.001; // 'number'
typeof Infinity; // 'number'   ← Infinity is a special number
typeof NaN; // 'number'   ← even "Not a Number" is a number (!)

عالمی Math آبجیکٹ

Math کوئی فنکشن نہیں ہے: یہ ایک آبجیکٹ ہے جس میں مفید طریقوں اور مستقل آپ اسے فوری نہیں کرتے، آپ اسے براہ راست استعمال کرتے ہیں:

JS
Math.min(3, 1, 7); // 1
Math.max(3, 1, 7); // 7
Math.abs(-5); // 5
Math.round(4.5); // 5
Math.floor(4.9); // 4   (always rounds down)
Math.ceil(4.1); // 5   (always rounds up)
Math.sqrt(16); // 4
Math.pow(2, 10); // 1024   (equivalent to 2 ** 10)
Math.PI; // 3.141592653589793

بے ترتیب نمبر

Math.random() 0 (شامل) اور 1 (خارج) کے درمیان اعشاریہ لوٹاتا ہے۔ ایک رینج میں عدد حاصل کرنے کے لیے آپ ایک چھوٹا فارمولا استعمال کرتے ہیں:

JS
// Random integer between 0 and 9
Math.floor(Math.random() * 10);

// Random integer between 1 and 6 (a six-sided die)
Math.floor(Math.random() * 6) + 1;

اعشاریہ کا درد (فلوٹنگ پوائنٹ)

JS IEEE-754 64 بٹ نمائندگی کا استعمال کرتا ہے، جو تقریباً سبھی کے ساتھ مشترکہ ہے۔ زبانیں یہ ایک بائنری نمائندگی ہے، اس لیے کچھ اعشاریہ نہیں ہو سکتے بالکل نمائندگی:

JS
0.1 + 0.2; // 0.30000000000000004 (!)
0.1 + 0.2 === 0.3; // false

معیاری حل: toFixed(n) کے ساتھ گول (جو ایک سٹرنگ لوٹاتا ہے) یا پیسے کے ساتھ کام کرتے وقت سینٹ/ہزارویں میں عدد کا استعمال کریں:

JS
(0.1 + 0.2).toFixed(2); // '0.30' (string)
Number((0.1 + 0.2).toFixed(2)); // 0.3 (number)

اسے آزمائیں

ورزش#js.m2.l3.e1
کوششیں: 0لوڈ ہو رہا ہے…

دائرے کے رقبے کو رداس `r = 5` کے ساتھ دو اعشاریہ جگہوں پر گول کر کے ایک `نمبر` کے بطور شمار کریں۔ `r=5` کے لیے 78.54 متوقع ہے۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

Math.PI for pi، ** exponentiation کے لیے؛ .Fixed(2) کو گول کرنے کے لیے، نمبر(...) کو واپس نمبر میں تبدیل کرنے کے لیے۔

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش کا جائزہ لیں۔

ورزش#js.m2.l3.e2
کوششیں: 0لوڈ ہو رہا ہے…

تین نمبرز 12، 7، 23 دیے گئے، آخری اظہار کے طور پر زیادہ سے زیادہ اور کم سے کم (یعنی 16) کے فرق کو لوٹائیں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

Math.max اور Math.min متعدد کوما سے الگ کردہ دلائل کو قبول کرتے ہیں۔

3 کوششوں کے بعد حل دستیاب ہے۔