|
Z. M. Bobur nomidagi Andijon davlat universiteti Kompyuter injiniring fakulteti
|
Sana | 13.05.2024 | Hajmi | 19,75 Kb. | | #230173 |
Bog'liq JalolovaA4
Kompyuter injiniring fakulteti
Kompyuter injiniring 2-kurs 1 guruh talabasi Jalalova Laylixonning
Ma'lumotlar tuzilmasi va algoritmlar fanidan laboratoriya ishi
Laboratoriya ishi №3 Mavzu: Qidiruv algoritmlari bilan ishlashga doir masalalar yechish Ishning maqsadi: Qidiruv algoritmlari bilan ishlashga doir masalalar yechishni o’rganish. Kerakli jihoz va vositalar:Kompyuter, adabiyotlar, internet manbalari. Nazariy qism
Muayyan shartga javob beruvchi ro’yxatdagi elementni topishga asoslangan algoritm qidiruv algoritmi deyiladi.Qidiruv natijasi 1 ta yoki 1 nechta bo’lishi mumkin.
using System;
public class HelloWorld
{
public static void Main(string[] args)
{
int N = 5;
string[] a = new string[5] {"-","+","kalit","key","="};
string k; Console.Write("k=");
k=Console.ReadLine();
int bor = 0;
for (int i = 0; iif (a[i] == k) { bor = bor + 1;Console.WriteLine(i);}
}
if(bor==0){ Console.WriteLine("Qidirilgan " + Convert.ToString(k) + " elementi yo'q");}
}
}
Topshiriqlar
1.N ta butun sondan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
2.N ta haqiqiy sondan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
3.N ta mantiqiy turdan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
4.N ta belgi turidan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
5.N ta satr turidan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
1.N ta butun sondan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
#include
using namespace std;
bool bor_yoq(int massiv[], int uzunlik, int k) {
for (int i = 0; i < uzunlik; ++i) {
if (massiv[i] == k) {
return true; // Element topildi
}
}
return false; // Element topilmadi
}
void bor_indekslar(int massiv[], int uzunlik, int k) {
bool topildi = false;
cout << "Bor elementlar indekslari: ";
for (int i = 0; i < uzunlik; ++i) {
if (massiv[i] == k) {
cout << i << " ";
topildi = true;
}
}
if (!topildi) {
cout << "Yo'q";
}
cout << endl;
}
int main() {
int massiv[] = {3, 7, 2, 8, 4, 6, 5};
int uzunlik = sizeof(massiv) / sizeof(massiv[0]);
int k;
cout << "Qidirayotgan elementni kiriting: ";
cin >> k;
if (bor_yoq(massiv, uzunlik, k)) {
cout << k << " elementi massivda bor." << endl;
bor_indekslar(massiv, uzunlik, k);
} else {
cout << k << " elementi massivda yo'q." << endl;
}
return 0;
}
2.N ta haqiqiy sondan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
#include
using namespace std;
int main() {
int N = 8;
double a[8] = {3, 7.5, 1.2, 4.34, 3.14, 2.82,9.3, 0};
double k;
cout << "k=";
cin >> k;
int bor = 0;
for (int i = 0; i < N; i++) {
if (a[i] == k) {
bor = bor + 1;
cout << i << endl;
}
}
if (bor == 0) {
cout << "Qidirilgan " << k << " elementi yo'q" << endl;
}
return 0;
}
3.N ta mantiqiy turdan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
#include
#include
#include
using namespace std;
bool stringToBool(string str) {
if (str == "true") {
return true;
} else if (str == "false") {
return false;
} else {
cout << "Noto'g'ri qiymat! true yoki false kiriting." << endl;
exit(1);
}
}
int main() {
int N = 8;
vector a = {true, false, true, true, false, true, false, false};
string k_str;
cout << "k=";
cin >> k_str;
bool k = stringToBool(k_str);
int bor = 0;
for (int i = 0; i < N; i++) {
if (a[i] == k) {
bor++;
cout << i << endl;
}
}
if (bor == 0) {
cout << "Qidirilgan " << k_str << " elementi yo'q" << endl;
}
return 0;
}
4.N ta belgi turidan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
#include
#include
#include
using namespace std;
int main() {
char a[10] = {'b', ')', '?', '#', '2', '=', '-', '7', '1', '3'};
for (int i = 0; i < 10; i++)
cout << " " << a[i];
cout << "\n";
char k;
cout << "Qidiruvdagi k elementi=";
cin >> k;
int bor = 0;
for (int i = 0; i < 10; i++) {
if (a[i] == k) {
bor++;
cout << "\n Indeksi:" << i;
}
}
if (bor == 0) {
cout << "\n Bunday " << k << " elementi yo'q";
}
return 0;
}
5.N ta satr turidan tashkil topgan massivda k ga teng element bor yoki yo’q ekanligini chiziqli qidiruv algoritmi yordamida aniqlang.Bor bo’lsa indekslarini chiqaring yo’q bo’lsa yo’q ekanligini.
#include
#include
#include
using namespace std;
int main() {
string a[7] = {"Andijon","Jizzax","Samarqand", "Namangan", "Sirdaryo", "Buxoro", "Toshkent"};
for (int i = 0; i < 7; i++)
cout << " " << a[i];
cout << "\n";
string k;
cout << "Qidiruvdagi k elementi=";
cin >> k;
int bor = 0;
for (int i = 0; i < 7; i++) {
if (a[i] == k) {
bor++;
cout << "\n Indeksi:" << i;
}
}
if (bor == 0) {
cout << "\n Bunday " << k << " elementi yo'q";
}
return 0;
}
|
| |