2-Amaliy mashg’ulot: Sanab o’tiluvchi turlar. Nazariy ma’lumotlar


Download 25.76 Kb.
Sana19.04.2023
Hajmi25.76 Kb.
#1365718
Bog'liq
2-amaliy


2-Amaliy mashg’ulot: Sanab o’tiluvchi turlar.
Nazariy ma’lumotlar

  1. Sanab o’tiluvchi turlar

Bunday holda biz tople maydonlari bilan usul doirasida aniqlangan o'zgaruvchilar
bilan ishlashimiz mumkin. Tupllar usulga parametr sifatida o'tkazilishi mumkin, ular funksiyaning qaytish natijasi bo'lishi mumkin yoki boshqa usulda ishlatilishi mumkin.
Masalan, umumiy vaziyatlardan biri bu funktsiya ikki yoki undan ortiq qiymatni
qaytarishi, funktsiya faqat bitta qiymatni qaytarishi mumkin. Va koreykalar ushbu
vazifani bajarishning eng maqbul usulini anglatadi:
Using System;
namespace Kortejlar
{
class Program
{
static void Main(string[] args)
{
var tuple = GetValues();
Console.WriteLine(tuple.Item1); // 1
Console.WriteLine(tuple.Item2); // 3
Console.Read();
}
private static (int, int) GetValues()
{
var result = (1, 3);
return result;
}
}
}
Bu gorizontalni qaytaradigan GetValues () usulini belgilaydi. Yorliq qavs ichiga olingan qiymatlar to'plami sifatida tavsiflanadi. Va bu holda, biz int tipidagi ikkita elementning, ya'ni ikkita raqamning grafigini qaytaramiz.
Yana bir misol:
using System;
namespace Kortejlar
{
class Program
{
static void Main(string[] args)
{
var tuple = Kortej_qiymati(new int[] { 1, 2, 3, 4,
5, 6, 7 });
Console.WriteLine(tuple.count);
Console.WriteLine(tuple.sum);
Console.Read();
}
private static (int sum, int count) Kortej_qiymati(int[]
numbers)
{
var result = (sum: 0, count: 0);
for (int i = 0; i < numbers.Length; i++)
{
result.sum += numbers[i];
result.count++;
}
return result;
}
}
}
7 28

Shuningdek, kranni usulga parametr sifatida o'tkazish mumkin:
using System;
namespace Kortejlar
{
class Program
{
static void Main(string[] args)
{
var (name, age) = GetTuple(("Oybek", 38), 25);
Console.WriteLine(name); // Oybek
Console.WriteLine(age); // 63
Console.Read();
}
private static (string name, int age)
GetTuple((string n, int a) tuple, int x)
{
var result = (name: tuple.n, age: tuple.a + x);
return result;
}
}
}
Download 25.76 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling