Hidup adalah sebuah perjalanan

Karunia indah dari Tuhan adalah waktu, kesempatan kita hidup kita terbatas dan kita menuju ke kehidupan yang abadi, tengoklah apa yang sudah kita persiapkan untuk bekal hidup setelah hidup kita disini

Kamis, 28 Januari 2016

Materi 16 Pengantar Perancangan Sistem Informasi

sumber gambar : worldwide.erau.edu
Pengantar
Teknologi Informasi dan Komunikasi untuk Pembangunan Manusia. Angin segar reformasi telah pula menerpa sektor telekomunikasi, restrukturisasi telekomunikasi akan segera diterapkan pada industri telekomunikasi dalam negeri. Agar restrukturisasi ini dapat memenuhi tujuan dad pembangunan sektor telekomunikasi dan informasi Indonesia seperti terkandung dalam visi bangsa pembangunan masyarakat informasi maupun yang tertuang dalam Telematika Indonesia, perlu dilakukan penelaahan dan analisa yang menyeluruh dan multidimensi dan perkembangan ekonomi global maupun perkembangan teknologi IT itu sendiri. Arah ke depan dalam pembangunan industri telekomunikasi dan informasi dalam negeri perlu didefinisikan dengan jelas dan dimasyarakatkan agar usaha realisasinya dapat sinergi membentuk suatu vektor yang besar dan searah, sehingga dapat menciptakan daya saing global industri telekomunikasi dan informasi dalam negeri.
Trend global perkembangan IT sangat dipengaruhi oleh beberapa faktor penting yaitu:
  1. Kemajuan teknologi telekomunikasi dan informatika
  2. Globalisasi ekonomi yang menempatkan telekomunikasi sebagai jasa yang diperdagangkan dan sebagai sarana vital bagi sebagian besar jasa lainnya
  3. Datangnya masyarakat informasi yang menempatkan informasi menjadi faktor produksi yang amat strategis

Kemajuan teknologi telekomunikasi dan informatika. Pergeseran jasa telekomunikasi dewasa mi diawali dengan adanya konvergensi antara teknologi telekomunikasi, informatika dan elektronika yang memuncak di awal tahun 90-an. Masyarakat pengguna jasa telekomunikasi sudah tidak lagi mengharapkan jasa telekomunikasi hanya sebagai sarana penghubung suatu lokasi dengan Iokasi Iainnya yang berjarak cukup jauh untuk berkomunikasi atau berbicara. Perkembangan IT services selanjutnya sangat ditentukan oleh perkembangan komponen-komponen IT itu sendiri, yaitu teknologi telekomunikasi (yang lebih dikonotasikan sebagai teknologi jaringan atau kanal informasi), teknologi komputer (bertitik berat pada perkembangan perangkat Iunak) dan teknologi elektronika. Beragam bentuk Iayanan dan informasi yang dibutuhkan masyarakat telah mendorong berkembangnya teknologi jaringan telekomunikasi berdasarkan kriteria yang beragam pula, seperti masalah keamanan, keandalan, kecepatan, cakupan, personalitas, portabilitas, dan harga. Maka muncul Iah teknologi-teknologi barn seperti IN, ISDN, frame relay, ATM, SDH, HFC, GSM, CDMA, ADSL hingga pada teknologi satelit.

Tantangan bagi industri telekomunikasi selanjutnya adalah bagaimana menyediakan kanal informasi yang sesuai kebutuhan, murah, efisien dan andal. Peran industri komputer, terutama industri perangkat Iunak, sangat menentukan dalam memunculkan Iayanan-Iayanan baru. Sejumlah vendor besar dalam industri perangkat Iunak dewasa ini tengah bersaing dalarn menciptakan dan merebut pasar Iayanan-Iayanan baru berbasis IT. Disamping itu, perusahaan-perusahaan jasa di berbagai sektor tengah bersaing juga untuk memberikan pelayanan yang terbaik kepada para kastememya dengan menerapkan layanan berbasis IT services. Sedangkan industri elektronika sangat berperan dalam menghasilkan perangkatperangkat jaringan dan terminal jasa telekomunikasi yang berkemampuan tinggi. Karakteristik perangkat terminal jasa telekomunikasi selanjutnya sangat menentukan kepada tingkat aksesibilitas Iayanan dan tingkat pemanfaatan Iayanan oleh para penggunanya.

Perkembangan industri telekomunikasi dan informasi di atas, baik dad sisi teknologi maupun Iayanan, menuntut adanya pembaharuan regulasi dan peran para pelaku (network/service/content provider) dalam bisnis jasa telekomunikasi dan informasi. Datangnya masyarakat informasi
Sejak kehadiran era informasi, kesadaran masyarakat akan pentingnya informasi terus meningkat, dan mendorong fungsi jasa telekomunikasi berubah menjadi sarana untuk mendapatkan informasi. Bentuk-bentuk informasi yang ingin diperoleh semakin beragam, mulai dari informasi bisnis, pendidikan, komersial, hingga hiburan. Sejumlah kegiatan sehari-hari yang biasa dilakukan secara manual, tatap muka, mulai beralih untuk dilakukan melalui jasa telekomunikasi, seperti transaksi bisnis, proses pengajaran jarak jauh, belanja jarak jauh, dan beberapa proses perkantoran yang sudah beralih dengan memanfaatkan jasa telekomunikasi. Maka belakangan ini sedang kita dengar istilah e-commerce, tele-shopping, distance learning, e-banking, e-business, EDI, video conference, video on demand, multimedia dan e-govemment. Di Negara-negara maju, peralihan proses ini telah membedakan nilai tambah yang begitu besar bagi perusahaan, dalam bentuk peningkatan efisiensi dan keuntungan yang semakin besar. Lahir dan berkembangnya Internet telah memberikan nuansa lain pada jasa telekomunikasi konvensional yang sudah Iama dikenal masyarakat sebelumnya, yaitu POTS.

Industri-industri teknologi inforrnasi yang berkecimpung di Internet terns berusaha mengembangkan Iayanan-Iayanan barn melalui Internet. Bahkan sejumlah pernsahaan jasa telah menjadikan Internet sebagai salah satu tulang punggung bisnisnya. Internet memang membedkan akselerasi yang Iuar biasa terhadap pergeseran jasa telekomunikasi menjadi jasa teknologi informasi atau IT services. Perkembangan Industri IT di Indonesia
Perkembangan internet di dunia telah membawa dampak yang signifikan bagi Industri IT di Indonesia seperti menjamurnya ISP, munculnya software house baik besar maupun kecil dan bermunculannya web commerce yang tidak pemah terbayangkan sebelumnya. Angka pertumbuhan internet di Indonesia pada tahun 1995 sebesar 700 % per tahun, sementara dunia hanya sebesar 100 %. Berdasarkan Iaporan WoiId Telecommunication Development Report, jumlah pengguna pengguna internet pada tahun 1996 sebesar 80.000 pengguna dengan jumlah populasi PC sebanyak 940.000 dan jumlah host sebanyak 9591. Jumlah PC sampai awal tahun 1999 mi sudah mencapai 3 juta, sehingga diperkirakan jumlah pengguna internet pada tahun.  Dengan masuknya Internet dalam era komersial pada awal tahun 90-an, maka bermunculanlah situs commerce di Indonesia.

E-Commerce merupakan suatu bentuk elektronisasi atau digitalisasi berbagai bentuk proses jual beli dan berbagai bentuk transaksi bisnis Iainnya. Definisi proses jual beli dan transaksi bisnis lain di sini di mata produsen meliputi mengiklankan produk, menawarkan servis, membedkan cara transaksi online dengan Online Payment Systems yang baik, akses informasi secara online (seperti online seminar dan teletraining) serta beberapa aktifitas lain.

Untuk dapat Iahir sebagai suatu jasa baru, maka suatu inovasi perlu mendapatkan dukungan investasi. Sebagian investasi dibutuhkan untuk kegiatan R&D tersebut. Namun di tengah kondisi krisis yang masih melanda Indonesia, investasi yang besar jelas merupakan sesuatu yang tidak mungkin. Dengan demikian kuncinya terdapat pada pengembangan perangkat Iunak yang membutuhkan investasi jauh Iebih kecil.Lambat laun, namun pasti, pertumbuhan jasa telekomunikasi baru tersebut akan membedakan kontribusi yang berharga bagi perekonomian bangsa. Di saat kondisi sudah membaik, maka industri elektronika dapat kembali tumbuh untuk memberikan akselerasi yang Iebih tinggi pada perkembangan jasa telekomunikasi.

Referensi
Abdul Kadir, 2003, Pengenalan Sistem Informasi, Yogyakarta : Andi Offset.
Brown, Carol V., dan Bostrom, Robert P. (Spring:1994). “Organization Designs for the Management of End-User Computing: Reexamining the Contingencies.” Journal of Management Information System.
Cale, Edward G., Jr., dan Kanter, Jerry. (Number 1: 1998). “Aligning Information Systems and Business Strategy : A Case Study”.  Journal of Information Technology Management.
Kadarsyah dan Ali M, Sistem Pendukung Keputusan,  PT Remaja Rosdakarya, Bandung, 2002
Kusrini,  Konsep dan Aplikasi Sistem Pendukung Keputusan, Penerbit Andi Offset, Yogyakarta, 2007
Mulyono, S. Teori Pengambilan Keputusan. FEUI, Jakarta, 1996
Mangkusubroto, K dan L. Tresnadi, Analisis Keputusan; Pendekatan Sistem dalam Manajemen Usaha dan Proyek. Ganeca Exact, Bandung, 1987
Mirani, Rajesh, dan King, William R. 1994. “The Development of a Measure for End – User Computing Support,” Decision Sciences.
Moekijat, 1988, Sistem Informasi Manajemen, Bandung : CV Remaja Karya.
Raymond McLeod, Jr. dan George Schell. 2004.  Sistem Informasi Manajemen(terjemahan). Jakarta: PT Indeks
Siagian, S.P, 1984,  Sistem Informasi untuk Pengambilan Keputusan, Jakarta : Gunung Agung.
Saliman, 2013, Sistem Informasi Berbasis Komputer (CBIS), Fak Ilmu Sosial & Ekonomi, UNY, Yogayakarta
Syamsi, I. Pengambilan Keputusan dan Sistem Informasi. Bumi Aksara, Jakarta. 1995
Wahyudi Kumorotomo dan Subando Agus Martono, 2001,  Sistem Informasi Manajemen, Yogyakarta : Gadjah Mada University Press.
Yoder, D. 1964.  Handbook of Personnel Management and Labour Relation, New York: Long Man.
Yogiyantoro HM, 1990,  Analisis dan Desain Sistem Informasi : Pendekatan Terstruktur, Yogyakarta : Andi Offset.
_____, 2000,  Sistem Informasi Berbasis Komputer : Konsep Dasar dan Komponen, Edisi Ketiga, Yogyakarta : BPFE
Yoon, Younghoc. (Spring : 1999). “Discovering Knowledge in Corporate Databases.” Information Systems Management.

Download Materi Lengkap KLIK DISINI



Rabu, 27 Januari 2016

Materi 15 Pemrograman berorientasi objek

sumber gambar : pythoncentral.io
Pengantar
Pemrograman berorientasi pada objek atau Object-Oriented Programming (OOP) erupakan suatu paradigma pemrograman yang termasuk ke dalam ketegori pemrograman
imperatif. Pemrograman imperatif sendiri adalah suatu paradigma pemrograman yang mendeskripsikan program sebagai suatu urutan atau alur langkah-langkah yang harus dilakukan untuk memecahkan suatu masalah. Berlawanan dari pemrograman imperatif adalah pemrograman deklaratif, yang mendeskripsikan program sebagai sekumpulan aturan yang digunakan untuk mendeskripsikan masalah.

Konsep OOP berbeda dari konsep pemrograman prosedural, meskipun sama-sama bersifat imperatif. Pada pemrograman prosedural, programmer berpikir bagaimana mengolah data yang ada dengan menggunakan instruksi-instruksi yang ada. Di sini programmer melihat data sebagai objek PASIF yang harus dikenai tindakan agar dapat menghasilkan output yang diinginkan. Berbeda dengan itu, pada konsep OOP programmer berpikir bagaimana membuat sebuah objek yang berisi data dan dapat melakukan pekerjaan yang sesuai. Di sini programmer melihat data sebagai objek AKTIF yang dapat bertindak dan melakukan hal-hal tertentu untuk menghasilkan output. Sebagai contoh dapat menggunakan data atau objek pesawat. Pada pemrograman prosedural atau Non-OOP, programmer berpikir bagaimana cara menerbangkan atau mendaratkan pesawat. Sementara itu pada pemrograman berorientasi objek atau OOP, programmer berpikir bagaimana pesawat itu terbang atau mendarat. Contoh lainnya adalah menggunakan sebuah struktur data abstrak semacam stack atau tumpukan. Pada pemrograman Non-OOP, programmer berpikir bagaimana cara menambahkan item baru ke dalam stack. Sementara itu pada konsep OOP, programmer berpikir  apa yang akan dilakukan oleh stack saat suatu item baru ditambahkan padanya.

Tujuan utama dari pengembangan pendekatan berorientasi objek (OOP) adalah untuk menghilangkan beberapa kelemahan yang terdapat pada pendekatan procedural. Pada OOP data diperlakukan sebagai elemen yang penting dan tidak boleh mengalir secara bebas dalam program. Data yang terikat kepada function dan harus dilindungi terhadap kemungkinan perubahan dari luar function.

Saat program semakin tumbuh besar lagi, konsep pemrograman terstruktur ini kemudian dirasa sudah kurang mencukupi lagi untuk menanganinya. Kerepotan yang dirasakan terutama timbul karena adanya pemisahan antara kesatuan - kesatuan data dengan fungsi - fungsi yang digunakan untuk mengolahnya. Semakin banyak kesatuan data yang dibuat, maka semakin akan terasa bahwa sebenarnya ada yang mirip satu sama lain, sehingga fungsi - fungsi yang mengolahnya pun menjadi mirip - mirip. Hal ini sering menyebabkan munculnya kode yang ditulis berulang - ulang di bagian - bagian yang saling terpisah. Sebagai contoh adalah data karyawan di sebuah perguruan tinggi, yang dibedakan menjadi karyawan kependidikan (dosen) dan karyawan non - kependidikan (non - dosen). Kedua data ini memiliki banyak kesamaan, namun juga ada perbedaannya yang tidak sedikit. Keduanya sama - sama digaji namun perhitungannya berbeda. Tapi walaupun dikatakan berbeda cara menghitungnya , ada kemiripannya juga sehingga menyebabkan adanya duplikasi kode. Selain itu masih banyak contoh yang lainnya. Untuk memecahkan masalah semacam itu, dikembangkanlah konsep pemrograman berorientasi pada objek atau OOP. Dalam OOP, bukan hanya nilai - nilai yang terkait saja yang disatukan ke dalam satu kesatuan, melainkan juga aksi - aksi atau tindakan untuk mengolah nilai - nilai itu juga. Dengan kata lain, dalam OOP data dan fungsi (tindakan) untuk mengolahnya dibungkus dalam satu kesatuan. Bungkus inilah yang kemudian dinamakan sebagai OBJEK.

Teknik pembungkusan data dan fungsi ini dikenal dengan istilah encapsulation atau pengkapsulan. Selain itu ada konsep inheritance atau pewarisan dimana dua objek yang mirip dapat diturunkan dari sebuah objek yang lebih umum dan mewarisi semua data dan fungsi yang ada tanpa harus menulis ulang kodenya. Selain itu terdapat juga konsep polymorphism yang membuat dua objek berbeda dapat diperlakukan dengan cara yang sama karena diturunkan dari objek umum yang sama, walaupun nantinya dapat menghasilkan output yang berbeda juga. Sebagai contoh, masalah karyawan dosen dan karyawan non - dosen di atas. Dengan OOP, masalah tersebut dapat dipecahkan dengan membuat sebuah objek (sebenarnya istilah yang lebih tepat adalah class, namun untuk sementara memakai objek dulu supaya lebih jelas) karyawan yang berlaku bagi karyawan secara umum, baik dosen maupun non - dosen. Objek ini berisi data dan fungsi yang umum dimiliki oleh seorang karyawan. Setelah itu tinggal menurunkan objek tersebut ke dalam dua objek terpisah yaitu objek dosen dan objek non - dosen. Kedua objek ini mewarisi semua yang dimiliki objek karyawan namun dapat dikustomisasi atau disesuaikan dengan hal - hal yang lebih spesifik. Kedua objek ini
kadang bisa dianggap sama, kadang juga bisa dianggap berbeda.

Referensi
Asnawi C, Pemrograman Berorientasi Objek, 2012, STMIK Jenderal A.Yani, Yogyakarta.
Hendra, Pemrograman Berorientasi Objek pada VB.NET, 2014, Indoprog

Kerjakan Quiz KLIK DISINI





Materi 14 Searching and Sorting

sumber gambar : www.symplur.com

Pengantar
Pencarian  merupakan  sebuah  algoritma  dasar  yang  sering  diperlukan  dalam pembuatan program. Berbagai algoritma pencarian telah diciptakan dan dapat digunakan.  Pemahaman  tentang  beberapa  algoritma  pencarian  dasar  perlu diketahui, termasuk cara penggunaannya dalam program. 
Pencarian  adalah  proses  menemukan  nila i  (data)  tertentu  dari  dalam sekumpulan  nilai  yang  bertipe  sama  (tipe  dasar  maupun  tipe  bentukan). Dengan kata lain, algoritma pencarian adalah algoritma yang mengambil input berupa  persoalan  dan  mengembalikan  penyelesaian  berupa  penemuan  nilai yang dicari dalam persoalan inputan. Proses  pencarian  seringkali  diperlukan  pada  saat  program  perlu mengubah  atau  menghapus  nilai  tertentu  (sebelum  bisa  mengubah  atau menghapus,  perlu  mencari  dulu  apakah  nilai  tersebut  ada  dalam  kumpulan nilai  tersebut).  Kasus  lain  y ang  memerlukan  algoritma  pencarian  adalah penyisipan  data  ke  dalam  kumpulan  data  (perlu  dimulai  dengan  pencarian apakah data tersebut telah ada sehingga terhindar dari duplikasi data).

Pencarian sekuensial (sequential search) adalah proses membandingkan setiap  elemen  larik  (array)  satu  persatu  dengan  nilai  yang  dicari  secara beruntun,  mulai  dari  elemen  pertama  sampai  elemen  yang  dicari  sudah ditemukan, atau sampai seluruh elemen sudah diperiksa. Algoritma pencarian sekuensial ini cocok untuk pencarian nilai tertentu pada sekumpulan data terurut maupun tidak. Keunggulan algoritma ini adalah dalam  mencari  sebuah  nilai  dari  sekumpulan  kecil  data.  Algoritma  ini termasuk  algoritma  yang  sederhana  dan  cepat  karena  tidak  memerlukan proses persiapan data (misalnya: pengurutan).
Pencarian biner adalah  proses mencari data dengan membagi data atas dua bagian secara terus menerus sampai elemen yang dicari sudah ditemukan, atau indeks kiri lebih besar dari indeks kanan. Algoritma  ini  lebih  efisien  daripada  algoritma  pencarian  sekuensial, tetapi pencarian ini mempunyai syarat yaitu bahwa kumpulan d ata yang harus dilakukan pencarian harus sudah terurut terlebih dahulu, baik terurut secara menaik (ascendant) atau menurun (descendant). Karena data sudah terurut, algoritma  dapat  menentukan  apakah  nilai  data  yang  dicari  berada  sebelum atau sesudah elemen  larik yang sedang dibandingkan pada suatu saat. Dengan cara ini, algoritma dapat lebih menghemat waktu pencarian.
Pencarian dalam data terurut bermanfaat misalnya pada penyimpanan data  dengan  beberapa  komponen,  program  dapat  mencari  sebuah  indeks terurut. Setelah menemukan indeks yang dicari, program dapat membaca data lain yang bersesuaian dengan indeks yang ditemukan tersebut.

Pengurutan data (sorting) didefinisikan sebagai suatu proses untuk menyusun kembali humpunan obyek menggunakan aturan tertentu. Mnurut Microsoft Book-shelf, definisi algoritma pengurutan adalah algoritma untuk meletakkan kumpulan elemen data ke dalam urutan tertentu berdasarkan satu atau beberapa kunci dalam tiap-tiap elemen. Ada dua macam urutan yang biasa digunakan dalam proses pengurutan yaitu
1. urut naik (ascending) yaitu dari data yang mempunyai nilai paling kecil sampai paling besar
2. urut turun (descending) yaitu data yang mempunyai nilai paling besar sampai paling kecil.
Contoh : data bilangan 5, 2, 6 dan 4 dapat diurutkan naik menjadi 2, 4, 5, 6 atau diurutkan turun menjadi 6, 5, 4, 2. Pada data yang bertipe char, nilai data dikatakan lebih kecil atau lebih besar dari yang lain didasarkan pada urutan relatif (collating sequence) seperti dinyatakan dalam tabel ASCII (Lampiran)

Keuntungan dari data yang sudah dalam keadaan terurutkan antara lain :
1. data mudah dicari (misalnya dalam buku telepon atau kamus bahasa), mudah untuk dibetulkan, dihapus, disisipi atau digabungkan. Dalam keadaan terurutkan, kita mudah melakukan pengeekan apakah ada data yang hilang
2. melakukan komppilasi program komputer jika tabel-tabel simbol harus dibentuk
3. mempercepat proses pencarian data yang harus dilakukan berulang kali.
Data yang diurutkan sangat bervariasi, dalam hal jumlah data maupun jenis data yang akan diurutkan. Tidak ada algoritma terbaik untuk setiap situasi yang kita hadapi, bahkan cukup sulit untuk menentukan algoritma mana yang paling baik untuk situasi tertentu arena ada beberapa faktor yang mempengaruhi efektifitas algoritma pengurutan.

Referensi
Politeknik Telkom, Algoritma dan Pemrograman, Bandung
Anonim, “Algoritma & Pemrograman II”, Penerbit Gunadarma, Jakarta, 1990
Bryon, Goffried, “Programming with PASCAL”, Schaum Series, New York, 1986
Prather, Ronald E., “Problem Solving Principle : Programming with Pascal”, Prentice Hall, New Jersey, 1982
Dumairy, Matematika Terapan untuk Bisnis & Ekonomi Press (BPFE Yogyakarta)
Yogianto H.M, Turbo Pascal 5.0 Penerbit Andi Offset, Yogyakarta.
Ediman Lukito, Belajar Sendiri Pemrograman dengan Turbo Pascal 7.0
Harahap, Erwin (2005). Panduan Perkuliahan Algoritma & Pemrograman, Jurusan Statistika, Universitas Islam Bandung, Bandung.
Munir, Rinaldi. (2006). Algoritma dan Pemrograman, Edisi ke-3, Penerbit Informatika, Bandung.

Baca Materi Lengkap KLIK DISINI
Tugas

Susunlah program-program sebelumnya menjadi sebuah program aplikasi utuh, dengan user interface yang mudah dipahami.
Screenshoot Tugas 1 - 14 dan kumpulkan pada pertemuan ke 15. File (doc, sintaks) buatlah link di google drive

Evaluasi

Materi 13 Array

sumber gambar : evilmathwizard.com

Pengantar
Tipe data array adalah tipe data terstruktur yang merujuk kepada sebuah atau sekumpulan elemen yang mempunyai tipe data yang sama melalui indeks. Array biasanya disebut juga sebagai  tabel, vektor atau larik.Elemen dari  array  dapat diakses langsung  jika dan hanya jika indeks terdefinisi (telah ditentukan nilainya sesuai dengan domain yang didefinisikan untuk indeks tersebut). Struktur data array disimpan dengan urutan yang sesuai dengan definisi indeks  secara kontinyu (berurutan) dalam memori  komputer. Karena itu indeks haruslah merupakan suatu tipe data yang memiliki keterurutan (ada suksesor dan predesesor), misal tipe integer dan karakter.

Array yang akan dipergunakan harus di deklarasikan terlebih dahulu. Deklarasi dari Array diawali dengan kata cadangan Array diikuti oleh tipe index yang diletakkan diantara tanda “ [ ] ” diikuti lagi oleh kata cadangan of dan tipe arraynya. Array dapat bertipe sederhana byte, word, integer, real, boolean, char, string dan tipe scalar atau subrange.

