Anda di halaman 1dari 25

ALGORITMA KOMPUTER

DISUSUN OLEH :
ALIFALKHALIS
21.82.1344

TEKNOLOGI INFORMASI
UNIVERSITAS AMIKOM YOGYAKARTA
2020/2021
SOAL TUGAS 1

1. Jelaskan urutan cara melakukan install visual studio code pada komputer
masing-masing (dalam bentuk Screen Shoot gambar)!

2. Syarat algoritma dikatakan baik adalah sebuah algoritma yang memenuhi 5


syarat, yaitu finiteness, definiteness, input, output, dan effectiveness.
Jelaskan arti 5 syarat tersebut dengan jelas!

3. Langkah-langkah yang membentuk suatu algoritma dapat dibagi menjadi 3


kelompok proses (Sequence process, selection process dan Iteration
process). Jelaskan dan berikan contoh 3 proses yang ada !

4. Apa perbedaan compiler dengan interpreter


JAWABAN

1. LANGKAH-LANGKAH MENGINSTALL VISUAL STUDIO CODE

1. Membuka Google Chrome atau Firefox


2. Tulislah “Visual Studio Code” di kolom pencarian Google lalu tekan
“Enter”, setelah menekan tombol “Enter” tekan tulisan download yang
ditunjukan oleh anak panah
3. Setelah masuk kedalam situs “Visual Studio Code” tekan tulisan
“Download for Windows”
4. Setelah menekan tulisan yang sebelumnya nanti akan di bawa ke halaman
selanjutnya, harus menunggu aplikasi yang di download selesai
5. Setelah selesai mendownload tekan tulisan “Show in folder”
6. Setelah masuk documents install aplikasi yang baru saja di download
dengan cara di tekan dua kali
7. Setelah keluar persetujuan seperti ini bisa dibaca baca terlebih dahulu,
setelah di baca bisa langsung di tekan yang telah di tunjuk oleh panah
tersebut
8. Setelah itu pilih folder atau data dari “Visual Studio Code” harus disimpan
dimana, lalu tekan tulisan “Next”
9. Setelah disimpan data silahkan tekan tulisan “Install” lalu tunggu sampai
selesai
10. Aplikasi siap digunakan
2. - Finiteness, Seperti yang sudah saya jelaskan tadi. Algoritma harus memiliki hasil
output yang sesuai dengan keinginan pengguna. Tanpa Finiteness, maka algoritma
tersebut tidak sesuai dengan keinginan pengguna.

- Definiteness, Definiteness artinya langkah-langkah yang dibuat oleh pembuat harus


jelas dan sesuai dengan tujuan. Sebagai contoh, pada algoritma menghitung orang di
dalam ruangan, algoritmanya "Buat variabel n", "Untuk setiap orang dalam ruangan
lakukan n + 1". Dengan begitu, pengguna algoritma dapat dengan mudah
mengerjakannya

- Input, Input adalah nilai yang dapat kita masukan ke dalam algoritma, jadi
contohnya dalam algoritma menghitung orang di dalam ruangan. Maka inputnya ialah
orang ( Inputnya berupa angka ) tersebut, sesuai dengan algoritmanya.

- Output
Program minimal harus memiliki 1 output. Setiap program pasti memiliki output karena
program dibuat untuk tujuan tertentu. Output program bisa berbentuk file, video, teks,
dll, atau disimpan di clipboard yang kemudian digunakan di program lain atau disimpan
dalam basis data.

- Effectiviness, Effectiveness artinya suatu algoritma harus dapat di bekerja dalam


selang waktu tertentu, atau dalam kata lain suatu algoritma harus bekerja secara efektif.
Contohnya jika kita menghitung orang di dalam ruangan, kita dapat mempercepat
langkahnya dengan, "Untuk setiap 2 orang di dalam ruangan, n+2","Jika ada yang tidak
berpasangan maka n+1".
3. – Sequence process terdiri dari satu atau lebih instruksi. Tiap instruksi
dikerjakan secara berurutan sesuai dengan urutan penulisannya, yakni sebuah
instruksi dilaksanakan setelah instruksi sebelumnya selesai dilaksanakan. Urutan
instruksi menentukan keadaan akhir algoritma. Bila urutannya diubah, maka hasil
akhir mungkin juga berubah.

Contoh daripada sequence adalah :

