Selasa, 31 Mei 2011

Pertemuan 11

Melanjutkan pembuatan flowchart yang lalu dimana beberapa prosesnya hanya melibatkan pihak internal perusahaan. Untuk kali ini buat flowchart dari sebuah peusahaan penjualan online yang menjual barang digital seperti musik, video, software dengan pembayaran yang juga melibatkan pihak ketiga (bank, paypal dll)

Minggu, 15 Mei 2011

Pertemuan 10

Flowchart Proses Bisnis Rent Car

Silahkan anda pelajari proses bisnis di Penyewaan Mobil.kemudian buat flowchartnya. Jawaban di kirim ke email inaylaksi@gmail.com.

Inay

Pertemuan 9

Flowchart Proses Bisnis Warnet

Silahkan anda pelajari proses bisnis di Warnet.kemudian buat flowchartnya. Jawaban di kirim ke email inaylaksi@gmail.com.

Inay

Pertemuan 8

Flowchart Penjualan Barang Indomart

Silahkan anda pelajari proses bisnis di Indomart.kemudian buat flowchartnya. Jawaban di kirim ke email inaylaksi@gmail.com.

Inay
Flowchart Penjualan Barang Indomart

Silahkan anda pelajari proses bisnis di Indomart.kemudian buat flowchartnya. Jawaban di kirim ke email inaylaksi@gmail.com.

Inay

Senin, 25 April 2011

flowchart

Silahkan download symbol flowchart pada alamat berikut:

http://www.4shared.com/document/BWsQHSX_/flowchart.html
pelajari symbolnya. tugasnya adalah buat sebuah contoh flowchart apa saja.

Rabu, 23 Maret 2011

Modularisasi

Modularisasi
Modularisasi digunakan bila ada suatu permasalahan yang kompleks, sehingga langkah pertama adalah mengidentifikasikan tugas utama, setelah itu baru di bagi kedalam tugas yang lebih rinci.
Proses ini disebut juga dengan Top Down Design

Memecahkan algoritma ke dalam algoritma yang lebih kecil/modul
Modul yang dibentuk mempunyai kesatuan tugas / fungsi maupun kesatuan proses/prosedur
Setiap modul harus mempunyai single entry dan single exit secara beruntun dari atas ke bawah atau dari awal ke akhir modul
Memiliki main program dan sub program atau modul

Menyampaikan data dari modul pemanggil ke modul yang dipanggil (subordinate)
Menyampaikan informasi dari subordinate ke modul pemanggil
Informasi/data yang dikirim atau diterima di pass 2 arah dari modul pemanggil ke subordinate maupun sebaliknya

Variabel, Konstanta, Literal
Elementary Data
Integer
Real
Character
Boolean
Struktur Data
Record
File
Array
String

VariabelAdalah nama yang diberikan bagi sekumpulan sel memory yang di rancang untuk menyimpan data tertentu
Disebut variabel karena data yang tersimpan dapat diubah
Konstanta Sebuah data dengan nama dan nilai yang akan tetap sama selama program dijalankan
Literal Adalah konstanta yang namanya menunjukkan nilainya

Integer:Menampilkan set bilangan baik positif maupun negatif
Real :
Menampilkan set bilangan, positif dan negatif dan juga desimal
Character
Menampilkan karakter alphabet, dengan tambahan spesial karakter
Boolean:
Menampilkan flag atau switch yang berisi satu atau dari dua kemungkinan – False atau True

Record:
Sebuah kumpulan data / field yang memiliki hubungan antara satu dengan yang lainnya
File
Sebuah kumpulan record.
Array
Sebuah struktur data yang terdiri dari sejumlah variabel yang mempunyai tipe yang sama dan diakses dengan nama yang sama juga
String
Sebuah kumpulan karakter

Global Data
Variabel yang dikenal diseluruh program tersebut, dan dapat diakses dari setiap modul di program tersebut.
Local Data
Variabel yang didefiniskan disebuah modul. Variabel ini hanya dikenal di modul dimana variabel tersebut didefinisikan
Jangkauan Data
Adalah bagian program dimana variabel didefinisikan dan dapat diakses. Contoh: jangkauan data untuk global data adalah seluruh program
Side Effect
Adalah sebuah bentuk komunikasi antar modul dengan bagian lain dalam program.

contohnya...


    Sub A
        call B
    End sub

    Sub B
        integer X, Y, total
        string baca
        X = 20
        Y = 30
        baca = "Jumlah X+Y adalah "
        total = X + Y
        PRINT baca + total
    End Sub


    Sub A
        Call B
        PRINT baca + total
    End Sub

    Sub B
        integer X, Y, total
        string baca
        X = 20
        Y = 30
        baca = "Jumlah X+Y adalah "
        total = X + Y
    End Sub


    Sub Tambah
        Total = x + y
        PRINT Total
    End Sub

    Sub Kali
        Total = x * y
        PRINT Total
    End Sub
   
    Sub Bagi
        Total = x / y
        PRINT Total
    End Sub


Pertemuan ini tidak tugas dulu ya..

Senin, 14 Maret 2011

Repetition

Repetition(Pengulangan)
Repetition digunakan jika ada beberapa statement berurutan yang harus diulang.
Ada dua cara untuk melakukan pengulangan :

  1. Menggunakan DO WHILE
  2. Menggunakan Repeat – Until
DO WHILE
Format DO WHILE adalah sbb :
    DO WHILE kondisi k bernilai true
        statement_1
        statement_2
        ……………
        statement_n
    END DO

        Ada 3 proses yang dilakukan dalam DO WHILE, yaitu:
Kondisi k selalu dicek
Bila k bernilai true maka statement_1 s.d statement_n dikerjakan kemudian dicek lagi kondisi k
Bila kondisi k bernilai false maka statement_1 s.d statement_n tidak dikerjakan. Alur logika menuju ke END DO dan terus ke statement berikutnya

Contoh
Mengkonversikan derajat Celcius ke Reamur dan Fahrenheit. Yang dibaca adalah derajat Celcius. Data dibaca sebanyak 15 kali.

    X = 0
        DOWHILE X<15
            X=X+1
            Baca Celcius
            Reamur = 4/5 * Celcius
            Fahrenheit =9/5*Celcius + 32
            Cetak celcius, reamur, fahrenheit
    ENDDO

Contoh – Jawaban
Desk Checking
Data Masukan


Repeat – Until

Format Repeat – Until adalah sbb:
    REPEAT
        statement_1
        statement_2
        …….
        statement_n
    UNTIL kondisi k true
Repeat – Until
    Ada tiga proses dilakukan dalam
REPEAT – UNTIL:
Melakukan statement_1 s.d statement_n
Cek kondisi k
Bila kondisi k bernilai false maka diulangi mengerjakan statement_1 s.d statement_n lagi. Bila kondisi k bernilai true maka tidak terjadi pengulangan lagi dan akan dilanjutkan dengan statement berikutnya

Contoh
X=0
REPEAT
    X=X+1
    baca celcius
    reamur = 4/5*celcius
    fahrenheit=9/5*celcius + 32
    cetak celcius, reamur, fahrenheit
UNTIL x=15


Latihan
Buat contoh penggunaan DO WHILE dan REPEAT UNTIL pada aplikasi yang dibangun untuk SISTEM INFORMASI PENYEWAAN DVD. 

Senin, 07 Maret 2011

Selection
Struktur Kontrol Selection / Pemilihan
     Ada beberapa variasi dari struktur kontrol selection yaitu:
  • Simple Selection (simple IF Statement)
  • Simple Selection tanpa cabang
  • Combined Selection
  • Nested Selection
  • Linear Nested IF Statement
  • Non-Linear IF Statement

1. Simple Selection
Simple selection terjadi jika harus memilih diantara dua alternatif yang ada, tergantung dari hasil kondisi apakah True atau false.
Keyword yang digunakan adalah : IF, THEN, ELSE, dan END IF

Contoh
IF saldo < $300 THEN
    bunga = 0.05
ELSE
    bunga = 0.1
ENDIF

2. Simple Selection Tanpa Cabang
Simple selection ini terjadi jika sebuah statement hanya bisa dikerjakan bila kondisinya adalah TRUE
Contoh:
IF Saldo > $300 THEN
    bunga = saldo * 0.1
ENDIF
           
3. Combined Selection
        Combined Selection terjadi jika kondisi yang harus diperiksa lebih dari satu. Kondisi tersebut dapat dihubungkan dengan menggunakan AND atau OR.

Contoh:
IF saldo > 300 AND kode = 1 THEN
    bunga = saldo * 0.1
ELSE
    bunga = saldo * 0.05
ENDIF
Statement bunga = saldo *0.1, akan bisa dikerjakan jika kedua kondisi yaitu saldo > 300 dan Kode = 1 bernilai TRUE. Hal ini dikarenakan penghubung yang digunakan adalah AND 

3. Nested Selection 
Tabel kebenaran
Nested selection terjadi, jika di dalam IF terdapat statement IF yang lain.
Ada dua jenis nested selection
Linear Nested IF statement
Non-Linear Nested IF statement
Linear Nested IF Statement
Linear Nested terjadi jika satu kondisi di cek untuk beberapa nilai.
Contoh:
        IF record_code=‘A’ THEN
             increment counter_A
        ELSE
             IF record_code=‘B’ THEN
                     increment counter_B
            ELSE
                     IF record_code=‘C’ THEN
                             increment counter _C
                     ELSE
                             increment error_counter
                    ENDIF
                ENDIF
       ENDIF

Non-Linear Nested IF
Non-Linear Nested IF Statement terjadi jika beberapa kondisi harus diperiksa sebelum suatu statement dikerjakan.
Contoh
IF student_attendance=part_time THEN
        IF student_gender=female THEN
            IF student_age >21 THEN
            add 1 to mature_fem_pt_students
            ELSE
            add 1 to young_fem_pt_students
            ENDIF
         ELSE
            add 1 to male_pt_students
         ENDIF
ELSE
       add 1 to full_time_students
ENDIF


Tugas : buat contoh lain selain contoh di atas untuk :
  • Simple Selection (simple IF Statement)
  • Simple Selection tanpa cabang
  • Combined Selection
  • Nested Selection
  • Linear Nested IF Statement
  • Non-Linear IF Statement

Senin, 28 Februari 2011

Algoritma

 Algoritma

Algoritma merupakan langkah-langkah logis secara urut untuk menyelesaikan masalah
Algoritma digunakan untuk membantu seseorang dalam menyelesaikan suatu masalah berdasarkan pola pikir masing-masing
Ciri-ciri algoritma  :
Ada input
Ada output
Ada proses
Memiliki instruksi-instruksi yang jelas dan tidak ambigu
Harus mempunyai stopping role

Tidak menggunakan simbol atau sintaks dari suatu bahasa pemrograman
Tidak tergantung pada bahasa pemrograman
Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun

1.Algoritma untuk memasak mie :
Rebus air hingga mendidih
Masukkan mie instan ke dalam rebusan air
Tunggu beberapa saat hingga mie telah matang
Angkat mienya
Tiriskan
Campurkan bumbu-bumbunya
Aduk hingga bumbu dan mie merata
2. Algoritma untuk menghitung luas persegi panjang
Masukkan panjang
Masukkan lebar
Hitung hasil perkalian panjang dengan lebar
Tampilkan luas

Pseudo-code merupakan kode atau tanda yang menyerupai (pseudo) cara menyelesaikan suatu masalah dan  umumnya digunakan untuk menuliskan algoritma. Pseudo-code hampir menyerupai dengan bahasa pemrograman. Pseudo-code biasanya menggunakan bahasa yang mudah dipahami secara universal dan lebih ringkas dibandingkan dengan algoritma.
 
Pertanyaan:
Buat Algoritma untuk 
1. Aktifitas dari anda berangkat dari rumah hingga sampai di rumah untuk kegaitan sehari-hari anda.
2.Aktiftas dari mulai kuliah hingga anda mendapatkan nilai 

Jumat, 25 Februari 2011

Respons dari beberapa jawaban kuliah perdana

Saya coba jawab dengan bahasa yang sederhana semoga bisa memberikan pencerahan.
Saya ambil contoh kita sedang membuat aplikasi penjualan yang hanya digunakan oleh satu petugas adminstrasi (single user), salah satunya adalah form untuk input transaksi penjualan. Pada saat kita membuat coding untuk transaksi penjualan ada beberapa fungsi yang dibuat dan digunakan untuk menhitung berapa jumlah barangnya, kemudian barang apa saja yang dibeli dan total penjualannya.
Nah fungsi penjumlahan tersebut termasuk Internal subroutine.

Tapi jika aplikasi penjualan yang dibangun digunakan oleh banyak user (misalnya aplikasi di hypermart dimana banyak kasir yang melayani banyak pelanggan) maka pembuatan fungsi untuk menghitung berapa jumlah barang yang dibeli, total penjulannya berapa dll dibuat secara public disebut sebagai external subroutine karena digunakan oleh banyak kasir atau user.

Selasa, 22 Februari 2011

Pendekatan Top Down

Pemrograman terstruktur mempergunakan Pendekatan Top-Down dalam perencanaan program
Merupakan pendekatan yang menggambarkan pemecahan modul kompleks/besar menjadi modul-modul yang lebih sederhana/kecil Berbentuk Struktur Hirarki

    Di dalam pemrograman terstruktur, terdapat 3 bentuk struktur perintah yang dipergunakan :
Sequence Structure
Loop Structure
Selection Structure

Struktur perintah yang instruksinya dieksekusi berdasarkan urutannya. Dimulai dari bagian atas dan diakhiri di bagian bawahnya
Digambarkan dengan bujur sangkar, sebagai simbol untuk :
Input dan Output
Operasi aritmatika
Operasi pemindahan data dalam memori komputer
Menggambarkan perulangan eksekusi dari satu atau lebih instruksi
Menggambarkan struktur yang mengeksekusi suatu instruksi hanya apabila kondisinya terpenuhi.

Algoritma merupakan sekumpulan langkah-langkah untuk menyelesaikan suatu tugas
Penamaan “Algoritma” diambil dari seorang ahli matematika bernama Al-Khwarizmi
Sebuah algoritma harus:
Jelas, tepat dan tidak membingungkan
Memberikan penyelesaian yang tepat
Mempunyai akhir


Tujuh langkah dasar dalam pengembangan program :

  • Definisi Masalah
  • Outline Solusi
  • Pengembangan outline ke dalam algoritma
  • Melakukan test terhadap algoritma
  • Memindahkan algoritma ke dalam bahasa pemrograman
  • Menjalankan program pada komputer
  • Dokumentasi dan pemeliharaan program
Pada tahap ini memerlukan pemahaman terhadap permasalahan dengan membaca berulang kali sampai dengan mengerti apa yang dibutuhkan.

Permasalahan dibagi kedalam tiga komponen:
Input / Masukan
Output / Keluaran
Proses

        Setelah permasalahan didefinisikan, permasalahan dapat di bagi kedalam tugas tugas atau langkah langkah yang lebih kecil dan menghasilkan outline solusi

    Outline solusi pada langkah kedua dikembangakan menjadi algoritma yaitu sebuah set langkah yang menggambarkan tugas yang akan dikerjakan dan urutan pengerjaannya.

Tujuan utama dari melakukan test terhadap algoritma adalah adalah untuk menemukan kesalahan utama logika sejak awal, sehingga akan lebih mudah diperbaiki.
Data test diperlukan untuk melakukan test terhadap algoritma ini.

        Setelah ke-empat langkah sebelumnya dilakukan, maka pencodingan dapat dimulai dengan menggunakan bahasa pemrograman yang dipilih.

Setelah pengcodingan, maka program dapat dijalankan pada komputer. Jika Program sudah didesain dengan baik, maka akan mengurangi tingkat kesalahan dalam melakukan testing program.
Langkah ini perlu dilakukan beberapa kali, sehingga program yang dijalankan dapat berfungsi dengan benar

Dokumentasi melibatkan eksternal dokumentasi (hierarchy chart, algoritma solusi, dan hasil data test)  dan internal dokumentasi (coding program)
Pemeliharaan program meliputi perubahan yang dialami oleh program (perbaikan ataupun penambahan modul, dll)
Pertanyaan :

1. Jelaskan perbedaan antara pendekatan modular dengan pendekatan Top Down ?

2.Berikan contoh masalah yang berhubungan dengan input, proses dan output?

Selasa, 15 Februari 2011

Materi kuliah perdana

PENGANTAR PEMROGRAMAN TERSTRUKTUR
Pendahuluan
Pada era tahun 1950 –1960, kecepatan komputer sangat rendah dan disertai juga dengan
keterbatasan dari media penyimpan, sehingga tentunya berakibat juga dengan keterbatasan dalam
penulisan program-program komputer. Namun di era saat ini, dengan kecepatan komputer yang
cukup handal demikian juga ketersediaan dari media penyimpan yang cukup handal dan besar,
serta didukung juga dengan perkembangan bahasa pemrograman yang ada sehingga kita dapat
dengan mudah membuat suatu program. Permasalahan yang timbul dalam pembuatan program
tersebut adalah bagaimana kita dapat memahaminya, sehingga apabila terdapat perubahan yang
akan dilakukan kita dapat memperbaikinya secara mudah. Hal ini tentu saja harus kita perhatikan
terutama apabila kita melihat dari biaya yang harus dikeluarkan dalam pembuatan program
tersebut.
Istilah Pemrograman Terstruktur (Structured Programming) mengacu dari suatu
kumpulan tehnik yang dikemukan oleh Edsger Dijkstra. Dengan tehnik ini akan meningkatkan
produktifitas programmer
, dengan mengurangi waktu yang dibutuhkan dalam penulisan (write),pengujian (test), penelusuran kesalahan (debug) dan pemeliharan(maintain) suatu program.

Pada pembahasan berikut ini kita akan melihat bagaimana tehnik ini yang pendekatan yang dilakukan
secara modular, dapat membantu kita dalam membangun suatu program.


Pemrograman Secara Modular
Dalam pemrograman secara modular, suatu program akan dipilah kedalam sejumlah
modul, dimana setiap modul menjalankan fungsinya sendiri. Tentunya fungsi yang dijalankan
oleh setiap modul sangat terbatas sesuai dengan ruang lingkup yang akan dikerjakan. Dengan
adanya sejumlah modul program ini tentu saja kesalahan yang timbul dapat dikurangi.
Setiap program tentu akan memiliki program utamanya, yang kemudian akan memanggil
sejumlah modul-modul yang ada.


Implementasi dari pendekatan secara modular
Pemrograman secara modular ini dapat diimplementasikan dengan penggunaan
subroutine, suatu kelompok instruksi yang menjalankan suatu pengolahan yang sifatnya terbatas
seperti pencetakan, pembacaan untuk proses input atau untuk proses penghitungan.
Subroutine dapat dikelompokkan menjadi internal subroutine dan external subroutine, berikut ini
penjelasannya:


Internal Subroutines
Adalah bagian dari suatu program yang digunakan. Dideklarasikan cukup sekali saja, untuk
sejumlah proses yang sama akan dilakukan oleh program tersebut. Program akan memanggil
subroutines tersebut jika diperlukan dan apabila telah selesai, kontrol selanjutnya dikembalikan
ke instruksi berikutnya.
Instruksi yang mengendalikan kontrol transfer ke suatu subroutine umumnya dikenal sebagai call
dan return.


External Subroutines
Diletakkan secara terpisah dari program yang menggunakan subroutine tersebut. Subroutine ini
dideklarasikan supaya bisa dipakai oleh program yang lain. Untuk menggunakannya tentu
seorang programmer harus mengetahui dimana ? , apa namanya ?, bagaimana pengiriman datanya
?, bagaimana jawaban yang akan diperoleh ?. Subroutine ini biasanya digunakan untuk
pemrosesan yang komplek, yang dibutuhkan oleh banyak user.

PERTANYAAN
1. Berikan sebuah contoh dari Modular Internal Suboutine
2. Berikan sebuah contoh dari Modular Eksternal Subroutine