Array dua dimensi merupakan array yang terdiri dari m buah baris (row) dan n buah kolom (column).  Bentuk  array  semacam ini menggunakan 2 (dua) buah kelompok indeks yang   masing-masing direpresentasikan sebagai indeks baris dan kolom. Jika ingin memasukkan atau membaca sebuah nilai pada matriks maka, harus diketahui terlebih dahulu indeks baris dan kolomnya.

Dalam menggambarkan  array  multidimensi, hanya terbatas hingga dimensi ke -3, yakni dengan menggunakan bangun ruang, namun dalam kenyataannya, tipe data  array  ini dapat dibentuk menjadi lebih dari tiga dimensi atau menjadi n -dimensi.

Dalam membuat program, kadangkala akan dihadapkan dengan struktur data yan g tidak sederhana dan apabila hanya ditangani dengan tipe data dasar saja, maka pembuat program akan kesulitan merumuskan komposisinya. Sebagai contoh, program yang akan dibuat melibatkan data tentang mahasiswa, maka untuk variabel mahasiswa akan sulit ditentukan tipe datanya karena pada mahasiswa terdapat beberapa elemen yaitu, nama, nomor induk mahasiswa, jenis kelamin, alamat, dan elemen-elemen yang lainnya.
Tantangan berikutnya adalah bagaimana cara menyimpan data -data mahasiswa tersebut jika jumlah mahasiswa lebih dari satu? Tentunya hal ini akan sangat sulit jika harus diselesaikan dengan tipe data dasar saja. Oleh karena itu diperlukan adanya suatu tipe data baru yang digunakan untuk menangani kasus di atas, yaitu dengan menggunakan tipe data bentukan .

Tipe data bentukan merupakan suatu tipe data yang dirancang/dibentuk (dan diberi nama) dari beberapa elemen bertipe tertentu yang sudah dikenal. Jadi di dalam tipe data bentukan akan terdapat elemen dengan tipe data dasar dan dapat juga terdapat tipe data bentukan lain yang telah didefinisikan sebelumnya.
Tujuan digunakannya tipe data bentukan adalah supaya perancang program mendapatkan suatu tipe data dimana seluruh kompon ennya secara keseluruhan memiliki makna semantik dan di dalamnya terdapat keterkaitan antar komponen. Pada data mahasiswa telah dijabarkan beberapa elemen yang ada maka, dengan menggunakan tipe data bentukan ini, perancang program dapat mendefinisikannya ke dalam program.

Tipe data  array  digunakan untuk menampung/menyimpan banyak nilai pada satu variabel. Setiap elemen pada tipe data  array ditandai dengan indeks.  Indeks penanda elemen pada  array  menggunakan tipe data yang memiliki keterurutan.  Tipe data array memiliki dimensi minimal satu hingga n-dimensi.  Pada tipe data  array  satu dimensi memiliki satu indeks, kemudian pada array  dua dimensi memiliki dua indeks, demikian seterusnya dimana jumlah indeks mengikuti banyaknya dimensi  array  yang dibentuk.  Tipe data bentukan adalah tipe data yang dirancang/dibentuk (dan diberi nama) dari beberapa elemen bertipe tertentu.  Tipe data bentukan dapat disimpan dalam variabel bertipe  array.  Elemen dalam tipe data bentukan dapat menggunakan variabel bertipe array.  Tipe data bentukan yang di dalamnya terdapat  elemen bertipe  array, dapat disimpan dalam variabel bertipe  array.

Referensi
Anonim, “Algoritma & Pemrograman II”, Penerbit Gunadarma, Jakarta, 1990
Bryon, Goffried, “Programming with PASCAL”, Schaum Series, New York, 1986
Prather, Ronald E., “Problem Solving Principle : Programming with Pascal”, Prentice Hall, New Jersey, 1982
Dumairy, Matematika Terapan untuk Bisnis & Ekonomi Press (BPFE Yogyakarta)
Yogianto H.M, Turbo Pascal 5.0 Penerbit Andi Offset, Yogyakarta.
Harahap, Erwin (2005). Panduan Perkuliahan Algoritma & Pemrograman, Jurusan Statistika, Universitas Islam Bandung, Bandung.
Munir, Rinaldi. (2006). Algoritma dan Pemrograman, Edisi ke-3, Penerbit Informatika, Bandung.
.., “Array dan tipe data Bentukan”  Politeknik Telkom, Bandung, 2013.

Tugas 13

Dari tugas sebelumnya tulislah algoritma (Array) psudocode dan buatlah programnya menggunakan visual basic, Screenshoot hasil/ tampilan program dan lampirkan dengan membuat link melalui google drive



Materi 12 Prosedur


Pengantar
Cara lain memecah persoalan pemrograman ke dalam sub-sub persoalan pemrograman adalah dengan mendeklarasikan prosedur. Prosedur adalah sederetan instruksi yang diberi nama, dan melakukan tujuan tertentu. Seperti halnya pada fungsi, prosedur bekerja dengan mekanisme pemanggilan -pengembalian (call- return mechanism ), yaitu dengan urutan langkah:
1. Prosedur dipanggil oleh kode pemanggil (program utama maupun prosedur lainnya)
2. Sekumpulan operasi yang disimpan dalam prosedur dieksekusi
3. Kontrol dikembalikan ke kode pemanggil
Fungsi/prosedur adalah suatu bagian dari program yang digunakan untuk menjalankan suatu tugas tertentu dan letaknya terpisah dari bagian program yang menggunakannya. Suatu fungsi/prosedur dipanggil/digunakan dengan tujuan khusus, yaitu untuk mengerjakan suatu tugas tertentu, dimana tugas-tugas tersebut dapat berupa  tugas  input(menyimpan hasil ke dalam suatu array atau file) dan/atau  output(menampilkan hasil di layar monitor) ataupun melakukan penyeleksian dan perhitungan. Suatu Fungsi/prosedurdapat memberikan suatu hasil balik ke program yang memanggilnya atau tidak meberikan hasil balik sama sekali. Hasil balik ini biasanya berupa suatu nilai yang dibutuhkan oleh bagian program yang memanggilnya.

Perbedaan utama fungsi dan prosedur adalah Fungsihnya akan mengembalikan sebuah nilai ke bagian yang memanggilnya atau dengan kata lain  sebuah fungsi hanya mengerjakan satu tugas saja, sedangkan  prosedurakan  mengembalikan satu atau lebih nilai atau bahkan tidak mengembalikan nilai sama sekalike bagian yang memanggilnya, atau dengan kata lain sebuah prosedur dapat mengerjakan lebih dari satu tugas.
Kelebihan program yang menggunakan fungsi tambahan selain fungsi utamanya diantaranya [1]:
1. Program menjadi lebih mudah dimengerti
Hal ini disebabkan karena proses penyelesaian untuksuatu masalah dipecah menjadi beberapa sub masalah/ pemecahan masalah tersebut ke dalam bentuk fungsi yang lebih sederhana akan membuat program menjadi lebih mudah dimengerti dibandingkan jika semuanya dilakukan dalam fungsi utama saja.
2. Pengaruh antar bagian menjadi lebih kecil (Program menjadi lebih independen)
Karena suatu sub masalah diselesaikan dalam fungsi/prosedur yang terpisah maka (seharusnya) hal tersebut tidak akan mempengaruhi perintah yang ada pada fungsi/prosedur yang lain. Tidak seperti jika dikerjakan dalam fungsi utama atau bagian utama, sebuah perintah tertentu pada suatu baris program memungkinkan akan memberi pengaruh yang tidak dikehendaki ke perintah pada baris program yang lain. Dalam pembuatan sebuah fungsi/prosedur yang baik, perintah-perintah yang ada dalam suatu fungsi/prosedur seharusnya tidak mempengaruhi perintah-perintah yang ada di fungsi/prosedur yang lain (independen)
3. Dapat dipakai kembali
Fungsi/prosedur yang pernah dibuat dapat dipakai kembali di program yang lain untuk menyelesaikan masalah yang berbeda, sehingga pada pembuatan program berikutnya akan menjadi semakin mudah karena kita sudah mempunyai beberapa fungsi/prosedur tambahan yang dapat dimanfaatkan (contohnya  Library header  dalam bahasa C/C++). Hal ini akan membantu seorang programmeruntuk menyelesaiakan suatu program dengan waktu yang lebih singkat.
4.  Lebih efisien dan ukuran program menjadi lebih kecil
Dengan adanya fungsi/prosedur penulisan kumpulan baris program yang sama di tempat yang berbeda dapat dikurangi atau dapat ditulis satu kali saja dalam fungsi/prosedur, jika bagian program membutuhkan perintah tersebut tinggal memanggil fungsi/prosedur tersebut. Sehingga program yang dibuat menjadi lebih efisien dan ukurannyapun menjadi lebih kecil.
5. Lebih konsisten
Penulisan kumpulan baris program yang sama secara berulang-ulang ditempat yang berbeda akan mengakibatkan program menjadi tidak konsisten,karena jika terdapat kesalahan dalam kumpulan baris program tersebut maka  programmer  harus mengingat kembali posisi kumpulan baris program tersebut. Sebaliknya jika kumpulan baris program yang sama dibuat dalam bentuk fungsi/prosedur maka jika ada kesalahan perintah,  programmertinggal memperbaikinya pada fungsi/prosedur tersebut.

Prosedur diawali dengan kata cadangan Procedure di dalam bagian deklarasi prosedur. Prosedur dipanggil dan digunakan di dalam blok program yang lainnya dengan menyebutkan judul prosedurnya. Prosedur banyak digunakan pada program yang terstruktur, karena :
1. Merupakan penerapan konsep program modular, yaitu memecah-mecah program yang rumit menjadi program-program bagian yang lebih sederhana dalam bentuk prosedur-prosedur.
2. Untuk hal-hal yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja dalam prosedur dan dapat dipanggil atau dipergunakan sewaktu-waktu bila diperlukan.
Sebagaimana halnya sebuah program, suatu procedure juga memiliki header dan block.

Referensi
Anonim, “Algoritma & Pemrograman II”, Penerbit Gunadarma, Jakarta, 1990
Bryon, Goffried, “Programming with PASCAL”, Schaum Series, New York, 1986
Prather, Ronald E., “Problem Solving Principle : Programming with Pascal”, Prentice Hall, New Jersey, 1982
Dumairy, Matematika Terapan untuk Bisnis & Ekonomi Press (BPFE Yogyakarta)
Yogianto H.M, Turbo Pascal 5.0 Penerbit Andi Offset, Yogyakarta.
Ediman Lukito, Belajar Sendiri Pemrograman dengan Turbo Pascal 7.0
Harahap, Erwin (2005). Panduan Perkuliahan Algoritma & Pemrograman, Jurusan Statistika, Universitas Islam Bandung, Bandung.
Munir, Rinaldi. (2006). Algoritma dan Pemrograman, Edisi ke-3, Penerbit Informatika, Bandung.
Bahan Ajar Algoritma dan Pemrograman “Pemgrogaman Modular/ function” Politeknik Telkom Bandung, 2013

Tugas 12
Dari tugas sebelumnya (8,9,10) tulislah algoritma (Procedure) psudocode dan buatlah programnya menggunakan visual basic, Screenshoot hasil/ tampilan program dan lampirkan dengan membuat link melalui google drive





Materi 11 Pemrograman Modular : Fungsi

sumber gambar : www.programering.com

Pengantar
Salah satu teknik pemrograman yang sering digunakan adalah pemrograman modular. Teknik ini dikembangkan karena keterbatasan manusia memikirkan pemecahan permasalahan. Manusia hanya sanggup memikirkan bagian tertentu dari keseluruhan program secara tuntas, tetapi mampu berpikir secara global. Pada umumnya orang memecahkan permasalahan secara bertahap. Pertama kali memikirkan persoalan secara global dengan sejumlah sub–masalah. Kemudian setiap sub–masalah dipikirkan rincian pemecahannya.
Sebagai contoh :
Misalkan kita disuruh mengunjungi teman dikota lain. Mungkin yang pertama kali dipikirkan adalah bahwa perjalanan dibagi atas tiga bagian, dua perjalanan dalam kota dan satu perjalanan antar kota. Diantara tiga sub-perjalanan tersebut yang pertama dipikirkan adalah perjalanan antar kota. Pikiran seperti ini berarti kita telah berasumsi bahwa perjalanan dalam kota dianggap sudah tahu. Andaikan kita memutuskan naik pesawat udara, maka dengan segera akan mencari tiket walaupun sesungguhnya kita belum mengetahui rincian perjalanan dalam kota. Sebelum berangkat atau menjelang keberangkatan, kita memikirkan rincian masing-masing tahapan perjalanan. Didalam benak kita bertanya, naik apa ke bandar udara ?. Kalaupun naik bus harus tahu lintasan dan tempat pemberhentiannya.

