Xudoynazarov qobiljonni




Download 0,53 Mb.
bet8/10
Sana14.05.2024
Hajmi0,53 Mb.
#233267
1   2   3   4   5   6   7   8   9   10
Bog'liq
Xudoynazarov Qobiljon

Dasturiy tatbiqlari
Matematik to'plamlarda ustma ust va qo'shish amallari uchun ko'plab funksiyalar mavjud bo'ladi. Quyidagi kod, matematik to'plamlarga mos funksiyalarni qo'llashni ko'rsatadi:
def ishora(arr):
"To'plamning 1-indexidagi elementini topadi"
if len(arr) == 0:
return None
else:
return arr[0]


def oxiri(arr):
"To'plamning oxirgi elementini topadi"
if len(arr) == 0:
return None
else:
return arr[-1]

Yuqoridagi funksiyalar to'plam elementlariga tegishli topshiriqlarni bajaradi. To’plam va ko’paytirish funksiyalari to'plam elementlarini qo'shish va ko'paytirish amallarini amalga oshiradi. ishora funksiyasi to'plamning birinchi elementini, oxiri funksiyasi, oxirgi elementni topadi. Katta element va kichik element funksiyalari esa, to'plamdagi eng katta va eng kichik elementlarni topish uchun mo'ljallangan.


1. Inyektiv akslantirishlari
Inyektiv akslantirishlar quyidagi kod bilan ifodalangan:


bool is_injective(int* arr, int n) {
set s;
for (int i = 0; i < n; i++) {
if (s.find(arr[i]) == s.end()) {
s.insert(arr[i]);
} else {
return false;


}
return true
}

2. Surjektiv akslantirishlari


Surjektiv akslantirishlar quyidagi kod bilan ifodalangan:


bool is_surjective(int* arr, int n, int m) {
set s;
for (int i = 0; i < n; i++) {
if (arr[i] >= 1 && arr[i] <= m) {
s.insert(arr[i]);
}
}
return s.size() == m;
}

3. Biyektiv akslantirishlari


Biyektiv funksiyalar quyidagidek kodlar yordamida aniqlanadi:
bool is_bijective(int* arr, int n, int m) {

Download 0,53 Mb.
1   2   3   4   5   6   7   8   9   10




Download 0,53 Mb.