Penjelasan :
Dari flowchart diatas mula-mula pemroses akan melaksanakan instruksi baris program 1
terlebih dahulu, kemudian instruksi baris program 2 akan dikerjakan setelah instruksi
baris program 1 selesai dikerjakan. Selanjutnya instruksi baris program 3 dikerjakan jika
instruksi baris program 2 telah selesai dikerjakan. Setelah instruksi baris program 3
selesai dilaksanakan maka algoritma berhenti

- Selection sort merupakan perbaikan dari metode bubble sort dengan


mengurangi jumlah perbandingan. Selection sort merupakan metode pengurutan
dengan mencari nilai data terkecil dimulai dari data diposisi 0 hingga diposisi N-1.
Algoritma selection sort akan memindai nilai terkecil dari suatu kumpulan data dan jika
ada, data tersebut akan diletakkan pada urutan pertama. Begitu selanjutnya untuk
urutan kedua dan seterusnya.
Dikatakan selection sort karena algoritma ini mencoba memilih satu per satu elemen
data dari posisi awal, untuk mencari data paling kecil dengan mencatat posisi index-nya
saja, lalu dilakukan pertukaran hanya sekali pada akhir setiap tahapan.
Algoritma Selection Sort dilakukan untuk menyempurnakan kekurangan dari bubble sort
yang melakukan pertukaran setiap kali perbandingan memenuhi kriterianya.
Simulasi

Cara Kerja
Jika terdapat N data dan data terkoleksi dari urutan 0 sampai dengan N-1 maka
algoritma pengurutan dengan metode selection sort adalah sebagai berikut :
Cari data terkecil dalam interval j = 0 sampai dengan j = N-1
Jika pada posisi pos ditemukan data yang terkecil, tukarkan data diposisi pos dengan
data di posisi i jika k.Ulangi langkah 1 dan 2 dengan j = j + i sampai dengan j = N-1, dan
seterusnya sampai j = N - 1.

Contoh Perhitungan
Angka Awal : 15, 16, 2, 9
Proses 1 2, 16, 15, 9
Proses 2 2, 9, 15, 16
Proses 3 2, 9, 15, 16
Source Code Algoritma Selection Sort
function selection_sort($data)
{
for ($i=0; $i<count($data)-1; $i++) {
$min = $i;
for ($j=$i+1; $j<count($data); $j++) {
if ($data[$j]<$data[$min]) {
$min = $j; //cari nilai terkecil
}
}
//swap potition
$temp = $data[$min];
$data[$min] = $data[$i];
$data[$i] = $temp;
//end swap
}
return $data;
}
Cara penggunaan function diatas
$angka = array(3,1,10,7,4,6);
$hasil = selection_sort($angka);
print_r($hasil);
- Iteration process merupakan proses pengembangan perangkat lunak yang berfokus
pada kecepatan sehingga implementasi fitur dapat segera dilakukan tanpa harus
menghabiskan waktu lama atau menunggu hingga produk benar-benar sempurna.
Dalam iteration process, pengembangan produk dilakukan dengan pendekatan learning
by doing. Saat muncul ide untuk menambahkan fitur baru, ide tersebut segera
dieksekusi dan dirilis untuk mendapatkan feedback dari pengguna.
Feedback pengguna ini nantinya digunakan sebagai masukan untuk mengembangkan
produk agar menjadi lebih baik. Proses tersebut terus berputar. Produk akan terus
dikembangkan seiring dengan kebutuhan pengguna yang terus berevolusi. (kondisi)
(kondisi)
Struktur (Looping)
Ada 3 tipe struktur loop di Pascal, yaitu:
1. for loops
2. while loops
3. repeat-until loops
Ketiga tipe ini ga harus selalu ada, tapi menggunakannya dalam bentuk yang berbeda
sesuai tujuannya sangat dianjurkan.
For loops
// for loop format
for (initialCondition; testExpression; iterativeStatement) {
statement1;
statement2;
// ...
statementN;
}
How it works
initialCondition berjalan hanya sekali, ketika repetisi awal
Setelah itu periksa di testExpression. (bentuk ini mirip di while loops). Jika salah,
berhenti. Jika benar, maka:
Menjalankan apa yang ada di badan loops, yaitu statement1 — statement

Jalankan iterativeStatement, yaitu menambah nilai variabel


hingga testExpression terlampaui.
Go back to the testExpression step and repeat