Mungkin kita tidak mau repot memikirkan semua itu, serahkan saja pemecahannya kepada sopir taksi, kita naik taksi. Perjalanan antar kota dipercayakan kepada pilot. Perjalanan dari bandar udara ke tempat tujuan dipercayakan juga kepada sopir taksi. Persoalan transportasi diatas kita pecahkan secara global saja. Sub-permasalahan dibebankan pemecahannya kepada pihak lain, yaitu pilot dan sopir taksi. Dalam hal ini pihak yang ditugasi itu harus tahu betul rincian pemecahan permasalahan yang ditugaskan kepadanya.
Pada pemrograman hal semacam itu juga terjadi. Pemecahan permasalahan dipikirkan secara bertahap. Permasalahan dibagi atas beberapa bagian kemudian setiap bagian dibagi lagi atas bagian-bagian lain yang lebih kecil, demikian seterusnya sampai bagian tersebut mudah untuk dapat diselesaikan.
Penyelesaian setiap bagian permasalahan disebut modul. Dalam program modul akan direalisasikan dalam bentuk prosudur, fungsi atau blok. Pada umumnya, suatu modul akan mengolah masukan yang diterimanya untuk menghasilkan keluaran seperti yang diinginkan.
Ada sebuah pernyataan dari Al-Khawarizmi:
Untuk mencapai suatu tujuan besar, maka tujuan tersebut harus dibagi-bagi menjadi tujuan kecil sampai tujuan kecil itu merupakan tujuan yang dapat dicapai berdasarkan kondisi dan potensi yang dimiliki saat itu.
Pernyataan Al-Khawarizmi dapat dijadikan analogi mengenai pemrograman modular. Pemrograman modular adalah memprogram dengan membagi program menjadi beberapa bagian procedure (prosedur) dan function (fungsi). Prosedur adalah bagian program yang tidak mengembalikan hasil proses ke bagian pemanggilnya. Sedangkan fungsi adalah bagian program yang akan mengembalikan suatu nilai hasil dari proses ke bagian pemanggilnya. Fungsi adalah sekumpulan perintah operasi program yang dapat menerima argumen input dan dapat memberikan hasil output yang dapat berupa nilai ataupun sebuah hasil operasi. Hasil akhir fungsi akan berupa sebuah nilai balik (return) .

Pemrograman Modular merupakan paradigma pemrograman yang pertama kali diperkenalkan oleh Information & Systems Institute, Inc. pada the National Symposium on Modular Programming pada 1968. Salah satu tokoh modular programming adalah Larry Constantine . Pemrograman Modular adalah suatu teknik pemrograman di mana program yang biasanya cukup besar dibagi-bagi menjadi beberapa bagian program yang lebih kecil .
Pemrograman modular memungkinkan perancang program menyederhanakan persoalan didalam program dengan memecah atau membagi persoalan tersebut menjadi sub-sub persoalan yang lebih kecil agar mudah diselesaikan. Secara umum dikenal dua cara yang dapat digunakan untuk memecah persoalan dalam modul-modul, yaitu dengan menggunakan struktur fungsi dan prosedur. Pemahaman tentang perbedaan dan karakteristik masing -masing struktur tersebut perlu diimbangi pula dengan kemampuan mengimplementasikannya dalam program.

Dalam sebuah program, seringkali pemrogram perlu memecah persoalan yang kompleks menjadi beberapa bagian yang lebih mudah diselesaikan. Ide inilah yang mencetuskan struktur pemrograman modular, yaitu memecah persoalan menjadi sub -sub persoalan yang biasa disebut subprogram.
Bayangkan sebuah program yang dibuat untuk menghitung nilai rata -rata dari sekumpulan nilai integer. Dalam prosesnya, program melakukan perhitungan tersebut dalam dua langkah, yaitu menjumlahkan seluruh nilai, kemudian membaginya dengan banyaknya nilai yang tersedia. Dengan demikian program tersebut dapat dipecah menjadi dua subprogram, yaitu subprogram penjumlahan dan subprogram pembagian. Selain itu, pemrograman modular memungkinkan pemrogram memanggil kembali subprogram yang telah didefinisikannya setiap kali diperlukan dalam program tersebut. Pemrogram tidak perlu berulang kali mendefinisikan sekumpulan instruksi yang diperlukan beberapa kali dalam sebuah program maupun dalam program lainnya. Dengan pemrograman modular, sebuah subprogram dapat dianggap sebagai program kecil dengan sebuah tujuan spesifik yang umumnya berisi operasi sederhana   dan apabila terdapat kesalahan dapat dilokalisir pada subprogram itu sendiri. Sub -sub program tersebut kemudian disatukan oleh bagian program utama yang dapat memanggil subprogram tersebut sesuai kebutuhan dalam program.

Dalam pemrograman, dikenal dua tipe subprogram yang biasa digunakan untuk memecah persoalan kompleks menjadi lebih sederhana, yaitu fungsi (function) dan prosedur (procedure). Kedua tipe subprogram ini dapat digunakan bersamaan maupun salah satunya saja dalam sebuah program. Masing-masing tipe subprogram memiliki karakteristik dan perilaku yang berbeda sehingga penggunaannya dalam program juga berbeda -beda.
Subprogram sebagai bagian dari program utama wajib mendefinisikan kondisi awal (initial state/I.S. ) sebelum proses dalam subprogram dieksekusi dan juga mendefinisikan kondisi akhir (final state/F.S. ) yang berupa hasil proses (output) atau perubahan nilai dalam variabel tertentu (khusus untuk fungsi saja).
Beberapa fungsi dan prosedur telah terdefinisi dan dapat langsung digunakan oleh pemrogram dalam sebuah program dengan mendefinisikan variabel-variabel yang diperlukan. Selain fungsi dan prosedur yang telah terdefinisi tersebut, pemrogram juga dapat membuat sendiri fungsi dan prosedur yang diperlukannya dalam sebuah program.

Dalam membuat sebuah subprogram, pemrogram dapat menyimpannya dalam salah satu dari dua lokasi berikut ini :
1. dalam file yang sama dengan program utama: dapat dilakukan jika subprogram sedikit dan berukuran kecil sehingga relatif mudah dikelola dalam sebuah file
2. dalam file yang terpisah: biasanya dilakukan jika subprogram sudah terlalu banyak sehingga sulit dikelola, atau jika pemrogram menginginkan supaya subprogram dapat digunakan di beberapa program utama sekaligus


Referensi
Anonim, “Algoritma & Pemrograman II”, Penerbit Gunadarma, Jakarta, 1990
Bryon, Goffried, “Programming with PASCAL”, Schaum Series, New York, 1986
Prather, Ronald E., “Problem Solving Principle : Programming with Pascal”, Prentice Hall, New Jersey, 1982
Dumairy, Matematika Terapan untuk Bisnis & Ekonomi Press (BPFE Yogyakarta)
Yogianto H.M, Turbo Pascal 5.0 Penerbit Andi Offset, Yogyakarta.
Ediman Lukito, Belajar Sendiri Pemrograman dengan Turbo Pascal 7.0
Harahap, Erwin (2005). Panduan Perkuliahan Algoritma & Pemrograman, Jurusan Statistika, Universitas Islam Bandung, Bandung.
Munir, Rinaldi. (2006). Algoritma dan Pemrograman, Edisi ke-3, Penerbit Informatika, Bandung.
Bahan Ajar Algoritma dan Pemrograman “Pemgrogaman Modular/ function” Politeknik Telkom Bandung, 2013

Tugas 10

Dari tugas sebelumnya (8,9,10) tulislah algoritma (Function) psudocode dan buatlah programnya menggunakan visual basic, Screenshoot hasil/ tampilan program dan lampirkan dengan membuat link melalui google drive


Materi 10 Struktur Algoritma Looping

sumber gambar : l-cruz-on-film.blogspot.com
Pengantar
Satement Perulangan merupakan hal sangat penting dalam algoritma program. Kadang-kadang diinginkan untuk mengulang-ulang perintah untuk maksud tertentu. Perulangan digunakan untuk menghindari penggunaan penulisan perintah secara berulang-ulang, apabila perintah tersebut sebetulnya merupakan perintah yang sama. Perintah perulangan pada dasarnya merupakan kemampuan bahasa program untuk mengulang-ulang sebuah perintah sampai suatu kondisi terpenuhi. Misalnya diinginkan untuk menuliskan tampilan nilai nol sampai seratus. Secara program dapat ditulis program yang berulang yaitu mencetak bilangan dari nol sampai seratus. Tentu saja hal ini tidak bijaksana, karena akan memerlukan jumlah perintah yang banyak sekali. Apalagi kalau yang ditampilkan tidak hanya sampai seratus, tetapi sampai seribu. Tentu saja memerlukan perintah yang sangat banyak sekali. Hal ini dapat dihindari jika digunakan perintah perulangan.

Struktur perulangan adalah suatu susunan perintah atau pernyataan yang dijalankan untuk melakukan proses berulang-ulang selama kondisi masih bernilai Trueatau kondisi masih dipenuhi. Proses perulangan akan berhenti apabila kondisi bernilai Falseatau kondisi menjadi tidak dipenuhi.
Struktur perulangan terdiri atas 2 bagian :
1. Kondisi perulangan, yaitu kondisi Boolean yang harus terpenuhi.
2. Body, yaitu bagian algoritma yang diulang

Struktur perulangan juga memiliki 2 aksi
1. Inisialisasi, yaitu aksi penentuan harga awal
2. Terminasi, yaitu aksi akhir perulangan

Terdapat tiga jenis struktur perulangan, yaitu :
a.  Perulangan dengan statement For .. Do
b.  Perulangan dengan statement While .. Do
c.  Perulangan dengan statement Repeat .. Until

Referensi
Anonim, “Algoritma & Pemrograman II”, Penerbit Gunadarma, Jakarta, 1990
Bryon, Goffried, “Programming with PASCAL”, Schaum Series, New York, 1986
Prather, Ronald E., “Problem Solving Principle : Programming with Pascal”, Prentice Hall, New Jersey, 1982
Dumairy, Matematika Terapan untuk Bisnis & Ekonomi Press (BPFE Yogyakarta)
Yogianto H.M, Turbo Pascal 5.0 Penerbit Andi Offset, Yogyakarta.
Ediman Lukito, Belajar Sendiri Pemrograman dengan Turbo Pascal 7.0
Harahap, Erwin (2005). Panduan Perkuliahan Algoritma & Pemrograman, Jurusan Statistika, Universitas Islam Bandung, Bandung.
Munir, Rinaldi. (2006). Algoritma dan Pemrograman, Edisi ke-3, Penerbit Informatika, Bandung.

Tugas 10
Dari tugas sebelumnya (6) tulislah algoritma (Looping) psudocode dan buatlah programnya menggunakan visual basic, Screenshoot hasil/ tampilan program dan lampirkan dengan membuat link melalui google drive




Materi 9 Struktur Algoritma Selection

sumber gambar : vendorsdirectory.com

Pengantar
Suatu aksi dilakukan bila telah memenuhi syarat (kondisi true  atau false) sehingga ada kemungkinan kondisi tertentu
Pada struktur pemilihan tidak setiap baris program  akan dikerjakan. Baris prorgam yang dikerjakan hanya yang memenuhi syarat  saja. Struktur pemilihan adalah struktur program yang melakukan proses pengujian untuk mengambil suatu keputusan apakah suatu baris atau blok instruksi akan diproses atau tidak. Pengujian kondisi ini dilakukan untuk memilih salahsatu dari beberapa alternatif yang tersedia.
Pada pemrograman penyeleksian dilakukan pada suatu  pernyataan  boolean, yang dapat menghasilkan nilai benar (true) atau nilai salah (false). Biasanya sebuah pernyataan pemilihan terdiri dari  operand-operandyang dihubungkan dengan operator relasi dan digabungkan dengan operator logika.

