Amaliy mashg’ulot 1 Mavzu: Dasturlash tillarida ma’lumotlarning standart turlari. Funksiyalarni amalga oshirish. Nazariy qism


Download 451.39 Kb.
bet1/6
Sana21.04.2023
Hajmi451.39 Kb.
#1372994
  1   2   3   4   5   6
Bog'liq
MUNISA Ma\'lumotlar tuzilmasi va algoritmi 1-deadleni


AMALIY MASHG’ULOT - 1
Mavzu: Dasturlash tillarida ma’lumotlarning standart turlari. Funksiyalarni amalga oshirish.


Nazariy qism
C++ dasturlash tilida har bir o'zgaruvchi yoki o'zgarmasni tipi ya'ni ma'lumot tipi bilan yoziladi.
Ma'lumotlar turi o'zgaruvchini saqlaydigan ma'lumot hajmi va turini belgilaydi:



Type

Typical Bit Width

Typical Range

char

1byte

-127 dan 127 yoki 0 dan 255

unsigned char

1byte

0 dan 255

signed char

1byte

-127 dan 127

int

4bytes

-2147483648 dan 2147483647

unsigned int

4bytes

0 dan 4294967295

signed int

4bytes

-2147483648 dan 2147483647

short int

2bytes

-32768 dan 32767

unsigned short int

2bytes

0 dan 65,535

signed short int

2bytes

-32768 dan 32767

long int

8bytes

-2,147,483,648 dan 2,147,483,647

signed long int

8bytes

same as long int

unsigned long int

8bytes

0 dan 4,294,967,295

long long int

8bytes

-(2^63) dan (2^63)-1

unsigned long long int

8bytes

0 dan 18,446,744,073,709,551,615

float

4bytes




double

8bytes




long double

12bytes






Ma’lumotlar toifalari
Amallar odatda unar ya’ni bitta operandga qo’llaniladigan amallarga va binar ya’ni ikki operandga qo’llaniladigan amallarga ajratiladi.
Binar amallar additiv ya’ni qo’shuv [+] va ayirish [–] amallariga, hamda multiplikativ ya’ni ko’paytirish [*], bo’lish [/] va modul olish[%] amallariga ajratiladi. Additiv amallarining ustuvorligi multiplikativ amallarining ustuvorligidan pastroqdir. Butun sonni butun songa bo’lganda natija butun songacha yaxlitlanadi. Masalan, 10/3=3, (-10)/3=-3, 10/(-3) =-3.


AMALIY QISM:



  1. 2 ta istalgan ma’lumot turidan foydalangan holda 2 ta raqam ayirmasini hisoblang.

Dastur kodi:
#include
using namespace std;

int main()


{
int a, b, c;
cout<<"a="; cin>>a;
cout<<"b="; cin>>b;
c=a-b;
cout<return 0;
}
Natija:
XULOSA
Men ushbu amaliy mashg’ulotni bajarish davomida Dasturlash tillarida ma’lumotlarning standart turlari va Funksiyalarni amalga oshirish,
Ma'lumotlar turi o'zgaruvchini saqlaydigan ma'lumot hajmi va turlarini kabi tushinchalarga ega bo’ldim.

AMALIY MASHG’ULOT- 2
Mavzu: Qidiruv algoritmlari: chiziqli va binary qidiruv. Xesh funksiyalar va xesh algoritmlarini tuzish.

Aytaylik bizga massiv berilgan:
a[]={15, 23, 7, 45, 87, 16};
Bizga ushbu massivda biron bir element bor yoki yo'qligini tekshira oladigan dastur tuzish sharti qo'yilgan. Ushbu masalani yechishda eng birinchi xayolga keladigan usul - bu massivni ketma-ket har bir elementini solishtirib chiqish va bu usul:
Chiziqli qidiruv - Linear Search deb ataladi, va bu usul kodi quyidagi ko'rinishda:
Endi bundan optimal bo'lgan usul - binar(ikkilik) qidiruvni ko'rib chiqsak. Bu usulda ham funksiyaga 2 ta parametr, birinchisi massiv o'zi keyin esa biz qidirayotgan elementni parametr sifatida beriladi.
"Xesh" so'zi ingliz tilidagi «hash» so’zidan olingan bo’lib, uning ma'nosi “shovqin” yoki “aralash” kabi ta'riflanadi. Aslida, bular atamaning haqiqiy ma'nosini to'liq ifodalaydi.
1. Xesh jadvalni tashkil etish: asosiy tushunchalar
Xeshlash – bu ma'lum bir turdagi va ixtiyoriy uzunlikdagi kirish ma'lumotlari massivini fiksirlangan uzunlikdagi chiquvchi bitlar qatoriga (butun son) aylantirish. Bunday akslantirish (aylantirish) xesh-funksiya deb ham ataladi. Xesh-funksiya – bu kirish ma’lumotlarini sonlarga aylantiruvchi funksiya bo’lib, bir xil ma’lumotlar to’plami hamma vaqt bir xil natija beradi.
Yoddan chiqarmaslik kerakki, xeshlangan kalit fiksirlangan uzunlikka ega bo’ladi, imkoni boricha kichik bo’lishi kerak. Xeshlashdan keyin kalit 8 razryaddan tashkil topgan bo’lsin, ya’ni 0 yoki 1 qiymatni qabul qiluvchi 8 bit uzunlikka ega deb olamiz. Shunga mos ravishda xesh-funksiyaning turli xil qiymatlari soni 28=256 ta (0 dan 255 gacha) variantda bo’lishi mumkin. 4-rasmda sakkiz razryadli xesh-funksiyaning umumiy ko’rinishi tasvirlangan.

Download 451.39 Kb.

Do'stlaringiz bilan baham:
  1   2   3   4   5   6




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