Rabu, 26 Juli 2023

UAS Structur Data C++

UAS STRUKTUR DATA INSERTION

 

1. Insetion Short

Source Code :

//Nama : Ikhsan Ferry Pratama
//NIM : 21144005

#include <iostream>

using namespace std;

//Nama    : Ikhsan Ferry Pratama

//NIM      : 21144005            

int main(){

int y;

            cout<<"Masukkan Banyak Bilangan :";

            cin>>y;

            int x[y];

            for(int i=0; i<y; i++){

                                    cout<<"Elemen Ke  -"<<i<<" :";

                                    cin>>x[i];

                        }

                        cout<<"Data Sebelum di urutkan : ";

                        for(int i=0; i<y; i++){

                                    cout<<x[i]<<" ";

                        }

                        cout<<endl;

                        for(int i=1; i<y; i++){

                                    int key = x[i];

                                    int j = i-1;

                                    while(j>=0 && x[j] > key){

                                                x[j+1] = x[j];

                                                j--;

                                    }

                                    x[j+1] = key;

                                    for(int m=0;m<y;m++){

                                    cout<<x[m]<<" ";

                            }

                            cout<<endl;

                        }

                        cout<<"Data Setelah di urutkan : ";

                        for(int m=0;m<y;m++){

                                    cout<<x[m]<<" ";

                        }

            }

Tampilan Run




2. Buble Short

Source Code

//Nama : Ikhsan Ferry Pratama
//NIM : 21144005

#include <iostream>

#include <conio.h>

using namespace std;

    int data[10], data2[10];

    int n;

               

int tukar (int a,int b){

    int t;

    t=data[b];

                data[b]=data[a];

                data[a]=t;

            }

           

            int input(){

                cout<<"Masukan Jumlah Data = ";

                        cin>>n;

           

                        cout<<endl;

               

                for (int i=0;i<n;i++){

                        cout<<"Masukan Data Ke-"<<i+1<<" = ";

                        cin>>data[i];

                       

                        data2[i]=data[i];

                        }

                        cout<<endl;    

            }

           

            int tampil(){

                        for (int i=0;i<n;i++){

                             cout<<"["<<data[i]<<"] ";

                        }

                        cout<<endl;

            }

           

            int bubble_sort(){

                        for (int i=1; i<n;i++){

                                    for (int j=n-1; j>=i;j--){

                                                if (data[j]<data[j-1]){

                                                            tukar(j,j-1);

                                                }

                                    }

                                    tampil();

                        }

                        cout<<endl;

            }

           

           

            int main()

              {

                        cout<<"ALGORITMA BUBBLE SORT"<<endl;

                        cout<<"----------------------"<<endl;

                        input();

                        cout<<"Proses Bubble Sort"<<endl;

                        tampil();

                        bubble_sort();

              getch();

              }

Tampilan Run




3. Queue

Source Code :


#include <iostream>
#include <conio.h>
#include <stdlib.h> 
#define MAX 1000 

using namespace std;
//Nama : Ikhsan Ferry Pratama
//NIM : 21144005
int nomer[MAX];
int head=-1;
int tail=-1;
bool IsEmpty(){ 
   if(tail == -1){
       return true;
   }else{
       return false;
   }
}
bool IsFull(){ 
   if(tail == MAX-1){
       return true;
   }else{
       return false;
   }
}
void AntrianMasuk(int no){
    if (IsEmpty()){
        head=tail=0;
    }else {
        tail++;
    }
    nomer[tail]=no;
}

void AntrianKeluar(){
    if(IsEmpty()){
        cout<<"Antrian sudah kosong ! ";
        getch();
    }else {
        for(int a=head;a<tail;a++){
            nomer[a]=nomer[a+1];
        }
        tail--;
        if(tail == -1){
            head = -1;
        }
    }
}

void Clear(){
     head=tail=-1;
}
void View(){
     if(IsEmpty()){
         cout<<"Antrian kosong ! ";

     }else {
         system("cls");
         for(int a=head;a<=tail;a++){
              cout << "==============================="
                   << "\n >> No. Antri : [" << nomer[a] << "]"
                   << "\n==============================="<< endl;
         }
     }
}

int main(){
    system("color 2");
    int choose, p=1, urut; 
    do{
        system("cls");
        cout << "\n\n===== PROGRAM ANTRIAN C++ ====="
             << "\n==============================="
             << "\n|1. Tambah Antrian            |"
             << "\n|2. Panggil Antrian           |"
             << "\n|3. Lihat daftar antrian      |"
             << "\n|4. Format                    |"
             << "\n|5. Exit                      |"
             << "\n===============================";
        cout << "\nChoose ! "; cin >> choose;
        cout << "\n\n";
        if(choose == 1){
            if(IsFull()) {
                cout<<"Antrian sudah penuh, mohon tunggu beberapa saat lagi ";
            }
            else{
                urut=p;
                AntrianMasuk(urut);
                cout << "---------------------------------" << endl;
                cout << "|          NO. ANTRIAN          |" << endl;
                cout << "|               " << p << "              ||" << endl;
                cout << "---------------------------------" << endl;
                cout << "|       Silahkan Mengantri      |" << endl;
                cout << "|      Menunggu " << tail << " Antrian      ||" << endl;
                cout << "---------------------------------" << endl;
                p++;
            }
        }
        else if(choose == 2){
            cout << "=================================" << endl;
            cout << "No. Antri : [" << nomer[head] << "]";
            cout << "\n=================================" << endl;
            AntrianKeluar();
            cout << "Silahkan Dipanggil !" << endl;
        }
        else if(choose == 3){
            View();
        }
        else if(choose == 4){
            Clear();
            cout<<"Antrian dikosongkan ! ";
        }
        else if(choose == 5){
        }
        else{
            cout << "Masukan anda salah ! \n"<< endl;
        }
        getch();
    }while(choose!=5);
}

Tampilan Run





 

4. Program Mengurutkan

Source Code :

//Nama : Ikhsan Ferry Pratama
//NIM : 21144005

#include <iostream>

void bubbleSort(int arr[], int n) {

    for (int i = 0; i < n - 1; i++) {

        for (int j = 0; j < n - i - 1; j++) {

            if (arr[j] > arr[j + 1]) {

                int temp = arr[j];

                arr[j] = arr[j + 1];

                arr[j + 1] = temp;

            }

        }

    }

}

int main() {

    const int jumlahData = 10;

    int data[jumlahData];

    std::cout << "Masukkan " << jumlahData << " nilai data:" << std::endl;

    for (int i = 0; i < jumlahData; i++) {

        std::cout << "Data ke-" << i + 1 << ": ";

        std::cin >> data[i];

    }

    std::cout << "Data sebelum diurutkan: ";

    for (int i = 0; i < jumlahData; i++) {

        std::cout << data[i] << " ";

    }

    bubbleSort(data, jumlahData);

    std::cout << "\nData setelah diurutkan: ";

    for (int i = 0; i < jumlahData; i++) {

        std::cout << data[i] << " ";

    }

    std::cout << std::endl;

    return 0;

}

#include <iostream>

void bubbleSort(int arr[], int n) {

    for (int i = 0; i < n - 1; i++) {

        for (int j = 0; j < n - i - 1; j++) {

            if (arr[j] > arr[j + 1]) {

                int temp = arr[j];

                arr[j] = arr[j + 1];

                arr[j + 1] = temp;

            }

        }

    }

}

int main() {

    const int jumlahData = 10;

    int data[jumlahData];

    std::cout << "Masukkan " << jumlahData << " nilai data:" << std::endl;

    for (int i = 0; i < jumlahData; i++) {

        std::cout << "Data ke-" << i + 1 << ": ";

        std::cin >> data[i];

    }

    std::cout << "Data sebelum diurutkan: ";

    for (int i = 0; i < jumlahData; i++) {

        std::cout << data[i] << " ";

    }

    bubbleSort(data, jumlahData);

    std::cout << "\nData setelah diurutkan: ";

    for (int i = 0; i < jumlahData; i++) {

        std::cout << data[i] << " ";

    }

    std::cout << std::endl;

    return 0;

}


Tampilan Run



Tidak ada komentar:

Posting Komentar

UAS Structur Data C++

UAS STRUKTUR DATA INSERTION   1. Insetion Short Source Code : //Nama : Ikhsan Ferry Pratama //NIM : 21144005 #include <iostream> u...