Pada bentuk IF sederhana ini,  intruksi akan dikerjakan jika  syarat yang diuji benilai benar (true). Jika  syaratyang diuji benilai salah (false) maka tidak ada instruksi yang dikerjakan.
Proses pengujiannya adalah jika  syarat1 yang diuji benilai benar maka  instruksi1 yang dikerjakan, jika  syarat1 yang diuji bernilai salah maka  syarat2 diuji, jika  syarat2 bernilai benar maka  instruksi2 yang dikerjakan, jika  syarat2 bernilai salah maka  syarat3 yang diuji, jika  syarat3 bernilai benar maka instruksi3 yang dikerjakan, jika  syarat3 bernilai salah maka  syaratm yang diuji, jika  syaratmbernilai benar maka  instruksimyang dikerjakan, begitu seterusnya, jika tidak ada syarat yang terpenuhi maka  instruksin yang dikerjakan.

Referensi
1. Introduction To Algoritms, Thomas N. Cormen, Charles E. Leiserson, Ronald L. Ruvest. MIT Press
2. Computer Algorithms: introduction to design and analysis. 2nd ed., Sara Baase, Reading,Mass: Addison-Wesley Company, 1993
3. Analisis dan Desain Berorientasi Objek, Ariesto Hadi Sutopo, JJ Learning: Yogyakarta, 2002
4. Pengantar Analisis Algoritma, Suryadi MT, Gunadarma: Jakarta, 1992
5. Fogarty, D.W., J.H. Blackstone, and T.R. Hoffman, 1991, Production and Inventory Management, South-Western Publishing Co., Ohio, Bab VI.
6. Tersine, R.J., 1988, Principles of Inventory and material Management, 3rd ed., North Holland, Bab VII

Tugas 9
Dari tugas sebelumnya (6) tulislah algoritma (selection) psudocode dan buatlah programnya menggunakan visual basic, Screenshoot hasil/ tampilan program dan lampirkan dengan membuat link melalui google drive


Materi 8 Struktur Algoritma Sequence

sumber gambar : www.warrenphotographic.co.uk
Pengantar
Sequence adalah struktur kontorl algoritmik yang paling sederhana berisi sederetan instruksi yang akan dilaksanakan atau dieksekusi oleh komputer berdasarkan urutan penulisannya. Algoritma merupakan runtunan (sequence) satu atau lebih instruksi, yang berarti bahwa:
  1. Tiap instruksi dikerjakan satu persatu.
  2. Tiap instruksi dilaksanakan tepat sekali, tidak ada instruksi yang diulang.
  3. Urutan instruksi yang dilaksanakan pemroses sama dengan urutan instruksi sebagaimana yang tertulis di dalam teks algoritmanya.
  4. Akhir dari instruksi terakhir merupakan akhir algoritma.
Sebuah runtunan 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 akhirnya mungkin juga berubah.

Terdapat istilah initial state  dan final state, Initial state  dari sequence adalah keadaan/ kondisi awal yang harus dipenuhi dan Final state  adalah kondisi akhir setelah instruksi selesai atau berakhir.
Urutan penulisan aksi atau instruksi pada sequence sesusai dengan penulisannya per baris atau dapat juga dituliskan menjadi satu baris program dengan cara memisahkan tiap instruksi dengan tanda ; (titik koma), hal ini dilakukan untuk sequence yang jika urutannya dirubah tidak mempengaruhi programnya.

Referensi
1. Introduction To Algoritms, Thomas N. Cormen, Charles E. Leiserson, Ronald L. Ruvest. MIT Press
2. Computer Algorithms: introduction to design and analysis. 2nd ed., Sara Baase, Reading,Mass: Addison-Wesley Company, 1993
3. Analisis dan Desain Berorientasi Objek, Ariesto Hadi Sutopo, JJ Learning: Yogyakarta, 2002
4. Pengantar Analisis Algoritma, Suryadi MT, Gunadarma: Jakarta, 1992
5. Fogarty, D.W., J.H. Blackstone, and T.R. Hoffman, 1991, Production and Inventory Management, South-Western Publishing Co., Ohio, Bab VI.
6. Tersine, R.J., 1988, Principles of Inventory and material Management, 3rd ed., North Holland, Bab VII

Tugas 8

Dari tugas sebelumnya (6) tulislah algoritma (sequence) psudocode dan buatlah programnya menggunakan visual basic, Screenshoot hasil/ tampilan program dan lampirkan dengan membuat link melalui google drive


Materi 7 Bahasa Pemrograman

sumber gambar : www.industryconnect.co.nz
Pengantar
Perangkat lunak bahasa pemrograman (language software) merupakan program yang digunakan untuk menerjemahkan perintah-perintah yang ditulis dalam bahasa program ke dalam bahasa mesin (machine languange), sehingga dapat diterima dan dimengerti oleh komputer. Apabila languange software tidak tersedia, maka pembuat program harus menulis programnya langsung dengan bahasa mesin yang berbentuk bilangan-bilangan binary. Suatu instruksi program yang ditulis dalam bahasa mesin dapat berbentuk seperti 000100110010. Tanpa mengetahui arti tertentu dari masing-masing bagian dari bilangan binary tersebut secara persis, maka akan sangat sulit untuk mengerti dengan benar maksud dari instruksi tersebut.

Instruksi yang berbentuk bilangan binary disebut dengan object code. Sedangkan kumpulan dari instruksi-instruksi yang membentuk suatu program dalam bahasa mesin disebut dengan object program. Tiap-tiap instruksi object code terdiri dari operation code (op code) dan open and. Penulisan program dengan bahasa mesin dirasakan terlalu sulit dan memakan banyak waktu, maka dikembangkan languange software sebagai alternatif penulisan program yang lebih mudah. Penerjemah bahasa pemrograman dibedakan menjadi 3 (tiga) macam, yaitu assembler, kompiler, dan interpreter.
1. Asembler adalah program yang digunakan untuk menerjemahkan kode sumber dalam bahasa rakitan (assembly) ke dalam bahasa mesin.
2. Kompiler adalah program penerjemah yang mengonversi semua kode sumber selain dalam bahasa rakitan menjadi kode objek. Hasil berupa kode objek inilah yang dapat dijalankan oleh komputer. Proses untuk melakukan penerjemahan ini biasa disebut kompilasi.
3. Intepreter adalah program yang menerjemahkan satu per satu instruksi dalam kode sumber kemudian menjalankan instruksi yang telah diterjemahkan tersebut.
Perangkat lunak bahasa pemrograman (language software) merupakan program yang digunakan untuk menerjemahkan perintah-perintah yang ditulis dalam bahasa program ke dalam bahasa mesin sehingga dapat diterima dan dimengerti oleh komputer. Pada dasarnya bahasa komputer dapat dibedakan menjadi empat macam, yaitu bahasa mesin dan bahasa assembly (kedua bahasa ini termasuk bahasa tingkat rendah/low level language), bahasa tingkat tinggi (high level language), dan bahasa generasi keempat.

Bahasa mesin termasuk ke dalam bahasa tingkat rendah (low level language) karena sifat dari bahasa mesin lebih berorientasi pada mesin. Bahasa ini hanya akan dipahami oleh komputer itu sendiri. Bahasa ini berupa kode-kode yang terdiri dari sekumpulan angka yang ada di dalam komputer yang biasanya diwakili oleh kode angka 1 (satu) dan 0 (nol). Kode ini merupakan sinyal elektronik yang memberitahu komputer apa yang harus dikerjakan. Dalam penggunaannya biasanya intruksi dituliskan dalam bentuk bahasa pemrograman yang akan disampaikan ke kompiler, assembler, atau interpreter yang bertugas untuk menerjemahkan bahasa pemrograman tadi ke bahasa mesin. Assembler merupakan sebuah program. Program ini mengambil informasi yang dituliskan oleh programmer dalam bahasa assembly dan menerjemahkannya ke sebuah program yang dapat dieksekusi komputer. output assembler harus diproses oleh linker untuk menghasilkan program akhir.

Setiap jenis CPU (Central Processing Unit) atau dikenal juga sebagai mikroprosesor, hanya dapat mengerti atau menterjemahkan setiap bahasa mesin yang dimilikinya. Artinya setiap CPU telah dilengkapi perangkat intruksi (instructions set) yang dimilikinya. Menyusun program dengan perangkat instruksi pada CPU tertentu disebut dengan program bahasa mesin (machine language). Instruksi-instruksi dalam bahasa mesin adalah bilangan-bilangan yang merupakan kode mesin disimpan dalam memori. Setiap instruksi akan memiliki kode numerik yang unik disebut sebagai kode operasi (operation code) atau disingkat sebagai opcode. Instruksi pada Prosesor 80x86 memiliki variasi ukuran. Opcode selalu berada pada awal setiap instruksi. Beberapa instruksi juga diikuti dengan data (seperti konstanta atau alamat) digunakan oleh instruksi.
Bahasa mesin sangat sulit diprogram secara langsung. Menterjemahkan  maksud/arti dari instruksi yang berupa kode numerik bagi manusia sangat membosankan untuk dihapalkan atau dimengerti maksudnya. Sebagai contoh, instruksi katakan untuk menambah isi dari register EAX dan EBX dan hasilnya disimpan kembali dalam register EAX dikodekan oleh kode heksa: 03 CE. Program bahasa mesin yang merupakan kumpulan kode operasi disimpan dalam memori CPU untuk selanjutnya dieksekusi satu persatu sehingga membentuk program secara utuh.

Instruksi mesin dinyatakan dengan pola 0 dan l. Pola semacam itu sangat sulit untuk dijelaskan pada saat membahas atau menyiapkan program. Oleh karena itu, kita menggunakan nama simbolik untuk menyatakan pola tersebut. Sejauh ini kita telah menggunakan kata-kata biasa seperti Move, Add, Increment, dan Branch, untuk instruksi operasi yang menyatakan pola kode biner yang sesuai. Pada saat menulis program untuk komputer tertentu, katakata tersebut biasanya diganti dengan akronim yang disebut mnemonic, seperti MOV, ADD, INC, dan BR Serupa dengan kita menggunakan notasi R3 untuk mengacu pada register 3, dan LOC untuk mengacu pada lokasi memori. Set lengkap nama simbolik semacam dan aturan penggunaannya membentuk bahasa pemrograman, yang biasanya disebut sebagai bahasa assembly. Set aturan untuk menggunakan mnemonic dalam spesifikasi instruksi dan program lengkap disebut syntax bahasa.
Program yang ditulis dalam bahasa assembly dapat secara otomatis ditranslasikan ke rangkaian instruksi mesin oleh suatu program yang disebut assembler. Program assembler adalah salah satu kumpulan program yang merupakan bagian dari software sistem. Assembler, seperti halnya program yang lain, disimpan sebagai rangkaian instruksi mesin dalam memori komputer. Program user biasanya dimasukkan ke dalam komputer melalui keyboard dan disimpan dalam memori atau disk magnetik. Pada titik ini, program user hanyalah kumpulan baris karakter alfanumerik. Pada saat program assembler dieksekusi, program tersebut membaca program user, menganalisanya, dan kemudian menghasilkan program bahasa mesin yang diinginkan. Bahasa mesin tersebut berisi pola 0 dan 1 yang menetapkan instruksi yang akan dieksekusi oleh komputer tersebut. Program user dalam format teks alfanumerik aslinya disebut source program, dan program bahasa mesin yang diassemble disebut object program.

Referensi
1. Introduction To Algoritms, Thomas N. Cormen, Charles E. Leiserson, Ronald L. Ruvest. MIT Press
2. Computer Algorithms: introduction to design and analysis. 2nd ed., Sara Baase, Reading,Mass: Addison-Wesley Company, 1993
3. Analisis dan Desain Berorientasi Objek, Ariesto Hadi Sutopo, JJ Learning: Yogyakarta, 2002
4. Pengantar Analisis Algoritma, Suryadi MT, Gunadarma: Jakarta, 1992

Tugas 7

Instal-lah visual basic, screenshot, dan buatlah program pertama dengan menampilkan informasi yang telah dibuat pada tugas 3 (Pengantar Logika Pemrograman) yaitu : Identitas Anda : Nama, NIM, Kelas & Identitas Perusahaan : Nama Perusahaan, Alamat, Bagian, Produk

Materi 6 Struktur Algoritma, Aturan Penulisan dan Tipe Data


Pengantar
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut dapat berupa runtunan aksi, pemilihan aksi dan pengulangan aksi. Ketiga jenis langkah tersebut membentuk konstruksi suatu algoritma. Jadi, sebuah algoritma dapat dibangun dari 3 buah struktur dasar, yaitu :
1. Runtunan (sequence)
2. Pemilihan (selection)
3. Pengulangan (looping/repetition)

Pada struktur pemilihan tidak setiap baris program  akan dikerjakan. Baris prorgam yang dikerjakan hanya yang memenuhi syarat  saja. Struktur pemilihan adalah struktur program yang melakukan proses pengujian untuk mengambil suatu keputusan apakah suatu baris atau blok instruksi akan diproses atau tidak. Pengujian kondisi ini dilakukan untuk memilih salahsatu dari beberapa alternatif yang tersedia.
Pada pemrograman penyeleksian dilakukan pada suatu  pernyataan  boolean, yang dapat menghasilkan nilai benar (true) atau nilai salah (false). Biasanya sebuah pernyataan pemilihan terdiri dari  operand-operandyang dihubungkan dengan operator relasi dan digabungkan dengan operator logika.

Penyajian Algoritma dalam bentuk tulisan biasanya menggunakan metode Stuctured English dan Psedoucode, sedangkan penyajian algoritma dengan teknik gambar biasanya menggunakan metode structure chart, heiracy plus input-proses-output, flowchart dan Narsi Schneiderman chart.
Stuctured English merupakan alat yang cukup efisien untuk menggambarkan suatu algoritma. Basis dari stuctured english adalah bahasa Inggris, tetapi juga dapat menggunakan bahasa Indonesia. Oleh karena bahasa manusia yang digunakan sebagai dasar penggambaran algoritma, maka stuctured english lebih tepat untuk menggambarkan suatu algoritma yang akan dikomunikasinan kepada pemakai sistem.
Psedoucode berarti kode yang mirip dengan pemrograman sebenarnya. Psedoucode berasal dari kata Psedou yang berarti imitasi, mirip atau menyerupai dengan kode bahasa pemrograman. Psedoucode ditulis berbasiskan bahasa pemrograman yang akan digunakan, misalnya Basic, Pascal, C++ dan lain-lain sehingga lebih tepat digunakan untuk menggambarkan algoritma yang akan dikomunikasikan kepada programer. Psedoucode lebih rinci daripada stuctured english, misalnya untuk menyatakan tipe data yang akan digunakan.
Pseudocode merupakan Kaedah yang memaparkan logik atur cara yang mempunyai corak yang serupa dengan bahasa percakapan. Dalam penulisan stuctured english dan psedoucode juga mengenal struktur penulisan program seperti sequence structure, selection/condition structure dan iteration/looping structure.

Pseudocode adalah cara generik untuk menerangkan suatu algoritma tanpa menggunakan tata cara penulisan bahasa pemrograman tertentu. Sebagaimana namanya, pseudo code — tidak dapat dieksekusi langsung pada komputer, tetapi merupakan model dan harus diubah menjadi kode pemrograman yang sebenarnya, dan ditulis sama detailnya.
Pseudocode, secara alamiah dapat terdiri dari berbagai bentuk, walaupun banyak meminjam tata cara penulisan dari bahasa pemrograman popular (seperti C, Lisp, atau Fortran). Bahasa natural digunakan pada bagian detail yang kurang penting. Textbook computer science sering menggunakan pseudocode pada contoh sehingga semua programmer dapat memahaminya, walaupun mereka tidak menggunakan bahasa pemrograman yang sama.
Pada pseudocode terdapat beberapa aturan penulisan agar pseudocode mudah dipahami dan dimengerti oleh para programer. Aturan penulisan tersebut antara lain :
1. Tulis satu pseudocode suatu instruksi pada satu baris.
2. Pisahkan modul-modul atau kelompok pseudocode instruksi dengan memberikan spasi beberapa baris untuk mempermudah pembacaan.
3. Badakan huruf dalam penulisan pseudocode, dimana pseudocode instruksi ditulis dengan huruf kapital, sedangkan komenter atau variabel dalam huruf kecil.
4. Berikan tabulasi yang berbeda untuk penulisan pseudocode instruksi-instruksi yang berada dalam loop atau struktur kondisi.
5. Lakukan pembatasan jumlah baris pseudocode instruksi setiap modulnya, misalnya 50 – 75 baris instruksi per modul, sehingga tidak terlalu panjang.


Referensi
1. Introduction To Algoritms, Thomas N. Cormen, Charles E. Leiserson, Ronald L. Ruvest. MIT Press
2. Computer Algorithms: introduction to design and analysis. 2nd ed., Sara Baase, Reading,Mass: Addison-Wesley Company, 1993
3. Analisis dan Desain Berorientasi Objek, Ariesto Hadi Sutopo, JJ Learning: Yogyakarta, 2002
4. Pengantar Analisis Algoritma, Suryadi MT, Gunadarma: Jakarta, 1992

Tugas

Dari tugas sebelumnya analisis-lah bentuk-bentuk struktur algoritma yang digunakan (sequence, selection, looping), berikan penjelasannya ?
NB : masing-masing harus ada minimal 1 kasus

Materi 5 Dasar logika pemrograman dan Pengambilan Keputusan

sumber gambar : saterlat.com
Pengantar
Pandangan mengenai komputer sebagai sebuah mesin yang “pintar” adalah pandapat yang salah, karena komputer hanyalah suatu alat yang diberi serangkaian perintah oleh manusia sehingga dapat menyelesaikan permasalahan secara cepat, akurat, bahkan berulang-ulang tanpa kenal lelah dan bosan. Sekumpulan instruksi yang merupakan penyelesaian masalah itu dinamakan program. Agar program dapat dilaksanakan oleh komputer, program tersebut harus ditulis dalam suatu bahasa yang dimengerti oleh komputer. Bahasa komputer yang digunakan dalam menulis program dinamakan bahasa pemrograman.

Urutan langkah-langkah yang sistematis untuk menyelesaikan sebuah masalah dinamakan algoritma. Jadi algoritma adalah urutan logis pengambilan keputusan untuk pemecahan masalah. Kata logis merupakan kata kunci. Langkah-langkah tersebut harus logis, ini berarti nilai kebenarannya harus dapat ditentukan, benar atau salah. Langkah-langkah yang tidak benar dapat memberikan hasil yang salah. Sebagai contoh tinjau persoalan mempertukarkan isi dua buah bejana, A dan B. Bejana A berisi larutan yang berwarna merah, sedangkan bejana B berisi air berwarna biru. Kita ingin mempertukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi larutan berwarna biru dan bejana B berisi larutan berwarna merah.

Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atau implementasi algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer. Program ditulis dalam salah satu bahasa pemrograman, dan kegiatan membuat program disebut pemrograman (programmming). Orang yang menulis program disebut pemrogram (programmer). Tiap-tiap langkah di dalam program disebut pernyataan atau instruksi.  Jadi, program tersusun atas sederetan instruksi. Bila suatu instruksi dilaksanakan, maka operasi-operasi yang bersesuaian dengan instruksi tersebut dikerjakan oleh komputer.

Secara garis besar komputer tersususn atas empat komponen utama: piranti masukan, piranti keluaran, unit pemroses utama dan memori.  Unit pemroses utama (Central Processing Unit – CPU) adalah “otak” komputer, yang berfungsi mengerjakan operasi-operasi dasar seperti operasi perbandingan, operasi perhitungan, operasi membaca dan operasi menulis. Memori adalah komponen yang berfungsi menyimpan atau mengingat-ingat.Yang disimpan di dalam memeori adalah program (berisi operasi-operasi yang akan dikerjakan oleh CPU) dan data atau informasi (sesuatu yang diolah oleh operasi-operasi). Piranti masukan atau keluaran (I/O devices) adalah alat yang memasukkan data atau program kedalam memori, dan alat yang digunakan komputer untuk mengkomunikasikan hasil-hasil aktivitasnya.  Contoh piranti masukan adalah : keyboard, mouse, scanner dan disk. Contoh alat keluaran adalah : monitor, printer, plottter dan disk.
Logika disebut juga “the calculus of computer science” karena logika memegang peranan yang sangat penting di bidang ilmu komputer. Peran kalkulus (matematika) sama pentingnya untuk ilmu-ilmu bidang sains, misalnya ilmu fisika, ilmu elektronika, ilmu kimia, dan sebagainya. Oleh karena itu, biasanya pelajar, mahasiswa, guru, dan dosen setuju bahwa logika memainkan peranan penting dalam berbagai bidang keilmuan, bahkan dalam kehidupan manusia sehari-hari.

Logika, komputasi numerik, dan matematika diskrit memiliki peran penting dalam ilmu komputer karena semuanya berperan dalam pemrograman. Logika merupakan dasar-dasar matematis suatu perangkat lunak, digunakan untuk memformalkan semantik bahasa pemrograman dan spesifikasi program, serta menguji ketepatan suatu program. Hal ini menunjukkan betapa pentingnya logika matematika karena banyak ilmu, khususnya dalam bidang ilmu komputer, yang memerlukan logika untuk berkembang.
Logika dalam ilmu komputer dalam ilmu komputer digunakan sebagai dasar dalam belajar bahasa pemrograman, struktur data, kecerdasan buatan, teknik/sistem digital, basis data, teori komputasi, rekayasa perangkat lunak, sistem pakar, jaringan syaraf tiruan, dan lain-lainnya yang mempergunakan logika secara intensif. Salah satu contoh yang populer adalah sistem digital, yaitu bidang ilmu yang didasari oleh logika untuk membuat gerbang logika (logic gates) dan arsitektur komputer sebagai inti mikroprosesor, otak komputer atau  central processing unit.

Logika matematika (mathematical logic) adalah cabang ilmu di bidang matematika yang memperdalam masalah logika, atau lebih tepatnya memperjelas logika dengan kaidah-kaidah matematika.     Logika matematika sendiri juga terus berkembang, mulai dari logika proporsional, logika predikat, pemrograman logika, dan sebaganya. Perkembangan terakhir ilmu logika adalah logika fuzzy, atau di Indonesia disebut logika kabur atau logika samar. Implementasi logika fuzzy dapat ditemui pada pengatur suhu udara (AC), mesin pencuci, kulkas, lainnya.


Referensi
1. Introduction To Algoritms, Thomas N. Cormen, Charles E. Leiserson, Ronald L. Ruvest. MIT Press
2. Computer Algorithms: introduction to design and analysis. 2nd ed., Sara Baase, Reading,Mass: Addison-Wesley Company, 1993
3. Analisis dan Desain Berorientasi Objek, Ariesto Hadi Sutopo, JJ Learning: Yogyakarta, 2002
4. Pengantar Analisis Algoritma, Suryadi MT, Gunadarma: Jakarta, 1992

Tugas

Berdasarkan tugas 4 buatlah analisis metode logika dan inferensi apa yang digunakan untuk pengambilan keputusan kasus tersebut (bisa lebih dari 1 metode)

Materi 4 Flowchart

sumber gambar : creately.com
Pengantar
Flowchart adalah penggambaran secara grafik dari langkah-langkah dan urut-urutan prosedur dari suatu program.Flowchart menolong analis dan programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian.
Flowchart biasanya mempermudah penyelesaian suatu masalah khususnya masalah yang perlu dipelajari dan dievaluasi lebih lanjut.Flowchart adalah serangkaian bagan-bagan yang menggambarkan alir program. Flowchart atau diagram alir memiliki bagan-bagan yang melambangkan fungsi tertentu.

Bagan alir  (flowchart)  adalah bagan  (chart)  yang menunjukkan alir  (flow)  di dalam program atau prosedur sistem secara logika. Bagan alir digunakan terutama untuk  alat  bantu  komunikasi  dan  untuk  dokumentasi.  Flowchart selalu diawali dan diakhiri oleh bagan terminator.Aliran selalu dari atas ke bawah, satu demi satu langkah. Tidak ada proses yang dikerjakan bersamaan, semua dikerjakan satu persatu.
Proses yang dilakukan komputer sebenarnya hanya ada 3 proses: input, proses data dan output. Dengan demikian, ketika ada suatu masalah yang akan diselesaikan dengan suatu software, maka hal yang perlu diidentifikasi adalah input, proses data dan output.

