Wednesday 12 February 2014

Laporan Resmi Algoritma Pemrograman modul 3

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
FAKULTAS TEKNIK
 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
ditunjukkan pada Gambar 3.1.
for pencacah:=nilai_awal to nilai_akhir do
aksi

Gambar 3.1. Struktur Bahasa Pascal Untuk Pengulangan FOR Menaik

Menurun (descending)
Pada struktur FOR menurun, nilai_akhir harus lebih besar atau sama dengan nilai_awal. Jika nilai_akhir lebih kecil dari nilai_awal, maka badan pengulangan tidak dimasuki. Pada awalnya, pencacah diinisialisasikan dengan nilai_akhir. Nilai pencacah secara otomatis berkurang satu setiap kali aksi diulangi, sampai akhirnya nilai pencacah sama dengan nilai_awal. Jumlah pengulangan yang terjadi = nilai_akhir nilai_awal + 1. Struktur Bahasa Pascal untuk pengulangan FOR menurun ditunjukkan pada Gambar 3.2.
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.
  while kondisi do
  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.
repeat
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
DEKLARASI
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