Savol: Matritsani matritsaga ko‘paytiring
Download 1.3 Mb.
|
911-21 Guruh Talabasi Jumaniyozov Akmalbekning MT Mustaqil ish
- Bu sahifa navigatsiya:
- Kiruvchi ma’lumotlar Chiquvchi ma’lumotlar
- Kiruvchi ma’lumotlar
- Chiquvchi ma’lumotlar Dastlabki q ta satrda har bir so’rovga javobni ular berilish tartibida chiqaring. Misollar
Kiruvchi ma’lumotlar: uchta butun son: a, b, c – katta aylanalar radiuslari (1 ≤ a, b, c ≤ 1000).
Chiquvchi ma’lumotlar: To’rtinchi (eng kichik) aylana radiusi. Javobni 10-6 aniqlikda chiqaring.
#include #include using namespace std; int main() { double r1,r2,r3,r4,a,b,c,P,Lc; cout<<"Iltimos radius qiymatini << 1<=r1,r2,r3<=1000>> oraliqda kiriting!!!"< cin>>r1; cout<<"r2="; cin>>r2; cout<<"r3="; cin>>r3; if(1<=r1 and 1<=r2 and 1<=r3 and 1000>=r1 and 1000>=r2 and 1000>=r3) { a=r1+r2, b=r2+r3, c=r1+r3, P=r1+r2+r3; Lc=2/(a+b)*pow((a*b*P*(P-c)),1./2); r4=((Lc-r2)*(r1+2*r2+r3)-(r1+r3)*r2)/(2*(r1+r2+r3)); cout<<"r4="; printf("%.6f",r4); } else{ cout<<"< } return 0; } 15. Saralash algoritmlarining qiyosiy tahlili Savol: Elementlari soni n ta, 1 dan boshlab indekslangan bir o’lchamli massiv quyidagi formulabilan aniqlangan: ai = (b∙i2+c∙i+d) mod m; Bu yerda “mod” amali qoldiq hisoblanadi. Sizning vazifangiz bu massiv elentlarinikamaymaslik tartibda saralab, saralangandan so’ng q ta so’rovga javob berish. Har bir i-so’rovda saralangan massivdagi ki-o’rinda turgan elementning qiymatini chiqarishso’raladi. Kiruvchi ma’lumotlar Birinchi qatorda n va q sonlari berilgan(1≤n≤107, 1≤q≤200). Ikkinchi qatorda b, c, d, m butun sonlari bitta probel bilan ajratib berilgan(1≤b,c,d ≤104, 1≤m≤105). Keyingi q taqatorda so’rovlar berilgan. Har bir so’rov massivdagi nechanchi sonni chiqarishkerakligini ifodalovchi ki sonidan iborat(1≤ ki ≤n). Chiquvchi ma’lumotlar Dastlabki q ta satrda har bir so’rovga javobni ular berilish tartibida chiqaring. Misollar
#include #include #include using namespace std; int main() { unsigned long long n,q,b,c,d,m; cout<<"n va q ni kiriting: "; cin>>n>>q; cout<<"b, c, d va m ni kiriting: "; cin>>b>>c>>d>>m; double a[n+1]; unsigned long long k[q]; for(int i=0; icin>>k[i]; for(int i=1; i<=n; i++) a[i]=fmod((b*i*i+c*i+d),m); sort(a,a+n+1); cout<<"Natija\n"; for(int i=0; icout<} 16. Ma’lumotlarni xeshlashtirish. Xesh jadvali Ushbu qo'llanmada siz xesh jadvali nima ekanligini bilib olasiz. Shuningdek, siz C, C++, Java va Python tillarida xesh-jadval operatsiyalarining ishchi misollarini topasiz. Xesh jadvali ma'lumotlar strukturasi elementlarni kalit-qiymat juftliklarida saqlaydi Kalit - qiymatlarni indekslash uchun ishlatiladigan yagona butun son Qiymat - kalitlar bilan bog'langan ma'lumotlar. Xesh jadvali kaliti va ma'lumotlar Hash jadvalidagi kalit va qiymat Hashing (xesh funktsiyasi) Xesh jadvalida kalitlar yordamida yangi indeks qayta ishlanadi. Va ushbu kalitga mos keladigan element indeksda saqlanadi. Bu jarayon xeshlash deb ataladi. k kalit va h(x) xesh funksiya bo‘lsin. Bu erda h(k) bizga k bilan bog'langan elementni saqlash uchun yangi indeks beradi Xash To'qnashuvi Xash funktsiyasi bir nechta tugmalar uchun bir xil indeksni hosil qilganda, ziddiyat paydo bo'ladi (bu indeksda qanday qiymat saqlanishi kerak). Bunga Xash to'qnashuvi deyiladi. Xash to'qnashuvini quyidagi usullardan biri yordamida hal qilishimiz mumkin. Zanjir bilan to'qnashuvni hal qilish Ochiq adreslash: chiziqli/kvadratik zondlash va ikki marta Xeshlash 1. Zanjir bilan to'qnashuvni hal qilish Zanjirlashda, agar Xash funktsiyasi bir nechta elementlar uchun bir xil indeks hosil qilsa, bu elementlar ikki baravar bog'langan ro'yxat yordamida bir xil indeksda saqlanadi. Agar j bir nechta elementlar uchun uyasi bo'lsa, unda elementlar ro'yxatining boshiga ko'rsatgich mavjud. Hech element mavjud bo'lsa, j NIL mavjud. Universal xashing Universal xeshlashda xesh funksiyasi kalitlardan mustaqil ravishda tasodifiy tanlanadi. // Implementing hash table in C++ #include #include using namespace std; class HashTable { int capacity; list public: HashTable(int V); void insertItem(int key, int data); void deleteItem(int key); int checkPrime(int n) { int i; if (n == 1 || n == 0) { return 0; } for (i = 2; i < n / 2; i++) { if (n % i == 0) { return 0; } } return 1; } int getPrime(int n) { if (n % 2 == 0) { n++; } while (!checkPrime(n)) { n += 2; } return n; } int hashFunction(int key) { return (key % capacity); } void displayHash(); }; HashTable::HashTable(int c) { int size = getPrime(c); this->capacity = size; table = new list } void HashTable::insertItem(int key, int data) { int index = hashFunction(key); table[index].push_back(data); } void HashTable::deleteItem(int key) { int index = hashFunction(key); list for (i = table[index].begin(); i != table[index].end(); i++) { if (*i == key) break; } if (i != table[index].end()) table[index].erase(i); } void HashTable::displayHash() { for (int i = 0; i < capacity; i++) { cout << "table[" << i << "]"; for (auto x : table[i]) cout << " --> " << x; cout << endl; } } int main() { int key[] = {231, 321, 212, 321, 433, 262}; int data[] = {123, 432, 523, 43, 423, 111}; int size = sizeof(key) / sizeof(key[0]); HashTable h(size); for (int i = 0; i < size; i++) h.insertItem(key[i], data[i]); h.deleteItem(12); h.displayHash(); } 17. Xesh jadvallar. Xesh jadvali Ushbu qo'llanmada siz xesh jadvali nima ekanligini bilib olasiz. Shuningdek, siz C, C++, Java va Python tillarida xesh-jadval operatsiyalarining ishchi misollarini topasiz. Xesh jadvali ma'lumotlar strukturasi elementlarni kalit-qiymat juftliklarida saqlaydi Kalit - qiymatlarni indekslash uchun ishlatiladigan yagona butun son Qiymat - kalitlar bilan bog'langan ma'lumotlar. Xesh jadvali kaliti va ma'lumotlar Hash jadvalidagi kalit va qiymat Hashing (xesh funktsiyasi) Xesh jadvalida kalitlar yordamida yangi indeks qayta ishlanadi. Va ushbu kalitga mos keladigan element indeksda saqlanadi. Bu jarayon xeshlash deb ataladi. k kalit va h(x) xesh funksiya bo‘lsin. Bu erda h(k) bizga k bilan bog'langan elementni saqlash uchun yangi indeks beradi 18. Qayta yuklash va qayta aniqlash usullari. Do’stona va virtual funksiyalar ustida amallar Download 1.3 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling