Nama : M Yahya Fauzi
Nim : 191011401394
Kelas : 03TPLE020
Mata Pelajaran: Struktur Data
Soal 1
Penjelasan Selection Sort Descending
- Pertama kita deklarasikan dulu kita menggunakan iostream dan conio.h
- lalu menggunakan using namespace std; untuk mempermudah membuat baris
- lalu itu cout<<"UTS"<<endl; hanya judul programnya
- kita deklarasikan int yaitu integer dengan variabel i, j, imaks maks, temp
- lalu int L[10] artinya berisi data maksimal 10 dengan nilai angka di soal 5, 2, 21, 4, 9, 16, 13, 3
- lalu diberi rumus for(i=9; i >= 1; i--) ini rumus decrement
- Imaks = 0 lalu maks = L[0];
- diberi rumus for (j=1; j=i; j++) ini rumus increment
- jadi jika, if (L[j]<maks) dibacanya L yg berisi j kurang dari variabel maks
- Imaks = j; lalu maks = L[J]
- temp = L[i] dan L[i]=maks; L[Imaks]=temp;
- lalu kita tampilkan dengan cout<<"data terurut descending :"<<endl;
- dengan rumus for (i=0;i<=9;i++)
- tampilkan cout<<L[i]<<" ";
- selesai cout<<endl; getch();
Soal 2
Saya pilih yg bagian nomor 2
Ditanya:
A. Jumlah Elemen : [2] * [5] * [6] = 60
B. Jumlah Byte Seluruhnya : 60 * 4byte = 240 byte
C1. Row Major Order
Ditanya : &A[1][3][5]
Diketahui : &A[0][0][0]
1 3 5
Pindah kolom = 1 kolom = 1 elemen
Pindah baris = 3 baris x 6 elemen/baris = 18 elemen
Pindah blok = 5 blok x 24 elemen/blok = 120 elemen
Total perpindahan = 1 + 18 + 120 = 139 elemen
Pindah = 139 Elemen
= 139 * 4 Byte
= 556 Byte (Decimal)
= 22C Hexa Dec
Jadi Alamat @A[1],[3],[5] = BC9A + 22C = BEC6
C2. Coloumn Major Order
Ditanya : &A[1][3][5]
Diketahui : &A[0][0][0]
1 3 5
Pindah kolom = 1 kolom x 4 elemen/kolom = 4 elemen
Pindah baris = 3 baris = 3 elemen
Pindah blok = 5 blok x 24 elemen/blok = 120 elemen
Total perpindahan = 4 + 3 + 120 = 127 elemen
Pindah = 127 Elemen
= 127 * 4 Byte
= 508 Byte (Decimal)
= 1FC Hexa Dec
Jadi Alamat @A[1],[3],[5] = BC9A + 1FC = BE96
Soal 3
Saya pilih yg bagian nomor 1 Insertion Sort
Penjelasan Insertion Sort
- Pertama kita deklarasikan dulu kita menggunakan #include <iostream>
- lalu menggunakan using namespace std; untuk mempermudah membuat baris lalu int main()
- kita deklarasikan int yaitu integer dengan variabel i, j, n, temp
- n = 10; itu maksudnya jumlah data angkanya sebanyak 10
- int a[]={90,145,67,23,189,29,334,92, 266, 95}; ini memasukkan angka nya
- cout<<"\n Data angka sebelum diurutkan"<<endl; ini judul sebelum datanya di urutkan
- lalu diberikan rumus for(i=0;i<n;i++) yaitu increment
- lalu hasil dari rumus tersebut ditampilkan cout<<a[i]<<" , ";
- Lalu diberikan rumus untuk meng urutkan for(i=1;i<=n-1;i++)
- nilai temp=a[i]; jadi variabel a berisi nilai [i]
- lalu diberikan rumus j=i-1; nilai i nya dikurangi 1
- diberikan rumus ketika while((temp<a[j])&&(j>=0))
- lalu rumus untuk meng urutkan a[j+1]=a[j];
- jadinnya j=j-1; lalu setelah itu a[j+1]=temp;
- ini judul untuk menampilkan setelah diurutkan cout<<"\n \n urut setelah inserting sort\n";
- rumusnya for(i=0;i<n;i++)
- maka akan ditampilkan cout<<a[i]<<" , ";
- selesaiBukti Pembayaran
Tidak ada komentar:
Posting Komentar