آموزش برنامه‌نویسی

آموزش مقدماتی زبان سی شارپ – قسمت هشتم
توابع و متدها

تابع (Function) متد (Method) پارامترها آرگومان‌ها void

متدها ساختارهایی هستند که باعث افزایش خوانایی برنامه‌نویسی می‌شوند و توسعه سیستم‌های نرم‌افزاری را تسریع می‌بخشند. دستوراتی که برای یک هدف مشخص مورد استفاده قرار می‌گیرند می‌توانند در یک متد سازماندهی شوند و از این طریق روند برنامه‌نویسی افزایش می‌یابد.

متد یا تابع چیست؟

متد یا تابع یک مجموعه از دستورات است که با فراخوانی اجرا می‌شوند (یعنی هر زمان اسم تابع را صدا زدیم، مجموعه دستوراتی که در تابع تعریف شده‌اند اجرا می‌شوند).

ویژگی‌های یک تابع

  • می‌تواند صفر، یک یا چند ورودی داشته باشد.
  • می‌تواند صفر، یک یا چند خروجی داشته باشد.
  • به ورودی‌ها آرگومان گفته می‌شود.
  • به متغیرهایی که ورودی‌ها را دریافت می‌کنند پارامتر گفته می‌شود.

کلمه کلیدی void

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

تعریف یک تابع ساده

در زیر یک تابع بدون ورودی و بدون خروجی تعریف شده است و سپس در تابع main (تابع اصلی) سه بار فراخوانی شده است.

using System;

class Program
{
    static void Main(string[] args)
    {
        MyMethod(); // فراخوانی تابع
        MyMethod();
        MyMethod();
    }

    static void MyMethod()
    {
        Console.WriteLine("Hello from MyMethod!");
    }
}
خروجی
Hello from MyMethod!
Hello from MyMethod!
Hello from MyMethod!

تابع با پارامتر (ورودی)

مثال: تابع با یک پارامتر
static void Greet(string name)
{
    Console.WriteLine("Hello " + name);
}
مثال: تابع با دو پارامتر
static void Add(int a, int b)
{
    int result = a + b;
    Console.WriteLine("Sum: " + result);
}
فراخوانی در Main
Greet("Ali");
Add(10, 20);
Hello Ali
Sum: 30

تابع با خروجی

مثال: تابع با خروجی int
static int Add(int a, int b)
{
    return a + b;
}
مثال: تابع با خروجی string
static string GetGreeting(string name)
{
    return "Hello " + name;
}
فراخوانی در Main
int sum = Add(10, 20);
Console.WriteLine(sum); // خروجی: 30

string message = GetGreeting("Sara");
Console.WriteLine(message); // خروجی: Hello Sara
30
Hello Sara

کلمه کلیدی return

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

چندریختی (Overloading) در توابع

در سی شارپ می‌توان چندین تابع با نام یکسان اما با پارامترهای متفاوت تعریف کرد. به این مفهوم Overloading گفته می‌شود.

// تابع با دو پارامتر int
static int Add(int a, int b)
{
    return a + b;
}

// تابع با سه پارامتر int
static int Add(int a, int b, int c)
{
    return a + b + c;
}

// تابع با دو پارامتر double
static double Add(double a, double b)
{
    return a + b;
}
فراخوانی
Console.WriteLine(Add(5, 10)); // 15
Console.WriteLine(Add(5, 10, 15)); // 30
Console.WriteLine(Add(5.5, 10.5)); // 16.0
15
30
16

خلاصه

  • متد: مجموعه‌ای از دستورات که با فراخوانی اجرا می‌شوند
  • پارامتر: متغیرهایی که ورودی تابع را دریافت می‌کنند
  • آرگومان: مقادیری که به تابع ارسال می‌شوند
  • void: برای توابع بدون خروجی
  • return: برای برگرداندن مقدار از تابع
  • Overloading: چندین تابع با نام یکسان و پارامترهای متفاوت
#تابع_در_سی_شارپ #متد_در_سی_شارپ #function_CSharp #method_CSharp #پارامتر_در_سی_شارپ #void_در_سی_شارپ #آموزش_برنامه_نویسی_سی_شارپ