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

بنیادی افعال

فنکشنز کوڈ کو دوبارہ قابل استعمال منطقی بلاکس میں ترتیب دینے، نقل کو کم کرنے اور پڑھنے کی اہلیت کو بہتر بنانے کی اجازت دیتے ہیں۔

C++ میں، ہر فنکشن کو اس کی واپسی کی قیمت، اس کے نام، اور پیرامیٹرز کی اقسام کا اعلان کرنا چاہیے جو اسے قبول کرتا ہے۔

فنکشن کی تعریف کرنا

یہاں ایک سادہ فنکشن کی ایک مثال ہے جس میں دو عدد جمع ہوتے ہیں:

C++
#include <iostream>

// Function definition
int add(int a, int b) {
    return a + b; // Returns the sum
}

int main() {
    int result = add(3, 4); // Function call
    std::cout << "Result: " << result << std::endl;
    return 0;
}

ساخت اور دستخط

  • واپسی کی قسم: return بیان کے ساتھ لوٹائی گئی قدر کی قسم (جیسے int, double, bool)۔ اگر فنکشن کوئی قدر واپس نہیں کرتا ہے، تو خاص قسم void استعمال کی جاتی ہے۔
  • نام: فنکشن کو کال کرنے کے لیے شناخت کنندہ (R2 کے مطابق camelCase اسٹائل کا استعمال کرتے ہوئے)۔
  • پیرامیٹر: قوسین میں بند ان پٹ متغیرات کی فہرست ()، ہر ایک اپنی قسم سے پہلے۔

ڈیکلریشن بمقابلہ تعریف

فنکشنز کو main فنکشن کے نیچے رکھنے کے لیے، آپ پہلے پروٹو ٹائپ کا اعلان کرتے ہیں (بغیر باڈی کے دستخط):

C++
#include <iostream>

// Prototype (Declaration)
int multiply(int a, int b);

int main() {
    std::cout << multiply(3, 5); // Valid
    return 0;
}

// Definition
int multiply(int a, int b) {
    return a * b;
}

خود ہی آزمائیں۔

ورزش#cpp.m3.l1.e1
کوششیں: 0لوڈ ہو رہا ہے…

مربع نامی فنکشن کی وضاحت کریں جو ایک عدد n لیتا ہے اور اس کا مربع (n * n) لوٹاتا ہے۔ 5 کے مربع کا حساب لگانے کے لیے اسے مین کے اندر کال کریں اور std::cout کا استعمال کرکے پرنٹ کریں۔

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

فنکشن کا دستخط `int مربع(int n)` ہے۔ فنکشن کی تعریف کو 'مین' سے پہلے رکھنا یاد رکھیں۔

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

ورزش#cpp.m3.l1.e2
کوششیں: 0لوڈ ہو رہا ہے…

isEven نامی ایک بولین فنکشن کی وضاحت کریں جو ایک عدد n لیتا ہے اور صحیح لوٹاتا ہے اگر نمبر برابر ہے (% 2 == 0 کا استعمال کرتے ہوئے)، بصورت دیگر غلط۔ اسے 4 کے ساتھ مین میں کال کریں اور اسے پرنٹ کریں۔

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

فنکشن کو ایک `بول`قسم لوٹانا چاہئے۔`n % 2 == 0` استعمال کریں۔

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