Лаборатория иши 22
Download 41.34 Kb.
|
22-labaratoriya ishi
Лаборатория иши – 22 МАВЗУ: Битта боғланган рўйхатлар Ишдан мақсад: Битта боғланган рўйхатлар ва алоқадор рўйхатларни C++ дастурлаш муҳитида ишлата олишни ўрганиш. Savollar: 1. Массив деганда нимани тушунасиз ? 2. int С[25]; C++ дастурлаш тилида нимани билдиради ? 3. int х={1,2,3,4} ; неча ўлчовли массив ? 4. Икки оғлчовли масси деганда нимани тушунасиз ва қандай эълон қиламиз? 5. rand () функсиясининг вазифаси нимадан иборат? Javoblar: Массив бу бир типли номерланган маълумотлар жамланмасидир. Массив индексли ўзгарувчи тушунчасига мос келади. Массив таърифланганда типи, номи ва индекслар чегараси кўрсатилади. Масалан, long int а[5]; char w[200]; double f [4][5][7]; char[7][200]. Массив индекслар ҳар доим 0 дан бошланади. Массивлар таърифланганда инициализация қилиниши, яъни бошланғич қийматларлари кўрсатилиши мумкин. Масалан, флоат C[]={1,-1,2,10,-12.5}; Бу мисолда массив чегараси автоматик аниқланади. Агар массив инициализация қилинганда элементлар чегараси кўрсатилган бўлса , рўйҳатдаги элементлар сони бу чегарадан кам бўлиши мумкин, лекин ортиқ бўлиши мумкин эмас. Масалан, int А[5]={2,-2}. Бу ҳолда а[0] ва а[1] қийматлари аниқланган бўлиб, мос ҳолда 2 ва –2 га тенг. int С[25] Бу мисолда массив чегараси автоматик аниқланади. Агар массив инициализация қилинганда элементлар чегараси кўрсатилган бўлса , рўйҳатдаги элементлар сони бу чегарадан кам бўлиши мумкин, лекин ортиқ бўлиши мумкин эмас. Масалан, int А[5]={2,-2}. Бу ҳолда а[0] ва а[1] қийматлари аниқланган бўлиб, мос ҳолда 2 ва –2 га тенг. int х={1,2,3,4} ; bir o’lchovli massiv. Ikki o`lchamli statik massivlarni e`lon qilish. toifa massiv_nomi [massiv_satrlari_soni][massiv_ustunlar i_soni]; Ikki o`lchamli statik massivlarning e`lon qilinishida, bir o`lchamlidan farqi, massiv nomidan keyin qirrali qavs ichida ikkita qiymat yozilganligidadir. Bulardan birinchisi, satrlar sonini, ikkinchisi esa ustunlar sonini bildiradi. Ya'ni ikki o'lchamli massiv elementiga ikkita indeks orqali murojaat qilinadi. Ikki o`lchamli massivlar matematika kursidan ma`lum bo`lgan matritsalarni eslatadi. Ikki o'lchamli massiv e'loniga misol: int a[3][3], b[2][4]; A matritsa B matritsa a00 a01 a02 b00 b01 b02 b03 a10 a11 a12 b10 b11 b12 b13 a20 a21 a22 A matritsa 3 ta satr, 3 ta ustunga ega; B matritsa 2 ta satr, 4 ta ustunga ega; Ikki o'lchamli massivlarda 1 - indeks satrni, 2 - indeks ustunni bildiradi. Birinchi satrning dastlabki elementi a10 – a biru nol element deb o`qiladi. a o`n deyilmaydi. m ta satr va n ta ustunga ega bo`lgan massivga (mxn) o`lchamli massiv deyiladi. Agar m=n (satrlar va ustunlar soni teng) bo'lsa kvadrat massiv deyiladi. rand () funksiyasi : rand() funksiyasi kutubhonasiga tegishli bo’lib,u tasodifiy butun sonni tanlashda ishlatiladi topshiriq: 10- Берилган х[]={11,3,-51,28,9,-4,77} ушбу массив элементларининг ўшиш тартибда сараловчи дастур тузинг. Dasturning kod qismi: #include using namespace std; int main() { int x[]={11,3,-51,28,9,-4,77}; int s=0, p=1, k=0; for ( int I=0; I<6; I++) { if (x[I]>0) { k++; }} cout<<"Musbat elementlar soni= "< int t=0;
{ if (x[I]>0) { s+=x[I];
p*=x[I]; }} cout<<"Musbat elementlar yig'indisi= "< cout<<"Musbat elementlar ko’paytmasidisi= "< cout << "Elementlar sonini kiriting: "< cin>>n;
int a[n]; cout << "Massiv elementlarini kiriting: "< for (int i = 0; i < n; i++) {
cin>>a[i]; for (int i = n-1; i >= 1; i--) {
for (int j = 0; j < i; j++) if (a[j] > a[j+1]) {
swap(a[j],a[j+1]); } } for (int i = 0; i < n; i++) cout<
return 0;
}
|
ma'muriyatiga murojaat qiling