Flowchart Sistem merupakan bagan yang menunjukkan alur kerja atau apa yang sedang dikerjakan di dalam sistem secara keseluruhan dan menjelaskan urutan dari prosedur-prosedur yang ada di dalam sistem. Dengan kata lain, flowchart ini merupakan deskripsi secara grafik dari urutan prosedur-prosedur yang terkombinasi yang membentuk suatu sistem.
Flowchart Sistem terdiri dari data yang mengalir melalui sistem dan proses yang mentransformasikan data itu. Data dan proses dalam flowchart sistem dapat digambarkan secara online (dihubungkan langsung dengan komputer) atau offline (tidak dihubungkan langsung dengan komputer, misalnya mesin tik, cash register atau kalkulator).

Bagan  alir  dokumen  (document  flowchart)  atau  disebut  juga  bagan  alir formulir  (f o r m  flowchart)  atau  paperwork  flowchart  merupakan  bagan  alir  yang menunjukkan  arus  dari  laporan  dan  formulir  termasuk tembusan-tembusannya. Bagan  alir  dokumen  ini  menggunakan  simbol-simbol  yang  sama  dengan  yang digunakan di dalam bagan alir sistem.Flowchart Paperwork menelusuri alur dari data yang ditulis melalui sistem. Flowchart Paperwork sering disebut juga dengan Flowchart Dokumen. Kegunaan utamanya adalah untuk menelusuri alur form dan laporan sistem dari satu bagian ke bagian lain baik bagaimana alur form dan laporan diproses, dicatat dan disimpan.

Flowchart Skematik mirip dengan Flowchart Sistem yang menggambarkan suatu sistem atau prosedur.Perbedaannya  adalah,  bagan  alir  skematik  selain  menggunakan  simbol-simbol bagan  alir  sistem,  juga  menggunakan  gambar-gambar  komputer  dan  peralatan lainnya  yang  digunakan.  Maksud  penggunaan  gambar-gambar  ini  adalah  untuk memudahkan komunikasi kepada orang yang kurang paham dengan simbol-simbol bagan  alir.  Penggunaan  gambar-gambar  ini  memudahkan  untuk  dipahami,  tetapi sulit dan lama menggambarnya. Flowchart Skematik ini bukan hanya menggunakan simbol-simbol flowchart standar, tetapi juga menggunakan gambar-gambar komputer, peripheral, form-form atau peralatan lain yang digunakan dalam sistem.

Flowchart Program dihasilkan dari Flowchart Sistem.Flowchart Program merupakan keterangan yang lebih rinci tentang bagaimana setiap langkah program atau prosedur sesungguhnya dilaksanakan.Flowchart ini menunjukkan setiap langkah program atau prosedur dalam urutan yang tepat saat terjadi.
Programmer menggunakan flowchart program untuk menggambarkan urutan instruksi dari program komputer.Analis Sistem menggunakan flowchart program untuk menggambarkan urutan tugas-tugas pekerjaan dalam suatu prosedur atau operasi.

Referensi
1. Burch,  J.G.,  System,  Analysis,  Design,  and  Implementation,  Boyd  &  Fraser  Publishing Company, 1992.
2. Jogiyanto, analisis dan desain system informasi Andi off set Yogyakarta, 1990.
3. John  G.  Burch,  Jr,  Felix  R.  Strater,  Gary  Grudnistski,  Information  Systems  :  Theory  and Practice, Second Edition, John Wiley & Sons, 1979
4. Meilir  Page-Jones,  The  Practical  Guide  to  Structured  Systems  Design,  Second  Edition, Yourdon Press, Prentice Hall, 1988
5. I.T.  Hawryszkiewycz,  Introduction  Systems  Analysis  and  Design,  Second  Edition,  Prentice Hall, 1991
6. Raymond  McLeod,  Jr,  Management  Information  System  :  A  Study  of  Computer-Based Information Systems, Sixth Edition, Prenctice Hall, 1979
7. Tavri D. Mahyusir, Analisa Perancangan Sistem Pengolahan data. PT Elex Media Komputindo, 1989.
8. Yourdon Edward, Modern Structur Analisis, Prentice – Hall, Inc, 1989

Tugas 4. Flowchart
Berdasarkan tugas 3 Buatlah flowchartnya :
    1. Flowchart sistem
    2. Flowchart proses
    3. Flowchart program
lampirkan file (tugas 4 ini) dengan membuat link melalui google drive


Materi 3 Pengantar Logika Pemrograman Komputer

sumber gambar : www.cocooncenter.org
PengantarDitinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah yang aneh. Orang hanya menemukan kata algorismyang berarti proses menghitung dengan angka arab. Anda dikatakan algorist jika Anda menghitung menggunakan angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadi Algorism.Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction).Dari judul buku itu kita juga memperoleh akar kata “Aljabar” (Algebra). Perubahan kata dari algorismmenjadi algorithm muncul karena kata algorism sering dikelirukan dengan  arithmetic, sehingga akhiran –smberubah menjadi –thm.Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam bahasa Indonesia, kataalgorithm diserap menjadi algoritma.

Asal kata Algoritma berasal dari nama Abu Ja’far Mohammed Ibn Musa al-Khowarizmi, ilmuan Persia yang menulis kitab al jabr w’al-muqabala (rules of restoration and reduction) sekitar tahun 825 M. Algoritma didefinisikan sebagai berikut :
  1. Algoritma adalah urutan langkah logis tertentu untuk memecahkan suatu masalah. Yang ditekankan adalah urutan langkah logis, yang berarti algoritma harus mengikuti suatu urutan tertentu, tidakboleh melompat-lompat. (Dari Microsoft Press Computer and Internet Dictionaary 1997, 1998)
  2. Alur pemikiran dalam menyelesaikan suatu pekerjaan yang dituangkan secara tertulis. Yang ditekankan pertama adalah alur pikiran, sehingga algoritma seseorang dapat juga berbeda dari algoritma orang lain. Sedangkan penekanan kedua adalah tertulis, yang artinya dapat berupa kalimat, gambar, atau tabel tertentu. (Dari Algoritma dan Struktur Data dengan C, C++, dan Java oleh Moh Sjukani hal 1)
“Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis”.Katalogismerupakan kata kunci dalam algoritma.Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau benar.Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk melakukan pekerjaan tertentu.Pertimbangan dalam pemilihan algoritma adalah, pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut bukanlah algoritma yang baik.

