• Laboratoriya ishi №3
  • Z. M. Bobur nomidagi Andijon davlat universiteti Kompyuter injiniring fakulteti




    Download 19,75 Kb.
    Sana13.05.2024
    Hajmi19,75 Kb.
    #230173
    Bog'liq
    JalolovaA4

    Z. M. Bobur nomidagi Andijon davlat universiteti



    Kompyuter injiniring fakulteti

    Axborot texnologiyalar kafedrasi








    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;


    }

    Download 19,75 Kb.




    Download 19,75 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Z. M. Bobur nomidagi Andijon davlat universiteti Kompyuter injiniring fakulteti

    Download 19,75 Kb.