Guruh talabasi Muydinov Ma’murjonning Ma’lumotlar tuzilmasi va algoritmlar fanidan 1-labarotoriya ishi



Yüklə 24 Kb.
tarix21.01.2023
ölçüsü24 Kb.
#80024
lab1


130-20 guruh talabasi Muydinov Ma’murjonning Ma’lumotlar tuzilmasi va algoritmlar fanidan 1-labarotoriya ishi
13-variant
Topshiriq sharti:Birlashma tipidagi (tipda 2 ta element e`lon qiling )2 ta o`zgaruvchini bir-biridan farqli elementlariga qiymat bering va ularning yig`indisini ikkala o`zgaruvchining qiymat berilmagan elementiga o`zlashtiring. Har ikkala o`zgaruvchining barcha elementlarini ekranga chiqaring va natijani tushuntiring.
Ishdan maqsad: Ma‟lumotlarning oddiy sozlangan va nostandart toifalarini o„rganish va ularni tadqiq qilish.
Qo„yilgan masala: C++ tilida butun, haqiqiy, belgili, mantiqiy toifadagi ma‟lumotlarni e‟lon qilish, nostandart toifalarni yaratish va ularga doir misollarning dasturini ishlab chiqish.
Ish tartibi: Tajriba ishi nazariy ma‟lumotlarini o„rganish;  Berilgan topshiriqning algoritmini ishlab chiqish; C++ dasturlash muhitida dasturni yaratish;
Natijalarni tekshirish; Hisobotni tayyorlash va topshirish.
QISQACHA NAZARIY MA`LUMOT
Birlashmalar (union) Birlashmalar xuddi strukturalarga o„xshash toifa hisoblanadi, farqi shuki, birlashmalarda bir vaqtning o„zida faqat uning bitta elementigagina murojaat qilish mumkin. Birlashma toifasi quyidagicha aniqlanadi: union { 1-elementni tavsiflash; ... n-elementni tavsiflash; }; Birlashmalarning asosiy xususiyati shuki, e‟lon qilingan har bir element uchun xotiraning bitta hududi ajratiladi, ya‟ni ular bir-birini qoplaydi. Bu yerda xotiraning shu qismiga istalgan element bilan murojaat qilsa bo„ladi, lekin buning uchun element shunday tanlanishi kerakki, olinadigan natija ma‟noga ega bo„lishi kerak. Birlashmaning elementiga murojaat xuddi struktura elementiga murojaat kabi amalga oshiriladi. Birlashmalar qo„llaniladigan xotira obyektini initsializatsiya qilish maqsadida ishlatiladi, agarda har bir murojaat vaqtida bir qancha obyektlardan faqat bittasi faollashtirilsa. Birlashma toifasidagi o„zgaruvchi uchun ajratiladigan xotira hajmi ushbu toifaning eng uzun elementi uchun ketadigan xotira hajmi bilan aniqlanadi. Kichik uzunlikdagi element ishlatilganda, birlashma toifasidagi o„zgaruvchi uchun ajratilgan xotira sohasining ayrim qismi ishlatilmaydi. Birlashmaning barcha elementi uchun xotiraning bitta adresdan boshlanuvchi bitta sohasi ajratiladi. Masalan: union { char fio[30]; char adres[80]; int yoshi; int telefon; } inform; union { int ax; char al[2]; } ua; 27 Birlashma tipidagi inform obyektini ishlatganda qiymat qabul qilgan elementnigina qayta ishlash mumkin, ya‟ni masalan inform.fio elementiga qiymat berilgandan keyin boshqa elementlarga murojaat ma‟noga ega emas. ua birlashmasi al elementining kichik ua.al[0] va katta ua.al[1] baytlariga alohida murojaat qilish mumkin.
TOPSHIRIQ KODI
#include
using namespace std;

union Birlashma


{
public:
int a, b;
};

int main() {


Birlashma bir, ikki;
bir.a = 12;
ikki.b = 13;

bir.b = bir.a + ikki.b;


ikki.a = bir.a + ikki.b;

cout << "bir.b: " << bir.b


<< "\tikki.a: " << ikki.a << endl;
}


Yüklə 24 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin