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

نمبرز اور ریاضی کا ماڈیول

Python دو بنیادی عددی اقسام میں فرق کرتا ہے: int (منمانی-صحت انٹیجرز — کوئی اوور فلو نہیں) اور float (64 بٹ فلوٹنگ پوائنٹ، ڈبل درستگی)۔

Python
type(42)       # <class 'int'>
type(3.14)     # <class 'float'>
type(10 ** 100)  # <class 'int'>   — interi grandi a piacere

ریاضی کے آپریٹرز

اوپمعنیمثالنتیجہ
+اضافہ2 + 35
-گھٹاؤ5 - 23
*مصنوعات4 * 312
/حقیقی تقسیم10 / 42.5
//انٹیجر تقسیم10 // 42
%modulo (بقیہ)10 % 31
**طاقت2 ** 101024

انتباہ: / ہمیشہ ایک float لوٹاتا ہے، یہاں تک کہ دو عدد کے ساتھ بھی (10 / 2 لوٹاتا ہے 5.0، نہیں 5)۔ عددی تقسیم کے لیے // استعمال کریں۔

Python
10 / 4    # 2.5
10 // 4   # 2
-7 // 2   # -4   (arrotonda verso il basso, non verso lo zero)

عددی بلٹ ان

Python
abs(-5)               # 5
min(3, 1, 2)          # 1
max([3, 1, 2])        # 3   (su iterabile)
round(3.7)            # 4
round(3.14159, 2)     # 3.14
sum([1, 2, 3])        # 6

math ماڈیول

Python
import math
math.pi               # 3.141592653589793
math.sqrt(16)         # 4.0
math.floor(3.9)       # 3   (verso meno infinito)
math.ceil(3.1)        # 4   (verso più infinito)
math.log(math.e)      # 1.0
math.gcd(12, 18)      # 6

فلوٹ کا نقصان

فلوٹس بائنری تخمینے ہیں: 0.1 + 0.2 بالکل برابر نہیں ہے 0.3

Python
0.1 + 0.2           # 0.30000000000000004
0.1 + 0.2 == 0.3    # False !

محفوظ موازنے کے لیے math.isclose(a, b) استعمال کریں یا، مالی سیاق و سباق میں، decimal ماڈیول۔

فلوٹ درستگی اور اعشاریہ ماڈیول

Python میں فلوٹس کو ڈبل پریسجن فلوٹنگ پوائنٹ نمبرز (IEEE 754 سٹینڈرڈ) کے طور پر لاگو کیا جاتا ہے۔ نتیجتاً، 0.1 + 0.2 جیسے حسابات سے قطعی طور پر 0.3 نہیں ملتا، بلکہ 0.30000000000000004۔ اگر آپ کو ریاضیاتی درستگی کی ضرورت ہے (مثال کے طور پر مالیاتی ایپلی کیشنز کے لیے)، تو معیاری لائبریری کا decimal ماڈیول استعمال کریں۔

اسے آزمائیں

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

دیے گئے `سیکنڈز = 3725`، شمار کریں `گھنٹے`، `منٹس`، `بقیہ_سیکنڈ` استعمال کرتے ہوئے // اور %۔ ٹپل کا اندازہ کریں `(گھنٹے، منٹ، باقی_سیکنڈز)`۔

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

// عددی تقسیم کرتا ہے، % بقیہ۔

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

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

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

`رداس = 5` کو دیکھتے ہوئے، math.pi کا استعمال کرتے ہوئے `علاقہ` میں دائرے کے رقبے کی گنتی کریں۔ راؤنڈ کے ساتھ 2 اعشاریہ پر گول 'رقبہ' کا اندازہ کریں۔

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

math.pi * رداس ** 2

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

اضافی چیلنج

ورزش#python.m4.l3.e3
کوششیں: 0لوڈ ہو رہا ہے…

Import the `math` module. Calculate the square root of `16` using `math.sqrt`, add the result to the rounded value of `3.74` (using `round()`), and store the final sum in `total_val`. Finally, evaluate the variable.

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

math.sqrt(16) 4.0 لوٹاتا ہے۔ راؤنڈ (3.74) 4 لوٹاتا ہے۔ ان کو جمع کریں اور total_val کو تفویض کریں۔

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