Berikut ini adalah pertanyaan dari deltrim7 pada mata pelajaran TI untuk jenjang Sekolah Menengah Pertama
Jawaban dan Penjelasan
Berikut ini adalah pilihan jawaban terbaik dari pertanyaan diatas.
nomor 1
#include <iostream>
using namespace std;
void insertionSort(int arr[], int n) {
int i, j, key;
for (i = 1; i < n; i++) {
key = arr[i];
j = i - 1;
// Pindahkan elemen yang lebih besar ke kanan
// dari elemen yang sedang diperiksa
while (j >= 0 && arr[j] > key) {
arr[j + 1] = arr[j];
j = j - 1;
}
arr[j + 1] = key;
}
}
void printArray(int arr[], int n) {
int i;
for (i = 0; i < n; i++)
cout << arr[i] << " ";
cout << endl;
}
int main() {
int arr[] = { 5,11,7,3,9,2,5,13,23,20 };
int n = sizeof(arr) / sizeof(arr[0]);
cout << "Array sebelum diurutkan: ";
printArray(arr, n);
insertionSort(arr, n);
cout << "Array setelah diurutkan: ";
printArray(arr, n);
return 0;
}
nomor 2
#include <iostream>
using namespace std;
void insertionSort(int arr[], int n) {
int i, j, temp;
for (i = 1; i < n; i++) {
temp = arr[i];
j = i - 1;
while (j >= 0 && arr[j] > temp) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = temp;
}
}
int main() {
int arr[] = { 17,9,12,8,10,6,13,20,11,21 };
int n = sizeof(arr) / sizeof(arr[0]);
insertionSort(arr, n);
cout << "Array yang telah diurutkan secara ascending: ";
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
return 0;
}
Semoga dengan pertanyaan yang sudah terjawab oleh giahere dapat membantu memudahkan mengerjakan soal, tugas dan PR sekolah kalian.
Apabila terdapat kesalahan dalam mengerjakan soal, silahkan koreksi jawaban dengan mengirimkan email ke yomemimo.com melalui halaman Contact
Last Update: Mon, 29 May 23