LAPORAN RESMI
PRAKTIKUM
ALGORITMA PEMROGRAMAN
MODUL 3
“PENGULANGAN (LOOPING)”
Disusun
Oleh :
TGL. PRAKTIKUM :
01
November 2012
NAMA
: Azza Devi
Manzilia
NRP : 120411100110
Kelompok : D2
Dosen : Arik Kurniawati, S.kom, MT
KELOMPOK : D1
DOSEN :
Arik Kurniawati ,S.kom., MT
|
TELAH DISETUJUI TANGGAL :
...........................................
ANDI HARTONO
(10.04.1.1.1.00020)
SHOHIB
(1004111000101)
|
LABORATORIUM COMMON COMPUTING
JURUSAN TEKNIK INFORMATIKA
UNIVERSITAS TRUNOJOYO
MADURA
2012
BAB I
PENDAHULUAN
1.1.Latar
belakang
Penulisan koding yang berulang-ulang pada akhir-akhir ini cukup banyak
menyita waktu dan tenaga. Program pascal banyak digunakan untuk membuat
program, fitur yang diberikan pascal salah adanya looping yang banyak mempunyai
manfaat. Looping yang berfungsi untuk mengerjakan suatu statement atau blok
statement secara berulang-ulang sebanyak yang anda inginkan. Program tersebut
banyak digunakan dalam pembuatan program karena program ini banyak menghemat
waktu dan tenaga selama penulisan koding.
1.2.Tujuan
1.
Agar mahasiswa dapat memahami dan dapat menulis koding looping dengan
baik dan benar
2.
Agar mahasiswa dapat membuat program dengan menggunakan looping
BAB II
PEMBAHASAN
2.3.
Teori
Terdapat
dua model struktur pengulangan, yaitu:
1.
Struktur Pengulangan
Tanpa Kondisi (unconditional looping). Di dalam struktur ini,
instruksi-instruksi di dalam badan pengulangan diulangi sejumlah kali yang dispesifikasikan
(jumlah pengulangan sudah diketahui sebelum eksekusi).
Contoh: Struktur FOR.
2.
Struktur Pengulangan Dengan Kondisi (conditional
looping). Di dalam struktur ini, jumlah pengulangan tidak diketahui sebelum
eksekusi program. yang dapat ditentukan hanya kondisi berhenti pengulangan,
artinya instruksi-instruksi di dalam badan pengulangan diulangi sampai kondisi
berhenti terpenuhi.
Contoh: Struktur WHILE dan Struktur REPEAT.
Macam-macam struktur pengulangan:
a. Struktur FOR
Struktur pengulangan FOR digunakan untuk
mengulang statemen atau satu blok statemen berulang kali. Jumlah pengulangan
diketahui atau dapat ditentukan sebelum eksekusi. Untuk mencacah sudah jumlah
pengulangan diperlukan sebuah variabel pencacah (counter). Variabel ini
nilainya selalu bertambah satu setiap kali pengulangan dilakukan. Jika cacah
pengulangan sudah mencapai jumlah yang dispesifikasikan, maka proses
pengulangan berhenti. Pada struktur FOR, pencacah haruslah dari tipe
data yang memiliki predecessor dan successor, yaitu integer atau karakter. Tipe
riil tidak dapat digunakan sebagai pencacah. Aksi adalah satu
atau lebih instruksi yang diulang. Bentuk struktur FOR ada dua macam:
Menaik (ascending)
Pada struktur
FOR menaik, nilai_awal harus lebih kecil atau sama dengan nilai_akhir.
Jika nilai_awal lebih besar dari nilai_akhir, maka badan pengulangan
tidak dimasuki. Pada awalnya, pencacah diinisialisasikan dengan nilai_awal.
Nilai pencacah secara otomatis bertambah satu setiap kali aksi pengulangan
dimasuki, sampai akhirnya nilai pencacah sama dengan nilai_akhir.
Jumlah pengulangan yang terjadi = nilai_akhir – nilai_awal + 1.
Struktur Bahasa
Pascal untuk pengulangan FOR menaik
for
pencacah:=nilai_awal to nilai_akhir do
aksi
Gambar
3.1. Struktur Bahasa Pascal Untuk Pengulangan FOR Menaik
Menurun (descending)
for
pencacah:=nilai_akhir downto nilai_awal do
aksi
Gambar
3.2. Struktur Bahasa Pascal Untuk Pengulangan FOR Menurun
b. Struktur WHILE
Pada struktur WHILE, aksi (atau
runtunan aksi) akan dilaksanakan berulang kali selama kondisi bernilai
true. Jika kondisi bernilai false, badan pengulangan tidak akan
dilaksanakan, yang berarti pengulangan selesai. Yang harus diperhatikan adalah
pengulangan harus berhenti. Pengulangan yang tidak pernah berhenti menandakan
bahwa logika pemrograman tersebut salah. Pengulangan berhenti apabila kondisi
bernilai false. Agar kondisi suatu saat bernilai false,
maka di dalam badan pengulangan harus ada instruksi yang mengubah nilai
variabel kondisi.
aksi
Gambar
3.3. Struktur Bahasa Pascal Untuk Pengulangan WHILE
c. Struktur REPEAT
Struktur ini mendasarkan pengulangan
pada kondisi boolean. Aksi di dalam badan pengulangan diulang
sampai kondisi boolean bernilai true. Dengan kata lain, jika
kondisi boolean masih false, pengulangan masih terus dilakukan. Karena
proses pengulangan suatu saat harus berhenti, maka di dalam badan pengulangan
harus ada aksi yang mengubah nilai variabel kondisi. Struktur REPEAT
mempunyai makna yang sama dengan WHILE, dan dalam beberapa masalah kedua
struktur tersebut komplemen satu sama lain.
aksi
until
kondisi
Gambar
3.4. Struktur Bahasa Pascal Untuk Pengulangan REPEAT
BAB III
TUGAS PENDAHULUAN
3.3.
Prepraktikum
SOAL!
Kerjakan tugas-tugas di bawah ini
sebelum praktikum dimulai.
1.
Jelaskan perbedaan antara struktur pengulangan FOR, WHILE dan REPEAT dan
bagaimana hasilnya untuk implementasi masing-masing!
2.
Buatlah program untuk menampilkan bilangan ganjil untuk mahasiswa ber
NIM ganjil, sedangkan bilangan genap untuk mahasiswa ber-NIM genap. Deretan
bilangan itu berhenti sampai dengan angka 100
3.
Buatlah algoritma untuk menampilkan deret bilangan 1, -2, 4, -8 ........
sampai dengan 20 suku.
4.
Buatlah algoritma untuk menampilkan deret bilangan hasil faktorial 1,
2,6,24, ... (berhenti jika sama dengan banyaknya suku tertentu yang dimasukkan
melalui piranti masukan, nilai awal deret dimasukkan melalui piranti masukan)!
Contoh:
Masukan suku pertama : 1
Masukan batas suku: 4
Deret Keluaran: 1, 2,6,24
JAWABAN
1.
ü For Do ( Pengulangan Tanpa Kondisi ) For do merupakan struktur pengulangan dimana aksi dilakukan sebanyak hitungan pencacah pengulangan. Pencacah pengulangan dapat diset sesuai dengan nilai yang ingin kita
mulai.
ü Repeat-Until ( Pengulangan dengan Kondisi ) Repeat berarti ulangi dan until berarti sampai. Jadi, repeat-until adalah struktur pengulangan dimana aksi dilakukan hingga kondisi ( persyaratan ) berhenti terpenuhi.
ü While-do ( Pengulagan dengan Kondisi ) While berarti selagi/ selama dan do berarti lakukan. Jadi, while-do artinya struktur pengulangan dimana selama kondisi ( persyaratan ) pengulangan masih benar, maka aksi dikerjakan.
2. uses wincrt;
var
a,b : integer;
begin
writeln('1: NIM
ganjil');
writeln('2: NIM
genap');
write('Pilih 1 atau 2
: ');readln(a);
case a of
1: begin
b:=1;
while b <=100 do
begin
writeln(b);
b:=b+2;
end;
end;
2:
begin
b:=2;
while
b <=100 do
begin
writeln(b);
b:=b+2;
end;
end;
end;
end.
3. Alogaritma_Deret_Suku
DEKLARASI
:
n:longint
DESKRIPSI
:
n:= 1;
while n <= 1000000 do
write (n,' , ');
n := n * -2;
4. Alogaritma_Program_Faktorial
DEKLARASI:
i,n,f:integer
DESKRIPSI :
writeln ('suku pertama’ =,n ) f:=1
writeln ('batas suku’ =,n )
writeln ('deret faktorial')
for i:=1 to n do
f:=f*i
Write (f)
BAB IV
IMPLEMENTASI
4.1.
Kegiatan Praktikum
Pada saat
praktikum, kerjakan tugas-tugas berikut ini:
1.
Buat
program untuk tugas prepraktikum 2!
2.
Buat
program untuk tugas prepraktikum 3!
4.2.
Tugas Akhir
Buatlah algoritma dan terjemahkan dalam
Bahasa Pascal untuk membuat bentuk “X” dari deretan angka berdasarkan batas
nilai yang dimasukkan melalui piranti masukan!
Contoh:
Masukkan batas nilai: 5
Hasil X deretan angka:
1
1
2 2
33
4 4
5
5
4.3.
Tugas tambahan
1. Buatlah program menampilkan bentuk angka terakhir NIM
kamu dari deretan bintang (*).
2.
Buatlah
program menampilkan bentuk “O” dari deretan bintang (*) yang di tengahnya ada
satu bintang.
JAWABAN KEGIATAN PRAKTIKUM
1.
program
prepraktikum nomor 2
2. Program prepraktikum nomor 3
JAWABAN TUGAS AKHIR
Algoritma
var
a,b,i,n,m:integer;
DESKRIPSI
write('Masukkan n = ');
readln(n);
m:=(n div 2)+1;
i:=0;
for a:=1 to m do
begin
i:=i+1;
for b:=1 to m do
begin
if i=b then
write(i) else write(' ');
end;
for b:=m downto 1 do
begin
if i=b then
write(i) else write(' ');
end;
writeln(' ');
end;
for a:=m+1 to n do
begin
i:=i+1;
for b:=n downto m do
begin
if i=b then
write(i) else write(' ');
end;
for b:=m to n do
begin
if i=b then write(i) else write('
');
end;
writeln(' ');
RUNNING
PROGRAM
JAWABAN
TUGAS TAMBAHAN
1. Koding
program angka nol
program
kotak;
uses
wincrt;
procedure
gb(brs,kol : integer);
var
i,j : integer;
begin
for i:=1 to brs do
begin
for j:=1 to kol do
begin
if((i=1) or (i=brs) or (j=1) or
(j=kol)) then write('*')
else write(' ');
end;
writeln;
end;
end;
var
x,y : integer;
begin
write('Banyak baris = ');readln(y);
write('Banyak kolom = ');readln(x);
writeln('Bentuknya :');
gb(y,x);
end.
|
Running program
angka nol
2. koding
bintang tengah
procedure
gb(brs,kol : integer);
var
i,j : integer;
begin
for i:=1 to brs do
begin
for j:=1 to kol do
begin
if((i=1) or (i=brs) or (j=1) or
(j=kol)) then write('*')
else if((i=brs div 2+1 ) and
(j=kol div 2+1)) then write('*')
else write(' ');
end;
writeln;
end;
end;
var
x,y : integer;
begin
write('Banyak baris = ');readln(y);
write('Banyak kolom = ');readln(x);
writeln('Bentuknya :');
gb(y,x);
end.
|
Running program bintang tengah
BAB
V
PENUTUP
5.1.
Kesimpulan
Looping (perulangan) yang berfungsi untuk
mengerjakan suatu statement atau blok statement secara berulang-ulang sebanyak
yang anda inginkan. Pascal menyediakan tiga buah struktur control perulangan,
yaitu while..do, repeat.. until dan for
5.2.
Saran
1. Untuk
kegiatan praktikum sebaiknya lebih di kondisikan
2.
Untuk asisten praktikum
sebaiknya lebih tepat waktu untuk memulai dan mengakhiri praktikum.
No comments:
Post a Comment