• Contoh gambar:
a.1 Flowchart — For loops
Nah, ini ada problem set untuk kalian. Menurut kalian, apa keluaran dari pseudocode ini?
:D
a.2 Pseudocode — For LoopsWhile-loop
// while loop format
var_number; // initialize condition or expression while (expression) // expression =
var_number operator var_numberN
{
statement1;
statement2;
// ...

statementN;
}
How they work
Tentukan nilai awal var_number, untuk diperiksa pertama kali
Expression di sini untuk memeriksa kondisi yang ada, dan menentukan loop harus
berhenti atau tidak.
expression = var1 operator var2
var1: adalah angka atau nilai awal
operator: bentuk operasi seperti <, >, =, !=, <=, >=, etc
var2: angka yang ingin dibandingkan oleh angka atau nilai awal
benar berarti tetap jalankan badan loop-nya.
salah berarti berhenti
Hal yang perlu diperhatikan. Dalam while loops, ekspresinya diperiksa pertama kali,
berbeda dengan bentuk yang berikutnya yaitu repeat-until.
• Contoh gambar:

b.1 Flowchart — While loops

• Problem set lagi yippe! Apa keluaran dari pseudocode ini?


b.2 Pseudocode — While loops

Repeat-until
Sebenarnya bentuk while dan do — while (repeat — until) memiliki flowchart yang sama
persis, hanya dengan pengecualian:
“badan” loop dijalankan terlebih dahulu, kemudian periksa kondisinya.
• Contoh gambar:

c.1 Flowchart — Repeat until

• Berikut problem-set untuk repeat-until:


c.2 Pseudocode — Repeat until

for-loops
Berikut contoh kasus for loops:
program for_loops;

var
i: integer;

begin
for i := 0 to 10 do
writeln('Hello world!');
end.
While-loops

Berikut contoh kasus while-loops:

program
while_loops;

var ch : char;

begin
writeln('Press ''q'' to exit...');
ch := readkey;
while ch <> 'q' do begin
writeln('I told you press ''q'' to exit!!');
ch := readkey;
end;
end.

Repeat-until
Berikut contoh kasus repeat-until:
program repeat_until;

var response : char;

begin
repeat
writeln('Hey you! You at the keyboard! You are a j*rk!!!');
write('Have you had enough (y/n)?');
read(response);
until (response == 'n' || response == 'N'); // control condition

writeln('Have a nice day.');


readln;
end.
4. Perbedaan

Kategori Compiler Interpreter

Source code telah dikonversi menjadi machine


Lebih mudah digunakan untuk pemula yang baru
Penggunaan code. Sehingga waktu eksekusi program akan
belajar.
lebih singkat.

Tidak menghasilkan program luaran atau berkas


Menghasilkan program luaran atau berkas
executable. Jika ingin menjalankan program, maka
Hasil keluaran executable. Contohnya seperti .exe yang dapat
harus melibatkan source code secara langsung
dijalankan secara independen
selama proses eksekusi.

Hasil kompilasi dari source code akan berjalan


Efektifitas Berjalan lebih lambat ketika dieksekusi.
lebih cepat.

Spesifik ke platform tertentu, misal hasil kompilasi


Cross platform. Bisa dijalankan di banyak platform
Platform berupa berkas.exe tidak dapat dijalankan di Mac.
asalkan memiliki interpreter yang sesuai.
Begitu pula sebaliknya.

Apabila terdapat kesalahan penulisan kode maka Membaca satu per satu baris kode yang ada. Jika
compiler akan menampilkan pesan eror. Selain itu terdapat kode yang salah maka interpreter akan
program tidak akan berjalan atau tidak menampilkan pesan eror dan harus diperbaiki
Alur
menghasilkan berkas executable apabila kesalahan untuk melanjutkan eksekusi baris selanjutnya.
pembacaan
kodenya belum diperbaiki. Misal ada kode yang Misalnya terdapat eror di baris ke-5, maka masih
salah di baris ke-5 maka harus diperbaiki dulu bisa berjalan karena baris pertama sampai
supaya bisa berjalan. keempat tidak ada eror.

Bahasa Bahasa pemrograman yang memerlukan compiler Bahasa pemrograman yang memerlukan
Pemrograman seperti C, C++, C#, Swift, Java interpreter seperti JavaScript, Python, PHP, Ruby.
Referensi:
https://brainly.co.id/tugas/23922932
https://brainly.co.id/tugas/25909494
https://www.dictio.id/t/apa-yang-dimaksud-dengan-sequence-dalam-
algoritma/13076/4
https://arfianhidayat.com/algoritma-selection-sort
https://startupstudio.id/pentingnya-iteration-process/
https://medium.com/codelabs-unikom/algoritma-perulangan-iteration-looping-
apa-itu-df8007239f9c
https://aderoni.com/pemrograman/perbedaan-compiler-dan-interpreter/

Anda mungkin juga menyukai