Pertimbangan kedua yang harus diperhatikan adalah kita harus mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut.Hal ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang hanya berupa pendekatan).Algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya.
Ketiga adalah efisiensi algoritma.Efisiensi algoritma dapat ditinjau dari 2 hal yaitu efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar (paling mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar memori yang terpakai maka semakin buruklah algoritma tersebut. Dalam kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk menyelesaikan suatu permasalahan, walaupun terjadi perbedaan dalam menyusun algoritma, tentunya kita mengharapkan keluaran yang sama. Jika terjadi demikian, carilah algoritma yang paling efisien dan cepat

Program adalah kumpulan pernyataan komputer, sedangkan metode dan tahapan sistematis dalam program adalah algoritma.Program ditulis dengan menggunakan bahasa pemrograman.Jadi bisa disebut bahwa program adalah suatu implementasi dari bahasa pemrograman. Beberapa pakar memberi formula bahwa:
Program = Algoritma + Bahasa (Struktur Data)
Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan membuat program menjadi kurang baik, demikian juga sebaliknya.
Pembuatan algoritma mempunyai banyak keuntungan di antaranya:
1. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan komputer yang melaksanakannya.
2. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.
3. Apapun bahasa pemrogramannya, outputyang akan dikeluarkan sama karena algoritmanya sama.

Referensi
Bartee, Thomas, “Introduction to computer science”, McGraw Hill International Edition, 1984
Handout, “Algoritma pemrograman dan struktur data I”  UKDW Yogyakarta
Davis, Gordon B, “Intorduction to computers”, McGraw Hill International Edition, 1986
Nugroho, Eko, “Pengenalan Komputer”, Andi Offset Yogyakarta, 1993
Kadir, Abdul.”Pengenalan Sistem Informasi”, Andi Offset Yogyakarta, 2003



Tugas 3. Pengantar logika pemrograman
A. Buatlah studi kasus yang ada di industri (Bisa kunjungan langsung/ pengamatan lapangan/ literatur KP-TA), pilih salah satu dari bagian pengadaan, proses produksi, manajemen, keuangan, SDM, atau pemasaran dan tuliskan permasalahan/pekerjaan/kegiatan khusus yang terjadi serta tahap-tahap untuk menyelesaikannya
B. Isilah dalam bentuk isian berikut :
    1. Nama Obyek : CV/PT/UD/Toko dll
    2. Bagian yang diamati/ diambil :
    3. Permasalahan/ kegiatan (misal : perekrutan tenaga kerja, pembelian material, proses pembuatan produk, pemilihan material, perhitungan gaji dll)
    4. Tahap menyelesaikan
    5. Hasil akhir

Catatan : Tugas 3 ini akan dipakai ditugas-tugas berikutnya sehingga harus jelas dan dikuasai betul, kirim/tulis tugas di kolom di komentar


Selasa, 26 Januari 2016

Materi 2 Konsep Dasar Komputer


sumber gambar : eagleedgecomputers.wordpress.com


Pengantar
Komputer, merupakan kata yang sudah tidak asing lagi bagi manusia yang hidup di jaman modern seperti saat ini. Hampir setiap bidang pekerjaan manusia saat ini misalnya di kantor, di perusahaan,di sekolah, di rumah, dan dimana saja menggunakan komputer. Bahkan beberapa pekerjaan sangat tergantung sekali terhadap pemakaian teknologi komputer ini, misalnya perbankan modern yang menggunakan transaksi on-line, Industri atau pabrik modern yang mengontrol setiap proses produksi, kedokteran untuk mendiagnosa dan scanning penyakit pasien, penerbangan dan ruang angkasa untuk mengontrol pesawat, komunikasi data, dan lain sebagainya.

Komputer adalah serangkaian ataupun sekelompok mesin elektronik yang terdiri dari ribuan bahkan jutaan komponen yang dapat saling bekerja sama, serta membentuk sebuah sistem kerja yang rapi dan teliti. Sistem ini kemudian dapat digunakan untuk melaksanakan serangkaian pekerjaan secara otomatis, berdasar urutan instruksi ataupun program yang diberikan kepadanya. Definisi yang ada memberi makna bahwa komputer memiliki lebih dari satu bagian yang saling bekerja sama, dan bagian-bagain itu baru bisa bekerja kalau ada aliran listrik yang mengalir didalamnya. Istilah mengenai sekelompok mesin, ataupun istilah mengenai jutaan komponen kemudian dikenal sebagai hardware komputer atau perangkat keras komputer.Hardware komputer juga dapat diartikan sebagai peralatan pisik dari komputer itu sendiri.Peralatan yang secara pisik dapat dilihat, dipegang, ataupun dipindahkan.Dalam hal ini, komputer tidak mungkin bisa bekerja tanpa adanya program yang telah dimasukkan kedalamnya.Program ini bisa berupa suatu prosedur peng-operasian dari komputer itu sendiri ataupun pelbagai prosedur dalam hal pemrosesan data yang telah ditetapkan sebelumnya.Dan program-program inilah yang kemudian disebut sebagai software komputer atau perangkat lunak komputer.Dalam arti yang paling luas, software komputer bisa diartikan sebagai suatu prosedur pengoperasian.

Suatu acara yang ditayangkan oleh TVRI, dapat dianggap sebagai software dari suatu peralatan televisi.Demikian pula halnya dengan musik yang telah direkam diatas kaset, data diatas kertas, serta cerita ataupun uraian yang ada didalam sebuah buku. Secara prinsip, komputer hanyalah merupakan sebuah alat; Alat yang bisa digunakan untuk membantu manusia dalam menyelesaikan pekerjaannya.Untuk bisa bekerja, alat tersebut memerlukan adanya program dan manusia.Pengertian manusia kemudian dikenal dengan istilah brainware (perangkat manusia). Konsep hardware - software - brainware adalah merupakan konsep tri-tunggal yang tidak bisa dipisahkan satu dengan lainnya.Untuk tahap pertama, manusia harus memasukkan program terlebih dahulu kedalam komputer.Setelah Setelah program tersimpan didalam komputer, maka komputer baru bisa bekerja untuk membantu manusia dalam menyelesaikan persoalan ataupun pekerjaannya. Dari apa yang telah diuraikan dapatlah dilihat, bahwa pengertian komputer bisa ditinjau dari bermacam-macam sudut, seperti misalnya: tinjauan komputer dari generasi ke-generasi, tinjauan komputer dari sudut kapasitasnya, dan disamping itu, komputer juga dapat ditinjau dari jenis data yang diolahnya.
Walaupun demikian, secara prinsip sebuah komputer selalu memiliki sebuah konsep dasar seperti yang nampak pada gambar. Komputer apapun jenisnya, selalu memiliki suatu peralatan yang disebut sebagai: Input device, Central Processing Unit, Output Device dan External memory.

ReferensiBartee, Thomas, “Introduction to computer science”, McGraw Hill International Edition, 1984
Davis, Gordon B, “Intorduction to computers”, McGraw Hill International Edition, 1986
Nugroho, Eko, “Pengenalan Komputer”, Andi Offset Yogyakarta, 1993
Kadir, Abdul.”Pengenalan Sistem Informasi”, Andi Offset Yogyakarta, 2003


Tugas 2. Konsep Dasar Komputer
A. Tuliskan Bagaimanakah cara kerja komputer (Maksimal 1 halaman/ 150 kata)
B. Isilah isian dibawah ini
    a. Sebutkan Program aplikasi pengolah kata yang anda kuasai
    b. Sebutkan Program aplikasi pengolah angka apa yang anda kuasai
    C. Sebutkan Program aplikasi pengolah gambar apa yang anda kuasai
    d. Sebutkan Program aplikasi pengolah suara apa yang anda kuasai

Catatan : kirim/tulis tugas di kolom di komentar

Materi 1 Pengenalan Komputer





sumber gambar : www.consumerreports.org


Pengantar
Pengertian Komputer telah mengalami banyak perkembangan dari yang pada awalnya digunakan untuk menyebutkan orang yang dalam pekerjaannya melakukan perhitungan operasi Aritmetika, namun seiring waktu dengan perkembangannya istilah komputer mengacu kepada sebuah mesin sebagai alat hitung. Komputer dijaman modern mengarah ke sebuah rangkaian alat elektronik yang mampu melakukan banyak tugas dan memiliki banyak fungsi.Istilah Komputer berasal dari sebuah bahasa latin yaitu computare yang berarti menghitung dan dalam bahasa inggris bisa disebut to compute, yang pada awalnya ditujukan pada orang yang menghitung dan setelah itu ditujukan kepada sebuah alat hitung mekanis lalu seiring perkembangan menjadi alat istimewa yang mampu melakukan berbagai hal yang menakjubkan.

Definisi Komputer dapat di terjemahkan sebagai sekumpulan alat elektronik yang satu sama lain saling bekerja sama terkoordinasi dibawah kontrol program dengan kemampuan dapat menerima data (input) lalu mengolah data (proses) tersebut dengan menghasilkan informasi (output).
Komputer pada saat sekarang ini menjadi bagian penting perannya dalam kehidupan manusia baik untuk membantu berbagai aktivitas pekerjaan ataupun untuk multimedia hiburan yang lengkap. Pada saat ini banyak orang telah menggunakan komputer dalam kesehariannya apalagi bila sudah terhubung ke internet pasti lebih betah duduk berlama-lama di depan komputer. Menjelaskan pengertian internet dimana komputer adalah hal terpenting karena internet itu merupakan jaringan luas untuk menghubungkan komputer diberbagai tempat dibelahan dunia. Bila sudah terhubung ke internet ataupun jaringan komputer yang lebih kecil yaitu LAN ataupun WAN maka perlu diwaspadai akan adanya perpindahan virus beserta variannya yang bisa merusak sistem komputer yang akan berakibat fatal, untuk itu setiap komputer gunakan antivirus terbaik agar lebih aman dan nyaman dalam menggunakan komputer dan menjelajah didunia maya internet online.
Beberapa sumber terpercaya dalam berbagai media online dan juga media cetak seperti buku-buku komputer beberapa ahli telah mendefinisikan komputer diantaranya adalah sebagai berikut ini :
  1. Komputer merupakan mesin penghitung elektronik yang dengan cepat dapat menerima informasi input digital, memrosesnya sesuai dengan program yang tersimpan di memorinya dan menghasilkan output informasi.( V.C. Hamacher et al, 1982)
  2. Komputer ialah suatu alat elektronik yang mampu melakukan beberapa tugas seperti menerima input, memroses input, menyimpan perintah-perintah dan menyediakan output dalam bentuk informasi. (Robert H. Blissmer, 1985)
  3. Komputer adalah sistem elektronik untuk memanipulasi data dengan cepat dan tepat serta dirancang dan diorganisasikan agar secara otomatis menerima dan menyimpan data input, memrosesnya, dan menghasilkan output di bawah pengawasan suatu langkah-langkah instruksi program (Sistem Operasi) yang tersimpan di didalam penyimpannya (stored program).( Donald H. Sanderes, 1985)
  4. Komputer sebuah alat hitung yang memproses data untuk disajikan dalam bentuk data digital dan data analog.( Elias M. Awad)
  5. Komputer adalah alat hitung elektronik yang mampu menginterpresentasikan dan juga melaksanakan perintah program untuk input, output, perhitungan, dan operasi-operasi logik. (Larry Long dan Nancy Long)
  6. Komputer adalah suatu alat pemroses data yang dapat melakukan perhitungan besar secara cepat, termasuk perhitungan aritmetika dan operasi logika, tanpa campur tangan dari manusia.( William M. Fuori)
  7. Komputer adalah mesin multiguna yang dapat diprogram, yang menerima data (fakta-fakta dan gambar-gambar kasar) dan memproses atau memanipulasinya ke dalam informasi yang dapat kita gunakan. (Williams, Sawyer)
Definisi Komputer Menurut Para Ahli tersebut diatas bisa dijadikan bahan dalam memahami komputer lebih luas lagi yang diawali dengan melihat awal penggunaan komputer ternyata ditujukan kepada orang yang memiliki kegiatan atau pekerjaan menghitung lalu berkembang sesuai waktu dengan komputer menunjukkan kepada mesin/alat yang digunakan untuk membantu pekerjaan manusia.

Referensi
Bartee, Thomas, “Introduction to computer science”, McGraw Hill International Edition, 1984
Davis, Gordon B, “Intorduction to computers”, McGraw Hill International Edition, 1986
Nugroho, Eko, “Pengenalan Komputer”, Andi Offset Yogyakarta, 1993
Kadir, Abdul.”Pengenalan Sistem Informasi”, Andi Offset Yogyakarta, 2003

A. Baca Materi lengkap 
B. Tugas Tugas 1. Pengenalan komputer
A. Buatlah akun e-learning di http://learning.upnyk.ac.id dan daftar di Matakuliah Pemrograman Komputer
B. Buatlah Resume materi 1 Pengenalan komputer (Maksimal 1 halaman/ 150 kata)
C. Isilah kuisioner berikut :
1. Nama Lengkap :
2. NIM :
3. Kelas :
4. e-mail :
5. Apakah anda memiliki komputer : ya/tidak
6. (jika jawaban 5 adalah YA) sebutkan jenisnya : Desktop/ Laptop/ Notebook/..
7. Sebutkan speknya :
    a. Manufactur
    b. Lebar Layar
    c. RAM
    d. Memori Hardisk
    e. OS
8. Asal sekolah : ...................... jurusan : .........................

Catatan : kirim/tulis tugas di kolom di komentar materi 1 Pengenalan komputer 


Kontrak Belajar Logika Pemrograman dan Dasar Komputer

Kontrak Belajar Logika Pemrograman dan Dasar Komputer


I. Deskripsi Mata Kuliah
Mata kuliah ini berisi wawasan mengenai konsep-konsep dasar pengenalan komputer dan logika yang digunakan dalam pemrograman komputer. Materi yang dibahas meliputi : (a) Konsep dasar komputer; (b) Komponen dan cara kerja komputer; (c) Flowchart; (d) Notasi Algoritma; (e) Algoritma Pemrograman; (f) Dasar dan struktur pemrograman.

Komputer memegang perananan penting dalam membantu menyelesaikan tugas dan pekerjaan manusia. Komputer telah mengambil sebagain besar peran kerja manusia, komputer tersusun atas dua komponen utama yaitu perangkat keras (hardware)  dan perangkat lunak (software). Perangkat keras merupakan peralatan untuk  intput dan output data, sedangkan perangkat lunak merupakan sistem processing pengolahan data yang berbentuk program atau aplikasi. Untuk dapat memerintahkan komputer supaya melakukan kerja maka komputer harus diberikan perintah atau instruksi yang bisa dipahami oleh komputer dan ditulis dengan sistematika yang benar. Matakuliah ini memberikan penjelasan kepada mahasiswa tentang metode menyusun algoritma pemrograman agar dihasilkan program sebagai sebuah instruksi kepada komputer yang dapat dijalankan sesuai dengan perintah yang diinginkan.

II. Kompetensi
Mahasiswa mampu mengenali konsep dasar komputer dan mampu menyusun algoritma pemrograman yang mendasari pengoperasian sistem aplikasi komputer.
Kompetensi umum dari mata kuliah ini dicapai melalui kompetensi-kompetensi khusus sebagai berikut :
Setelah menyelesaikan mata kuliah ini mahasiswa diharapkan dapat :
1. Mengetahui sejarah dan perkembangan komputer
2. Mengetahui komponen dan cara kerja komputer
3. Mampu menjelaskan konsep algoritma pemrograman dan bahasa pemrograman
4. Mengetahui fungsi dan peran Flowchart.
5. Mengetahui Tipe data, variable dan konstanta yang digunakan dalam pemrograman komputer.
6. Mengenal Bahasa pemrograman yang digunakan dalam pembuatan aplikasi program komputer.
7. Mampu menjelaskan struktur dasar pemrograman sequence, selection, dan looping
8. Mengetahui peran dan Prosedur dan Fungsi dalam pemrograman komputer.
9. Mengetahui konsep pemrograman modular
10. Mampu menjelaskan aplikasi penerapan logika pemrograman dalam pembuatan program dalam kehidupan sehari – hari.
11. Mampu membuat rancangan/prototype aplikasi program sederhana

III. Materi
1. PENGENALAN KOMPUTER
2. KONSEP DASAR KOMPUTER
3. PENGANTAR LOGIKA PEMROGRAMAN
4. FLOWCHART
5. LOGIKA INFORMATIKA DAN INFERENSI
6. TIPE DATA, VARIABEL, DAN KONSTANTA
7. BAHASA PEMROGRAMAN
8. STRUKTUR DASAR ALGORITMA SEQUENCE
9. STRUKTUR DASAR ALGORITMA SELECTION
10. STRUKTUR DASAR ALGORITMA LOOPING
11. PEMROGRAMAN MODULAR : FUNGSI
12. PEMROGRAMAN MODULAR : PROSEDUR
13. ARRAY
14. SORTING DAN SEARCHING
15. PEMROGRAMAN BERORIENTASI OBJEK
16. PENGANTAR PERANCANGAN SISTEM INFORMASI


Referensi
A. Sumber Utama
Muhsin, Ahmad, “Bahan Ajar Logika Pemrograman dan Dasar Komputer”, Jurusan Teknik Industri FTI UPN “Veteran” Yogyakarta, 2013

B. Referensi Tambahan
1. Yulikuspartono, Pengantar Logika dan Algoritma, Penerbit Andi Offset, Yogyakarta, 2004
2. Kadir, Abdul, Pengantar Sistem Informasi, Andi Offset.
3. Setiadji, Logika Informatika, Graha Ilmu, Yogyakarta, 2007
4. Turban, McLean, Wetherbe, Information Technology for Management, 4th Ed, John Wiley and Son.
5. Wing Wahyu Winarno, Sistem Informasi Manajemen, UPP AMP, Yogyakarta, 2004
6. Rinaldi Munir, Algoritma & Pemrograman, Informatika, Bandung, 2002