Hell Yeah Pointer 1 program dasar (Teknik Komputer Jaringan)

Kamis, 18 Oktober 2018

Simulasi Layanan VoIP pada Cisco Packet Tracer 7.1.

"mendapatkan IDE adalah hal yang sulit, namun lebih sulit lagi meng-implementasikannya"

Disusu oleh: arsani kurniawan
Kelas          : XII TKJ 2
Sekolah     : SMKN1 Kotaagung Barat
Email         : arsanikurniawan05@gmail.com

selamat siang kawan , kali ini saya akan memposting Cara Membuat Simulasi Layanan VoIP pada Cisco Packet Tracer 7.1.


A. Alat dan Bahan 
1. Laptop
2. Aplikasi Cisco Packet Tracer 7.1

B.Tahap Pelaksanaan Kegiatan

1.Siapkan peralatannya yaitu :
   - 1 router type 2811
   - 1 switch type 2960
   - 2 pc
   - 2 Laptop
   - 3 Ip phone
   - 4 voip adapter (home voip )
   - 4 analog phone





2.buatlah topologi seperti ini, atau yang lain sesuka anda buat
Keterangan :
1.    Hubungkan pc, laptop, ip phone dan voip adapter ke switch dengan menggunakan  kabel staright.
2.    Hubungkan analog phone dengan voip adapter dengan menggunakan kabel phone.
3.    Analog phone tidak mempunyai port untuk RJ-45 maka kita butuhkan     perantara voip adapter. 

3.Kita klik pada ip phone, lalu kita perhatikan ada lubang seperti berikut, lalu kita masukkan yang ada pada kolom merah sama lubang tersebut

4. Kita lakukan konfigurasi pada router sesuai dengan topologi yang telah disiapkan.
                   

--- System Configuration Dialog ---

Would you like to enter the initial configuration dialog? [yes/no]: no

Press RETURN to get started!

Router>en
Router#config ter
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#int fa0/0
Router(config-if)#ip address 192.168.1.1 255.255.255.0
Router(config-if)#no shu
Router(config-if)#ex
Router(config)#ip dhcp pool voice
Router(dhcp-config)#network 192.168.1.0 255.255.255.0
Router(dhcp-config)#default-router 192.168.1.1
Router(dhcp-config)#option 150 ip 192.168.1.1
Router(dhcp-config)#ex
Router(config)#ip dhcp excluded-address 192.168.1.1
Router(config)#telephony-service
Router(config-telephony)#max-ephones 12
Router(config-telephony)#max-dn 12
Router(config-telephony)#ip source-address 192.168.1.1 port 2000
Router(config-telephony)#auto assign 1 to 12
Router(config-telephony)#ephone-dn 1
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 1.1, changed state to up
Router(config-ephone-dn)#number 1111
%IPPHONE-6-REGISTER: ephone-1 IP:192.168.1.2 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 2
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 2.1, changed state to up
Router(config-ephone-dn)#number 1112
%IPPHONE-6-REGISTER: ephone-2 IP:192.168.1.14 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 3
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 3.1, changed state to up
Router(config-ephone-dn)#number 1113
%IPPHONE-6-REGISTER: ephone-3 IP:192.168.1.3 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 4
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 4.1, changed state to up
Router(config-ephone-dn)#number 1114
%IPPHONE-6-REGISTER: ephone-4 IP:192.168.1.4 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 5
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 5.1, changed state to up
Router(config-ephone-dn)#number 1115
%IPPHONE-6-REGISTER: ephone-5 IP:192.168.1.6 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 6
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 6.1, changed state to up
Router(config-ephone-dn)#number 1116
%IPPHONE-6-REGISTER: ephone-6 IP:192.168.1.8 Socket:2 DeviceType:Phone has
registered.

Router(config-ephone-dn)#ephone-dn 7
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 7.1, changed state to up
Router(config-ephone-dn)#number 1117
Router(config-ephone-dn)#
%IPPHONE-6-REGISTER: ephone-7 IP:192.168.1.7 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 8
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 8.1, changed state to up
Router(config-ephone-dn)#number 1118
%IPPHONE-6-REGISTER: ephone-8 IP:192.168.1.12 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 9
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 9.1, changed state to up
Router(config-ephone-dn)#number 1119
%IPPHONE-6-REGISTER: ephone-9 IP:192.168.1.9 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 10
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 10.1, changed state to up
Router(config-ephone-dn)#number 11110
%IPPHONE-6-REGISTER: ephone-10 IP:192.168.1.10 Socket:2 DeviceType:Phone has registered.

Router(config-ephone-dn)#ephone-dn 11
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 11.1, changed state to up
Router(config-ephone-dn)#number 11111
%IPPHONE-6-REGISTER: ephone-11 IP:192.168.1.11 Socket:2 DeviceType:Phone has registered.


Router(config-ephone-dn)#ephone-dn 12
Router(config-ephone-dn)#%LINK-3-UPDOWN: Interface ephone_dsp DN 12.1, changed state to up
Router(config-ephone-dn)#number 11112
%IPPHONE-6-REGISTER: ephone-12 IP:192.168.1.12 Socket:2 DeviceType:Phone has registered.

5.  Konfigurasi pada switch seperti berikut :


Switch>en
Switch#config ter
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#int fa0/1
Switch(config-if-range)#switchport mode trunk
Switch(config-if-range)#ex
Switch(config)#int range fa0/2-24
Switch(config-if-range)#switchport voice vlan 1
Switch(config-if-range)#ex
Switch(config)#

6. Karena tadi untuk pembagian ip address sudah kita setting dhcp, maka kita masuk ke menu desktop pada pc à ip configurationà pilih DHCP.

 Selanjutnya pada laptop juga sama seperti pada pc, masuk menu desktop pada pc à ip configuration à pilih DHCP.


Setelah laptop dan pc sudah mendapatkan ip address secara dhcp, kita masuk ke tab menu config yang ada di home voip (voip adapter) àsettings à pada server address : masukkan ip address router yang terhubung ke jaringan.


Keterangan : ip phone mendapat ip address dan nomor secara otomatis, sedangkan analog phone mendapat nomor dari voip adapter.

7. Sekarang kita cek masing-masing perangkat sudah mendapat nomor atau belum.

a. PC 
à Desktop à IP Comunicator à lihat nomor dibagian kanan atas (pc sudah mendapat nomor)

b. Laptop à Desktop à IP Communicator à nomor pada laptop sudah terlihat .


c. IP Phone à GUI à sudah mendapat nomor.

 d. Analog Phone à GUI à analog phone juga sudah mendapat nomor.


8. Kita uji pada simulasi ini, apakah perangkat yang terhubung ke jaringan sudah bisa berkomununikasi .
a.Analog Phone à GUI à masukkan nomer yang dituju, misalnya disini yang akan saya tuju pada ip phone. Maka nomor yang saya masukkan adalah nomor pada laptop yaitu 1119.
To/kepada no tujuan
From/dari no siapa
                                  
b.Analog Phone à GUI à masukkan nomer yang dituju, misalnya disini yang akan saya tuju pada ip phone. Maka nomor yang saya masukkan adalah nomor pada laptop yaitu 1115.
To/kepada no tujuan
From/dari no siapa



Sekian dari saya, terima kasih.

sumber:
1.http://christiantatelu.blogspot.com/2012/03/cara-membuat-teks-berjalan-di-blog.html
2.http://carazain.blogspot.com/2016/02/cara-membuat-tulisan-mengikuti-kursor-di-blog-terbaru.html

Senin, 15 Oktober 2018

TUGAS RANGKUMAN MATERI PEMOGRAMAN DASARSEMESTER GENAP

TUGAS RANGKUMAN MATERI PEMOGRAMAN DASARSEMESTER GENAP

 DISUSUN OLEH:
ARSANI KURNIAWAN 


SMK NEGERI 1 KOTAAGUNG BARAT
 KABUPATEN TANGGAMUS
TAHUN AJARAN 2016/2017   



BAB 1 PENGENALAN BAHASA PEMROGRAMAN

 A. Pengenalan Bahasa Pemograman Bahasa komputer
      adalah merupakan suatu set pemrograman yang digunakan untuk membuat suatu program komputer. Bahasa komputer biasa dikenal dengan nama bahasa pemrograman. Program komputer atau software sendiri adalah suatu set instruksi yang harus dijalankan oleh komputer pada saat komputer dihidupkan atau ketika diperintahkan oleh pengguna komputer. Bahasa pemograman menggunakan kata-kata unik yang menjadi kode untuk menjalankan perintah tertentu pada komputer. Contoh bahasa pemrograman antara lain adalah:
Pascal, Fortran, Clipper, dBase, Delphi, Basic, Cobol, C++, C#, Java dan lain-lain.
Sebuah CPU komputer, dalam hal ini prosesor memiliki sejumlah perintah terbatas dan dikenal dengan nama kode mesin. Kode ini adalah bahasa yang digunakan untuk mengkomunikasikan data dalam komputer. CPU dalam komputer hanya mengenal bahasa ini, tidak dengan bahasa lainnya. Semua bahasa pemrograman harus diubah menjadi kode mesin terlebih dahulu supaya CPU dapat mengolah dan menjalankan perintah yang diberikan oleh program yang dibuat. Berbeda dengan C++ yang memperbolehkan tidak menggunakan class, di C#setiap anda membuat suatu program minimal anda harus mendeklarasikan minimal satu class, hal tersebut serupa dengan yang ada pada java, oleh karena itu C# merupakan murni object oriented programing (OOP).
Contoh Program yang menampilkan halo dunia ke konsol sebagai berikut : pada C++ : #include using namespace std; int main(){ coun << "halo dunia"<< endl; } pada C# : using system; class haloDunia;{ public static main (){ console.writeline("halo dunia"); } } pada java : public class halodunia{ /** * @param args */ public static void main (string [] args){ system .out.printin("halo dunia"); } } perhatikan pada contoh kode program di atas, terdapat perbedaan antara C#, C++ dan Java. tetapi penulisan atara C#, C++, dan Java bisa dikatakan sama, salah satunya pada setiap stetement harus d akhiri dengan karakter `;'(semicolon/titik koma), keyword – keyword yang ada di C# juga ada pada C++misal public, static, class, dan masi banyak lagi keyword-keyword C# yang terdapat pada C++. Lho kalo pinternya gimana?kalo d java kan tidak ada , kalo d C# ada tidak? variabel pointer di C#tetap ada tapi dengan penggunaan yang d batasi dan dalam skop unmanage. sebagai gantinya, d C# ada yangnamanya ref (reference). Fungsinya hampir sama (atau menggantikan) pointer.

* Jenis-jenis bahasa computer 
Bahasa komputer dapat dikelompokkan dalam tiga kelompok esar berdasarkan jenisnya, yakni bahasa mesin (machine language), assembly language dan high level language. Mari kita bahas satu persatu sebagai berikut:

1).Machine language
adalah seperangkat perintah yang dinyatakan dalam bentuk bilangan biner (hanya angka 0 dan 1) yang berfungsi untuk memberikan data dan instruksi bagaimana mengolah data kepada CPU.
2).Assembly Language
adalah bahasa komputer tingkat rendah yang memiliki banyak kode yang membantu memori untuk “mengingat data (informasi). Assembly language juga mengandung seperangkat simbolis yang berhubungan dengan perintah tertentu pada bahasa mesin. 
3).High level language
disebut sebagai bahasa komputer tingkat tinggi karena berisi perintah yang dirancang mendekati bahasa manusia. Bahasa ini lebih mudah dipahami dan dipelajari oleh manusia dan digunakan untuk pembuatan program komputer tertentu.

Macam bahasa pemrograman sudah kami sebutkan diatas. Pembuat program atau programmer dewasa ini banyak yang menggunakan bahasa komputer tingkat tinggi untuk membuat program-program yang diinginkan karena sangat mudah dipahami. Namun sebelum bisa dijalankan di komputer, program tersebut haruslah diterjemahkan menjadi bahasa mesin terlebih dahulu. Maka dari itu pada perangkat pembuatan program dengan bahasa tingkat tinggi ada bagian yang bernama compiler.
Tugas bagian ini adalah menerjemahkan perintah pada bahasa tingkat tinggi menjadi bahasa mesin, sehingga CPU dapat mengolah data berdasarkan perintah tersebut. Sejarah singkat bahasa computer Perkembangan bahasa komputer tentu tak lepas dari perkembangan komputer itu sendiri. Bahasa komputer mulai dikembangkan pada saat penemuan komputer digital pertama, sekitar tahun 1940-an.Bahasa komputer yang termasuk dalam assembly language dikembangkan pada tahun 1950-an karena komputer mulai merambah ranah komersial. Contoh bahasa yang termasuk dalam golongan Assembly ini adalah ForTran (Formula Translation) yang dibuat oleh John Backus pada sekitar 1950-an hingga 1960-an. Kemudian bahasa komputer dengan banyak penyempurnaan mulai dikembangkan seperti COBOL (Common Business Oriented Language) oleh Grace Hopper, LISP (List Proccesing) oleh John McCarthy. Pada akhir tahun 1960-an muncul sebuah bahasa komputer yang diberi nama SIMULA dan setelah itu perkembangan bahasa komputer semakin pesat. Pada tahun 1970-an muncul banyak bahasa pemrograman yang terkenal, yakni ALOGOL, BASIC, PASCAL, C . Perkembangan bahasa komputer semakin berkembang pesat seiring berkembangnya ilmu pengetahuan dan teknologi. Bahasa yang berkembang adalah BASIC, JAVA, C++ dan PASCAL. Pada awal 1990-an, diperkenalkan istilah IDE (Integrated Development Environment) yang menyatukan bahasa pemrograman dan GUI sehingga membuat program menjadi lebih mudah. Beberapa IDE yang terkenal adalah Visual Basic (bahasa BASIC), Borland Delphi (bahasa PASCAL) dan Eclipse (Bahasa Java). Macam-macam bahasa pemrograman Bagi anda yang bekerja dalam bidang web design pasti sudah tidak asing lagi dengan apa yang nama bahasa pemrograman.Bahasa pemrograman yang umum dikenal adalah php dan html.Tapi sebenarnya masih banyak bahasa pemrograman yang lain. Berikut ini ada beberapa macam bahasa pemrograman yang perlu anda ketahui.

 1. Bahasa Pemrograman HTMLHyperText Markup Language
adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web dan menampilkan berbagai informasi di dalam sebuah browser Internet. HTML saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C).HTML berupa kode-kode tag yang menginstruksikan browser untuk menghasilkan tampilan sesuai dengan yang diinginkan.Sebuah file yang merupakan file HTML dapat dibuka dengan menggunakan browser web seperti Mozilla Firefox atau Microsoft Internet Explorer.

2. Bahasa Pemrograman PHP
adalah bahasa pemrograman script yang paling banyak dipakai saat ini. PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama FI (Form Interpreted), yang wujudnya berupa sekumpulan script yang digunakan untuk mengolah data form dari web. PHP banyak dipakai untuk membuat situs web yang dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain. PHP biasanya berjalan pada sistem operasi linux (PHP juga bisa dijalankan dengan hosting windows).

3. Bahasa Pemrograman ASP
adalah singkatan dari Active Server Pages yang merupakan salah satu bahasa pemograman web untuk menciptakan halaman web yang dinamis. ASP merupakan salah satu produk teknologi yang disediakan oleh Microsoft. ASP bekerja pada web server dan merupakan server side scripting.

4. Bahasa Pemrograman XML Extensible Markup Language
adalah bahasa markup serbaguna yang direkomendasikan W3C untuk mendeskripsikan berbagai macam data. XML menggunakan markup tags seperti halnya HTML namun penggunaannya tidak terbatas pada tampilan halaman web saja.XML merupakan suatu metode dalam membuat penanda/markup pada sebuah dokumen.

5. Bahasa Pemrograman WML
adalah kepanjangan dari Wireless Markup Language, yaitu bahasa pemrograman yang digunakan dalam aplikasi berbasis XML (eXtensible Markup Langauge). WML ini adalah bahasa pemrograman yang digunakan dalam aplikasi wireless. WML merupakan analogi dari HTML yang berjalan pada protocol nirkabel.

6. Bahasa Pemrograman PERL
adalah bahasa pemrograman untuk mesin dengan sistem operasi Unix (SunOS, Linux, BSD, HP-UX), juga tersedia untuk sistem operasi seperti DOS, Windows, PowerPC, BeOS, VMS, EBCDIC, dan PocketPC.PERL merupakan bahasa pemograman yang mirip bahasa pemograman C.

7. Bahasa Pemrograman CFM
dibuat menggunakan tag ColdFusion dengan software Adobe ColdFusion / BlueDragon / Coldfusion Studio. Syntax coldfusion berbasis html.

8. Bahasa Pemrograman Javascript
adalah bahasa scripting yang handal yang berjalan pada sisi client. JavaScript merupakan sebuah bahasa scripting yang dikembangkan oleh Netscape. Untuk menjalankan script yang ditulis dengan JavaScript kita membutuhkan JavaScript-enabled browser yaitu browser yang mampu menjalankan JavaScript.

9. Bahasa Pemrograman CSS Cascading Style Sheets (CSS)
adalah suatu bahasa stylesheet yang digunakan untuk mengatur tampilan suatu dokumen yang ditulis dalam bahasa markup. Penggunaan yang paling umum dari CSS adalah untuk memformat halaman web yang ditulis dengan HTML dan XHTML.Walaupun demikian, bahasanya sendiri dapat dipergunakan untuk semua jenis dokumen XML termasuk SVG dan XUL.Spesifikasi CSS diatur oleh World Wide Web Consortium (W3C).

Bahasa Pemrograman- 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.

1) .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.

2) .Bahasa assembly
adalah bahasa pemrograman yang menggunakan bahasa rakitan. Bahasa assembly kebanyakan digunakan untuk pengendalian hardware yang diwujudkan dalam kependekan kata-kata sebagai pengganti kode-kode biner, misalnya JNZ (jump non zero) yang artinya lompatlah jika tidak sama dengan nol. Kelanjutan dari bahasa assembly adalah sebuah program yang berguna untuk mengambil informasi yang dituliskan oleh seorang programmer dalam bahasa assembly serta menerjemahkannya ke dalam sebuah program yang dapat dieksekusi oleh komputer, program ini dinamakan assembler. Output assembler harus diproses oleh linker untuk menghasilkan program akhir.

3) .Bahasa tingkat tinggi (high level languange)
Bahasa tingkat tinggi memiliki arti bahwa bahasa ini lebih mudah dimengerti oleh banyak orang karena memang dirancang untuk orang yang awam. Bahasa pemrograman yang termasuk dalam bahasa tingkat tinggi adalah sebagai berikut.
a) .BASIC (Beginners All-purposes Symbolic Instruction Code)
Bahasa program ini dikembangkan pada tahun 1965 di Darmouth College. Penciptanya adalah John Kemeny dan Thomas Kurtz. BASIC dipergunakan dalam aplikasi matematika. Selain itu, BASIC juga digunakan dalam beberapa aplikasi lainnya seperti akuntasi, permainan, file simulasi, dan lain-lain.Keunggulan BASIC terletak pada kemudahan dalam pemakaiannya, sedangkan kelemahannya adalah tidak mendukung operasi bilangan kompleks dan penanganan terhadap berkas sangat terbatas sehingga tidak cocok untuk aplikasi bisnis.
b). LOGO
Bahasa ini dikembangkan untuk pendidikan dan simulasi pengajaran pada anak-anak dalam menyelesaikan masalah dan melakukan pemrograman. Ditemukan pada tahun 1967 oleh Seymour Papert dengan menggunakan LISP, yaitu satu jenis bahasa pemrograman untuk kecerdasan buatan. Logo sangat mudah digunakan untuk membuat gambar, sehingga banyak digunakan dalam menghasilkan laporan-laporan bisnis dalam bentuk grafik.
c). COBOL (Common Business Oriented Language)
Program jenis ini sering digunakan dalam dunia bisnis dan komersial, mulai dikembangkan pada tahun 1959. Namun sampai saat ini, program ini masih banyak digunakan pada jenis komputer minicomputer dan mainframe. COBOL memiliki keunggulan-keunggulan sebagai berikut. 1 2 3 4 5 6 7 1 ) Memiliki kode untuk semua flatform yang sama, sehingga tidak tergantung pada mesin. 2 ) Menggunakan kata-kata bahasa Inggris, sehingga sangat mudah dipahami oleh programmer. 3 ) Penanganan masukan dan keluaran mudah dilakukan.
d). PASCAL
Bahasa ini ditemukan oleh Nicklaus Wirth tahun 1971. Bahasa ini dibuat untuk pengajaran pemrograman. Bahasa ini sangat populer di kalangan mahasiswa ilmu komputer dan teknik. Pascal memiliki keunggulan dibandingkan Fortran maupun Basic, yaitu sangat mudah dipelajari serta memiliki dukungan fungsi-fungsi matematika yang sangat lengkap. Namun Pascal juga memiliki kelemahan, yaitu tidak dapat mendukung operasi bilangan kompleks dan tidak mendukung sarana aplikasi bisnis. Keberadaan Pascal dapat pula dijadikan bahasa dasar dalam pembuatan kode perangkat lunak Delphi (software untuk pengembangan program di lingkungan Windows). Pascal juga digunakan sebagai landasan pembuatan kode pada Kylix, yaitu software pengembang program di lingkungan Linux.
e) .Fortran (Formula Translator)
Merupakan bahasa tingkat tinggi yang pertama kali diciptakan. Bahasa ini mulai dikembangkan pada tahun 1956 oleh John Backus di IBM. Fortran digunakan dalam bidang aplikasi matematika, yaitu dalam hal perumusan dan perhitungan sehingga menjadi andalan keunggulan dari bahasa ini. Namun Fortran memiliki kelemahan, yaitu operasi masukan dan keluarannya sangat kaku dan sulit dipahami. Untuk membuat bahasa fortran, seorang programmer tidak harus mengetahui bahasa mesin, tetapi harus memahami tata bahasa dan peraturan bahasa fortran.
f). Algol (Algoritma Language)
Merupakan bahasa automatic yang cocok untuk memecahkan permasalahan yang membutuhkan perhitungan numerik untuk beberapa pengolahan logic.
g) .PL/1 (Programming Language)
Merupakan bahasa komputer yang dapat digunakan dalam segala bahasa. Pada kenyataannya bahasa ini sulit dipelajari dan hanya dapat digunakan pada mesin IBM. h) RPG (Report Program Generation) adalah program untuk pengolahan laporan. Bahasa ini sangat populer di lingkungan minicomputer dan mainframe IBM. RPG diluncurkan pertama kali pada tahun 1964. i) APL (Aritmathic Programming Language) adalah bahasa komputer untuk memecahkan soal-soal matematika (ilmu hitung). Diperkenalkan dan diciptakan oleh Kenneth Iverson pada tahun 1962. Bahasa ini menggunakan keyboard khusus yang berisikan simbol-simbol yang kompleks yang memungkinkan untuk melakukan penyelesaian matematika yang kompleks.

4) Bahasa pemrograman generasi
Meliputi Microsoft Visual Basic, Visual J++, dan Visual C++ yang dikembangkan dari keluarga besar bahasa tingkat tinggi untuk memudahkan pemrograman. https://sangwidy.wordpress.com/web-design/oop-1/pengenalan-bahasa-pemograman/ B. Struktur Bahasa Pemrograman Pascal memiliki ciri khas yang berbeda dengan bahasa pemrograman yang lain. setiap bahasa pemrograman program komputer memiliki struktur yang berbeda. perbedaan tersebut meliputi kode kodenya, urutan penulisan kodenya, jenis simbol yang digunakan, ekspresi kode yang digunakan, serta penerjemahan kode.
Berikut ini adalah struktur umum dalam bahasa pascal. =========================================================================== program uses begin end. =========================================================================== struktur bahasa pascal adalah judul untuk menamai program. biasanya judul program ini harus sama dengan nama program (nama file program) struktur bahasa pascal berisi unit yang digunakan dalam program . untuk membatasi unit satu dengan yang lain menggunakan tanda koma. contoh penggunaanya adalah : ========================================================================== uses crt,dos; ========================================================================== struktur bahasa pascal berisi macam macam deklarasi yang berfungsi memberi tahukan kepada program bahwa ada ekspresi tertentu. Meliputi 1)deklarasi tipe data' 2)deklarasi konstanta 3)deklarasi prosedur 4)deklarasi fungsi 5)deklarasi label sebagai gambaran kepada anda tentang apa itu deklarasi dalam pascal , bayangkanlah ada pembagian sembako gratis. ada seseorang yang ingin menerimanya, sebut saja si A. ia tidak akan menerima sembako apa bila panitia pembagian sembako tidak tahu ada dirinya. maka dia harus mendeklarasikan diri dengan mendaftarkan dirinya ke panitia. contoh penggunaanya adalah: ========================================================================== {deklarasi tipe data} type larik = array[1...100] of integer; {deklarasi konstanta} const N =100; {deklarasi variable} var a:integer; b:string; c:real; =========================================================================== struktur bahasa pascal merupakan perintah perintah yang akan dituliskan. statemen-statemen ini harus berada di antara ekspresi begin dan end . begin dan end adalah kode yang wajib untuk ada dalam program komputer yang menggunakan bahasa pascal. karena dalam struktur bahasa pemrograman pascal di situlah inti dari pemrograman pascal. C. Standar input dan output dalam bahasa c++ 1. Perintah Output Perintah Output adalah perintah yang digunakan untuk mengeluarkan hasil proses komputer sehingga bisa dibaca oleh si pemakai (user). Adapun media yang digunakan untuk menampilkan hasil output tadi bisa berupa monitor atau dicetak ke kertas melalui printer. Salah satu fungsi untuk menampilkan output dalam Turbo C++ adalah : a.printf(). Fungsi printf() digunakan untuk mencetak data baik berupa teks, numerik, konstanta maupun variabel. Contoh penggunaan printf() bisa dilihat pada contoh program berikut : Bisa dilihat dari contoh diatas, bahwa perintah printf() bisa diikuti dengan tanda %s, %f, %d dan lain-lain. Tanda % tersebut disebut dengan penentu format (format specifier) Fungsi printf() digunakan untuk menampilkan semua jenis data (numeric dan karakter) Perintah lain untuk menampilkan output adalah dengan puts() dan putchar(). a. Fungsi puts() digunakan untuk menampilkan data string dan secara otomatis akan diakhir dengan perpindahan baris. b. Fungsi putchar() digunakan untuk menampilkan sebuah karakter.berikut adalah contoh penggunaan putchar() dan puts() 1. Fungsi cout Penggunaan cout stream dhubungkan dengan operator overloaded << (Sepasang tanda “less than”). Contoh : cout << “Nama Saya Afandi”; // Tampilkan Output Nama Saya Afandi cout << 1000; // Tampilkan angka 1000 pada layar cout << x; // Tampilkan variabel x on pada layar Operator << dikenal sebagai insertion operator, dimana berfungsi untuk menginput data yang mengikutinya. Jika berupa string, maka harus diapit dengan kutip ganda (“), sehingga membedakannya dari variable. Contoh cout << “Hello”; // Tampilkan Hello pada layar cout << Hello; // Tampilkan variabel Hello pada layar Operator insertion (<<) dapat digunakan lebih dari 1 kali dalam kalimat yang sama, Contoh : cout << “Hallo, ” << “nama ” << “Saya Afandi”; Contoh diatas akan menampilkan Hallo nama Saya Afandi sentence pada layar monitor. Manfaat dari pengulangan penggunaan operator insertion (<<) adalah untuk menampilkan kombinasi dari satu variabel dan konstanta atau lebih, contoh : cout << “Hello I am ” << age << ” years old and my zipcode is ” << zipcode; Misalkan variable age = 24 dan variable zipcode = 90064 maka output yang dihasilkan : Hello, I am 24 years old and my zipcode is 90064 Contoh : cout << “Baris pertama \n “; cout << “Baris kedua.\nBaris ketiga.”; Output : Baris pertama. Baris kedua. Baris ketiga. Selain dengan karakter new-line, dapat juga menggunakan manipulator endl, contoh : cout << “Baris pertama” << endl; cout << “Baris kedua” << endl; Output : Baris pertamaBaris kedua 2. Perintah Input Setiap bahasa pemrograman tidak akan bisa digunakan secara fleksibel jika tidak memiliki perintah input. Perintah input adalah sebuah perintah dalam bahasa program yang mampu meneruskan nilai dari operator untuk diproses oleh komputer. Perintah input memerlukan perangkat keras input, biasanya adalah keyboard. Dalam Turbo C++, terdapat tiga perintah input yaitu scanf(), getche(), getch() dan gets(). 1.Fungsi scanf() Bentuk umum dari fungsi scanf() adalah sebagai berikut : Penggunaan scanf() biasanya dikombinasikan dengan perintah printf(). Perintah printf() disini berfungsi sekedar menampilkan keterangan tentang apa yang harus diinputkan, sehingga operator bisa langsung mengerti harus memasukkan data apa. Untuk penentu format pada scanf(), dapat dilihat pada tabel berikut : Tabel 3.3 Tabel Penentu Format scanf() Selain itu, penggunaan scanf() juga harus menyertakan tanda ‘&’ pada awal nama variabel. Tanda ‘&’ disini befungsi sebagai operator alamat (address operator). Contoh penggunaan scanf() sebagai berikut : Jika terdapat beberapa proses input (memasukkan data) sekaligus, maka sebaiknya ditambahkan fungsi fflush(stdin); setelah fungsi scanf(). Fungsi fflush(stdin) berfungsi menghapus buffer di dalam alat I/O. Scanf() juga bisa digunakan untuk menginputkan beberapa data sekaligus dalam satu baris asalkan jumlah dan tipe penentu format sesuai dengan variabel yang akan diinputkan. Data yang akan dimasukkan dapat dipisahkan dengan spasi, tab atau tanda pemisah lain seperti koma (,), garis hubung(-), atau titik dua(:). Pemisah data dalam input yang digunakan harus sama dengan pemisah data dalam scanf(). B.Fungsi getche() Fungsi input getche() memiliki sifat yang sedikit berbeda dari scanf(). Perbedaan tersebut antara lain : 1. Bila dalam scanf() jumlah karakter data yang diinputkan boleh bebas, maka dalam getche() hanya sebuah karakter yang bisa diterima. 2. Bila scanf() membutuhkan tombol RETURN/ENTER untuk mengakhiri input, maka dalam getche() tidak membutuhkannya. Input dianggap selesai begitu kita memasukkan satu karakter dan secara otomatis akan melanjutkan ke baris perintah berikutnya. getche() merupakan singkatan dari get character and echo yang artinya ‘menerima sebuah karakter kemudian tampilkan’. Input yang diterima getche() akan disimpan ke dalam variabel karakter yang sebelumnya harus sudah dideklarasikan. C.Fungsi getch(). Satu-satunya perbedaan antara getche() dan getch() adalah getche()akan menampilkan karakter yang kita ketikkan, sedangkan getch() tidak akan menampilkan, melainkan hanya menyimpannya dalam memori saja, jadi apa yang kita ketikkan tidak akan muncul dilayar sebelum kita memberikan perintah untuk mencetak nilai tersebut. • Fungsi getch() dan getche() digunakan untuk membaca data karakter. • Karakter yang dimasukkan tidak perlu diakhiri dengan penekanan tombol enter. • Tidak memberikan efek pergantian baris secara otomatis • Jika menggunakan fungsi getch() karakter yang dimasukkan tidak akan ditampilkan pada layar sehingga sering digunakan untuk meminta inputan berupa password. Sedangkan pada getche() karakter yang dimasukkan akan ditampilkan pada layar • Fungsi gets() 1. Fungsi gets() digunakan untuk memasukkan data bertipe karakter dan tidak dapat digunakan untuk memasukkan data numerik. 2. Harus diakhiri dengan penekanan tombol enter 3. .Cursor secara otomatis akan pindah baris 4. Tidak memerlukan penentu format 1. Fungsi cin Menangani standard input pada C++ dengan menambahkan overloaded operator extraction (>>) pada cin stream. Harus diikuti bengan variable yang akan menyimpan data. Contoh : int umur; cin >> umur; Contoh diatas mendeklarasikan variabel age dengan tipe int dan menunggu input dari cin (keyborad) untuk disimpan di variabel umur. cin akan memproses input dari keyboard sekali saja dan tombol ENTER harus ditekan. Contoh : cin juga dapat digunakan untuk lebih dari satu input : cin >> a >> b; Equivalen dengan : cin >> a; cin >> b; Dalam hal ini data yang di input harus 2, satu untuk variabel a dan lainnya untuk variabel b yang penulisannya dipisahkan dengan : spasi, tabular atau newline. 1. Kompilasi program dan perbaikan kesalahan Kompilasi program adalah mengkompilasi dari file sumber menjadi file dengan extention class. Sebuah kompilator akan sering menemui program yang mengandung kesalahan, maka kompilator harus memiliki strategi apa yang harus dilakukan untuk menangani kesalahan - kesalahan tersebut. Prosedur penangan kesalahan terdiri dari : • Mendeteksi kesalahan • Melaporkan kesalahan • Tindak lanjut perbaikan Pelaporan kesalahan yang dilakukan oleh sebuah kompilator meliputi : • Kode kesalahan • Pesan kesalahan dalam bahasa natural • Nama dan atribut identifier • Tipe – tipe yang terkait bila type checking Contoh : Error 162 jumlah: unknown identifier Kode kesalahan = 162 Pesan kesalahan = unknown identifier Nama identifier = jumlah Bab 2 VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI A. VARIABEL, TIPE DATA DAN KONSTANTA a. VARIABEL adalah identifier yang berisi data yang dapat berubah-ubah nilainya di dalam program. Variabel dapat disebut juga sebagai perubah nilai, yaitu sesuatu yang dapat digunakan untuk menyimpan nilai, dimana nilai yang disimpan ini dapat selalu berubah-ubah. JENIS-JENIS VARIABEL : 1. Boolean disebut juga data bilangan lojik. Tipe data boolean hanya mengenal dua buah nilai yaitu benar (true) dan salah (false). 2. Integer merupakan nilai bilangan bulat dalam bentuk desimal misalnya 1, 2, 34, 765, 0, -89, -70. tipe data integrer mempunyai ranah nilai yang tidak terbatas. Dalam Turbo Pascal terdapat lima macam tipe data integrer, yaitu: byte, shorint, word, integer dan longint. 3. Real adalah data yang mengandung data desimal misalkan 3.65, 9.0876, 2.00, dan lain-lain. Bilangan real juga dapat dituliskan dengan notasi E, yang artinya perpangkatan sepuluh. Misalnya 230.40E32 artinya 230.40 x10³². 4. Karakter (char) ditulis dengan menggunakan tanda petik ( “ “ ) misalkan “A” ,”@”, “z”, “#”, “1”, “-234”, “+”, “<” dan lain-lain. Tapi perlu diperhatikan “9” adalah karakter tetapi jika di tulis 9 maka tipenya menjadi integer. Maka sarat mutlak menulisan karakter harus menggunakan tanda baca petik ( “ “ ). 5. String adalah untaian karakter-karakter dengan panjang tertentu yang terletak diantara tanda petik tunggal. nilai data string akan menepati memori sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Contoh dari data sring adalah seperti ‘teknik’, ‘informatika’, ‘9876151’ dan sebagainya. 6. Pointer adalah suatu variabel yang berisi alamat yang akan disimpan pada memori. 7. Ordinal adalah tipe data yang merupakan subset dari tipe data sederhana (tipe data standart dan tipe data yang di definisikan sendiri oleh pemakai). Yang dimaksud dengan tipe data sederhana adalah semua tipe data kecuali tipe data riel. Jadi yang termasuk tipe data ordinal adalah tipe data stendart (integer, shortint, longit, byte, word, boolean, dan chart), dan tipe data yang didefinisikan sendiri oleh pemakai. Pemberian nama variabel harus mengikuti aturan yang ditetapkan oleh bahasa pemrograman yang kita gunakan. Namun secara umum ada aturan yang berlaku untuk hampir semua bahasa pemrograman. Aturan-aturan tersebut yaitu: -Nama variabel harus diawali dengan huruf. -Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti dengan karakter underscore (_). -Nama variabel tidak boleh mengandung karakter-karakter khusus, seperti : .,+, -, *, /, <, >, &, (, ) dan lain-lain. Nama variabel tidak boleh menggunakan kata-kata kunci d bahasa pemrograman b. TIPE DATA biasanya digunakan untuk menentukan jenis nilai yang dapat ditampung oleh suatu variabel, umumnya telah menyediakan tipe-tipe data yang sederhana (simple) maupun yang terstruktur. Apabila kita membutuhkan tipe data yang belum tersedia, kita dapat mendefinisikan sendiri tipe data baru yang disebut enumerated type.Setiap data yang ada pada program pascal memiliki tipe data, baik berupa angka bulat (integer), angka biasa (real), atau berupa karakter (char),(String) dan sebagainya. Jenis - Jenis data yang di kenal dalam Bahasa Pascal yaitu : - Tipe Data Sederhana -Tipe Data Terstruktur Tipe Data Sederhana 1.Bilangan bulat ( integer ) Tipe data ini menerima angka dan bisa dilakukan proses aritmatika. Tipe data ini adalah tipe data bilangan bulat, yaitu Bilangan atau angka yang tidak memiliki titik desimal atau pecahan. Contoh : Program display_maxint;uses wincrt; begin writeln (maxint) end. Hasilnya: 32.767 2. Bilangan biasa ( real ) Bilangan atau angka yang bisa memiliki titik desimal atau pecahan, Tipe data ini menerima angka dan koma serta bisa dilakukan proses aritmatika. Contoh : a' 'B' '+', dsb. 3. Boolean adalah tipe data yang hanya mempunyai dua kemungkinan, yaitu true dan false. Biasanya digunakan untuk operasi logika dengan ungkapan AND, OR, atau NOT. Contoh : Program display_bool;uses wincrt; begin writeln(ord(true)); writeln(ord(false)); end. Hasilnya: 1 0 3.2. 4. Karakter ( char ) adalah data tunggal yang mewakili semua huruf, simbol baca, dan juga simbol angka yang tidak dapat dioprasikan secara matematis, misalnya: ’A’, ’B’, .....,’Z’, ’?’,’!’, dst. Tipe data ini adalah tipe data yang menerima kumpulan karakter (huruf, angka, symbol) tipe data ini tidak bisa dilakukan proses aritmatika. 5. String adalah tipe data bentukan yang merupakan deretan karakter yang membentuk satu kata atau satu kalimat, yang biasanya diapit oleh dua tanda kutip. Tipe data yang menerima kumpulan karakter (huruf, angka, symbol) tipe data ini tidak bisa dilakukan proses aritmatika Tipe Data Terstruktur 1. Array atau LARK adalah tipe terstruktur yang mempunyai komonen dalam jumlah yang tetap dan setiap komponen mempunyai tipe data yang sama. Posisi masing-masing komponen dalam array dinyatakan sebagi nomor index. Contoh: Type Tipe_saya=array[1..100] of integer Var Var_baru : tipe_saya; 2. Record Definisi Record hampir sama dengan Array, tetapi yang membedakan antara keduanya adalah kalau Array semua komponennya bertipe data yang sama sedangkan Record setiap komponennya bisa bertipe data yang beda-beda.Contoh: TYPE my_rec = RECORD Nama : STRING[90]; Npm : STRING[ 8] ; Nilai : REAL; END; VAR Data nya : my re c; 3. Set Himpunan (set) adalah kumpulan obyek yang mempunyai tipe data yang sama dan urutan penulisannya tidak diperhatikan. Setiap obyek dalam suatu himpunan disebut dengan anggota atau elemen himpunan.Contoh: TYPE irama = (JAZZ, POP, ROCK ,DANGDUT, SKA); Musik = SET OF irama; VAR Jenis musik : Musik; 4. File (Berkas) adalah kumpulan sejumlah komponen yang bertipe data sama, yang jumlahnya tidak tertentu, dan biasanya tersimpan dalam suatu media penyimpan luar. Tipe Data Penunjuk Pointer Tipe data pointer merupakan tipe data yang berbeda dengan yang lainnya. Semua tipe data yang lainnya bersifat STATIS sedangkan tipe Pointer bersifat DINAMIS. Tipe ini merupakan tipe data untuk suatu variabel, dimana isi variabel ini berupa alamat variabel lain, dalam artian variabel pointer adalah variabel yang menunjuk nilai atau alamat variabel lainnya. C. KONSTANTA Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadi konstanta adalah juga variabel bedanya adalah pada nilai yang disimpannya. Jika nilai datanya sepanjang program berjalan tidak berubahubah, maka sebuah varibel lebih baik diperlakukan sebagai konstanta. Pada sebuah kode program, biasanya nilai data dari konstanta diberikan langsung di bagian deklarasi konstanta. Sedangkan untuk variabel biasanya hanya ditentukan nama variabel dan tipe datanya tanpa isian nilai data. Aturan penamaan variabel juga berlaku untuk penamaan konstanta. Demikian juga aturan penetapan tipe data. konstanta dibagi menjadi4 : 1)Konstanta integer, berupa integer biasa, integer panjang (long int) dan integer tak bertanda (unsigned integer). Nilainya dapat berupa desimal, oktal atau hexadecimal 2)Konstanta floating point, dapat mengandung nilai pecahan, yang biasa ditulis dalam bentuk pecahan biasa maupun bentuk eksponensial dan selalu dinyatakan dalam double, kecuali jika diakhiri dengan F atau f (menyatakan konstanta float). 3)Konstanta string, merupakan deretan karakter yang diawali dan diakhiri dengan tanda petik ganda (“…“). Juga dapat mengandung karakter yang menggunakan tanda \ yang disebut karakter escape (escape sequence). 4)Konstanta karakter, selalu diawali dan diakhiri dengan tanda petik tunggal (‘…’). Beberapa konstanta karakter dapat diawali dengan tanda \ (penempatannya setelah tanda petik tunggal). Sebagai contoh, jika kita membuat program perhitungan matematik yang menggunakan nilai pi (3.14159) yang mungkin akan muncul dibanyak tempat pada kode program, kita dapat membuat pi sebagai konstanta. Penggunaan konstanta pi akan lebih memudahkan penulisan kode program dibanding harus mengetikkan nilai 3.14159 berulang-ulang. Konstanta digunakan apabila anda sering menggunakan suatu nilai konstanta secara berulang-ulang dalam kode anda, dan anda tidak ingin kerepotan untuk mengetikkan nilai konstanta itu terus menerus. Untuk membuat sebuah konstanta pada dasarnya sama sepertUntuk membuat sebuah konstanta pada dasarnya sama seperti Variabel. const NamaKonstanta: JenisKonstanta := NilaiKonstanta; B. OPERATOR DAN EKSPRESI a. OPERATOR OPERATOR DALAM BAHASA PASCAL. Operator adalah simbol-simbol khusus yang digunakan untuk mengoperasikan suatu nilai data . Tanda operasi (operator) di dalam bahasa Pascal dikelompokkan ke dalam beberapa kategori, yaitu Operator Boolean Operator yang menyatakan suatu kondisi tertentu. Macam dari operator boolean ini adalah: NO OPERATOR ARTI 1 Not Hasil ouput akan bernilai 1 apabila semua masukan bernilai 0 2 And Hasil output akan bernilai 1 apabila semua masukan bernilai 1 3 Or Hasil output akan bernilai 1 apabila masulan salah satunya bernilai1 Assignment operator Menggunakan simbol titik dua diikuti oleh tanda sama dengan (:=). Contoh : A:=B; Binary operator Untuk mengoperasikan dua buah operand. Operand dapat berbentuk konstanta ataupun variabel. Operator ini digunakan untuk operasi aritmatika yang berhubungan dengan nilai tipe data integer dan real. Operator Operasi Tipe Operand Tipe Hasil * perkalian real, realinteger, integerreal, integer realintegerreal Div pembagian bulat integer,integer integer / pembagian real real,realinteger,integerreal,integer Realrealreal Mod sisa pembagian integer,integer integer + pertambahan real,realinteger,integerreal,integer realintegerreal - pengurangan real,realinteger,integerreal,real realintegerreal Contoh : 15*5 hasilnya 75 20/3 hasilnya 6.6666666667E+00 div 3 hasilnya 6 20 mod 3 hasilnya 2 Unary operator Dapat berupa unary minus dan unary plus. Unary minus digunakan untuk menunjukkan nilai negatif, baik pada operang numerik real maupun integer. Unaru plus adalah operator untuk memberai tanda plus. Lihat pada table berikut : (operator pada unary operator) Operator Arti + (Plus) Positif - (Minus) Negatif Contoh : -5 +7 -2.5 +2.5 Relational operator Membandingkan hubungan antara dua buah operand dan akan didapatkan hasil tipe boolean, yaitu True atau False. Operator-operator yang terlibat adalah : = : sama dengan > : lebih besar < : lebih kecil <> : tidak sama dengan >= : lebih besar atau sama dengan <= : kurang atau sama dengan Logical operator Terdapat 4 buah logical operator yaitu : NOT, AND, OR dan XOR. Operator ini bekerja dengan nilai-nilai logika, yaitu True dan False. True:jika tipe integer bernilai tidak nol(0) False jika tipe integer bernilai nol(0) Address operator Operator ini berhubungan dengan alamat di memori, yaitu : @ : Addriess-of Operator adalah alamat dari suatu nilai variabel. ^ : Indirection Operator adalahnilai di alamt yang ditunjukkan. Operator ini akan digunakan pada pembahasan mengenai pointer. Set operator Digunakan untuk operasi himpunan Operator Operasi + Union - Perbedaan himpunan * Perkalian himpunan String operator Digunakan untuk operasi string. Hanya ada sebuah operator string saja, yaitu operator + yang digunakan untuk menggabungkan dua buah nilai string. Contoh : Nama1 := ‘Asa‘; Nama2 := ‘Anugrah’; Nama3 := Nama1 + Nama2; LAMBANG-LAMBANG: Perioritas Operator Keterangan I () Tanda kurung II ++ -- Increment, Decrement III * / % Kali, bagi dan sisa IV + - Tambah dan kurang V = += -= *= /= %= Operator pemberi nilai aritmatika VI ! Operator logika NOT VII < > <= >= Operator relasional VIII && || Operator logika DAN dan ATAU b. EKSPRESI adalah transformasi nilai menjadi keluaran yang dilakukan melalui suatu perhitungan (komputasi). Ekspresi terdiri atas operand dan operator, contoh ekspresi: “a + b”.Hasil Evaluasi dari sebuah Ekpresi adalah nilai yang sesuai dengan type operand yang dipakai. MACAM – MACAM EKPRESI Ø Ekspresi aritmatika Ekspresi yang baik operand-nya bertipe numerik dan hasilnya juga bertipe numerik. Ekspresi aritmatika memakai operator aritmatika.Pada ekspresi aritmetik terdapat 2 buah operator yaitu : Operator biner, yaitu ekspresi yang operatornya membutuhkan 2 buah operand. Contoh a+ b Operator Uner, yaitu “-” atau operator yang punya 1 operand contoh “-2” Contoh 2. (Penulisan ekspresi dengan notasi algoritma) T = 5/9 * (c + 32) Z = (2*x + y) / (5 * w) Y = 5((a+b) / (c*d) + m (p + q)) Ø Ekspresi Perbandingan/ Relasional adalah ekspresi dengan operator <, ≤, >, ≥, =, dan ≠, not, and, or dan xor dengan menghasilkan nilai bertipe boolean (true atau false). Biasanya ekspresi Relasional disebut ekspresi boolean. Ø Ekspresi Logika (Menggunakan Operator Boolean) Adalah sebuah perintah yang akan mengeksekusi suatu perintah apabila kondisi tertenti terpenuhi. Operator boolean digunakan untuk menghubungkan dua buah ekspresi logika. Pada kesempatan ini operator boolean yang akan dibahas adalah AND dan OR. Operator AND digunakan untuk menghubungkan dua buah ekspresi logika dan hasilnya TRUE jika kedua ekspresi tersebut bernilai TRUE. Logika I Operator Boolean Lgika II Hasil Akhir FALSE FALSE FALSE FALSE AND TRUE FALSE TRUE FALSE FALSE TRUE TRUE TRUE Operator OR dipergunakan untuk menghubungkan dua buah ekspresi logika dan hasilnya bernilai TRUE jika minimal salah satu ekspresi logika bernilai TRUE. Logika I Operator Boolean Lgika II Hasil Akhir FALSE FALSE FALSE FALSE OR TRUE TRUE TRUE FALSE TRUE TRUE TRUE TRUE Contoh01 1. Program PenerimaanPegawai; 2. Uses Crt; 3. Var Umur : Integer; 4. Ket : String; 5. Begin 6. ClrScr; 7. Write(‘Umur calon pegawai : ‘); Readln(Umur); 8. If (Umur >= 20) AND (Umur <= 30) THEN Ket:=’DITERIMA’ 9. ELSE Ket:=’DITOLAK’; 10. Writeln(‘Status pegawai : ‘,Ket); 11. End. BAB 3 STRUKTUR PERCABANGAN Struktur pemilihan atau sering disebut sebagai struktur pecabangan merupakan struktur yang digunakan untuk melakukan suatu aksi atas kondisi yang tepat A. percabangan 1 kondisi Percabangan 1 kondisi adalah Pemilihan statemen/pernyataan pada kondisi tertentu. Sintak percabangan 1 kondisi If (Kondisi) then Pernyataan Jika kondisi terpenuhi (benar) Maka pernyataan selanjutnya di eksekusi Contoh : SMK Negeri 1 Susut menyeleksi siswa baru dimana Siswa dengan nilai matematika lebih besar dari 80 mendapat jurusan TKJ Buatlah sintak percabangan 1 kondisi dan penerapan di program pascal Jawaban Sintak Percabangan If (nilai_matematika > 80) then writeln(‘Jurusan TKJ’) Programnya program contoh_jurusan; uses crt; var nilai_matematika : integer; Begin write(‘Masukan Nilai Matematika :’); readln(nilai_matematika); if (nilai_matematika > 80) then writeln(‘Jurusan TKJ’); end. Penulisan percabangan 1 kondisi if then pernyataan penjelasan : Jika bernilai benar maka pernyataan dikerjakan, sedangkan jika tidak, maka pernyataan tidak dikerjakan dan proses langsung keluar dari percabangan Flowchart : B. percabangan dengan2 kondisi Penulisannya: If then pernyataan1 else pernyataan2 penjelasan : Jika bernilai benar maka pernyataan1 dikerjakan. Sedangkan jika tidak ( bernilai salah), maka pernyataan yang dikerjakan adalah pernyataan2. Berbeda dengan percabangan satu kondisi, pada percabangan dua kondisi ada dua pernyataan untuk dua keadaan kondisi, yaitu untuk yang bernilai benar dan yang bernilai salah Flowchart : C. percabangan lebih dari 2 kondisi Penulisannya: If then Pernyataan1 else if then pernyataan2 ... else if then Pernyataan(n) else Pernyataan(n) Penjelasan : Mula-mula dicek nilai kebenarannya. Jika benar, maka dikerjakan pernyataan1. Jika salah, maka dicek nilai kebenaran . Jika benar, maka dikerjakan pernyataan2. Jika tidak algoritma akan mengecek ke kondisi berikutnya dengan cara yang sama dengan yang sebelumnya. Terakhir, jika semua kondisi bernilai salah, maka pernyataan yang dikerjakan adalah Pernyataan(n+1). Flowchart : D. Percabangan Bersarang Percabangan bersarang merupaka percabangan yang lebih dari 2 kondisi, terdapat if didalam if. langsung saja biar jelas kita saksikan cara membuat project dengan menggukana percabangan bersarang dengan contoh : contoh : sebuah perusahaan memiliki kebijakan tentang system penggajian terhadap karyawanya dengan ketentuan sebagai berikut • golongan 3A memiliki gaji pokok Rp. 1.000.000 ditambah tunjangan.  jika memiliki keluarga lebih dari 2 tunjangan { } + Rp. 1.000.000  jika memiliki keluarga kurang dari 2 , tunjangan = Rp. 1.000.000 • golongan 3B memiliki gaji pokok Rp. 2.000.00 ditambah tunjangan  jika memiliki keluarga lebih dari 2 , tunjangan = { } + Rp. 3.000.000  jika memiliki keluarga kurang dari 2 , tunjangan = Rp. 3.000.000  jika seorang karyawan dengan golongan ‘ 3A ’ memiliki 4 orang anggota keluarga , total gaji yang diterima adalah : • gaji = Rp. 1.000.000 • tunjangan = } + Rp. 100.000 = Rp. 600.000 • total gaji = Rp. 1.000.000 + 600.000 = Rp. 1.600.000  program hitung - gaji { program = berisi judul algoritma, singkat dan jelas } { dalam bentuk pseudocode } { Pseudocode adalah kode / tanda / notasi yang menyerupai atau merupakan penjelasan cara menyelesaikan suatu masalah } 1). deklarasi { deklarasi = sebagai tempat untuk mengenalkan nama atau variabel apa saja yang digunakan dan tipe datanya serta prosedur dan fungsi yang dipakai } gol : string { string = kumpulan karakter } gaji , tunj , keluarga : integer { integer = bilangan bulat } 2).algoritma { algoritma = urutan langkah – langkah logis yang berhingga yang digunakan untuk memecahkan masalah } read ( gol ) { input jenis golingan } read ( keluarga ) { input jumlah keluarga } if gol = ‘ 3A ’ then gaji ß 1.000.00 if keluarga > 2 then tunj ß ( gaji div 2 ) + 100.000 else tunj ß 100.000 end if else if gol = ‘ 3B ’ then gaji ß 2.000.000 if keluarga > 2 then tunj ß ( gaji div 2 ) + 300.000 else tunj ß 3.000.000 end if else write ( ‘ golongan yang terdaftar ’ ) end if gaji ß + tunj write ( gaji ) jadi karyawan golongan 3A dengan jumlah anggota keluarga sebanyak 4 orang sebesar Rp. 1.600.000 BAB 4 STRUKTUR PERULANGAN Contoh Algoritma Pengulangan Kondisi di awal, Kondisi di akhir, pernyataan Continue dan break - Di artikel sebelumnya saya sudah menjelaskan tentang algoritma untuk pengulangan atau disebut looping, algoritma ini sangat bermanfaat sekali untuk mempersingkat penulisan kode program, sehingga kode program lebih sedikit dan bisa menghemat tenaga, kita ketahui semakin sedikit kode program dan semakin cepat prosesnya maka algoritma yang digunakan berarti sangat berkualitas. 1).Pengulangan dengan Kondisi di awal 2).Pengulangan dengan kondisi di akhir 3).Pengulangan dengan kondisi diinputkan user 4)Pengulangan menggunakan pernyataan break Untuk memahami pengulangan saya akan ilustrasikan dengan kasus sebagai berikut: Misal anda diminta untuk membuat algoritma untuk mencetak tulisan "belajar pengulangan atau looping" sebanyak 5 baris, maka anda pun pasti bisa membuatnya secara mudah, algoritma yang anda buat bisa saja kurang lebih akan seperti ini: program cetak deklarasi algoritma: writeln('belajar pengulangan atau looping') writeln('belajar pengulangan atau looping') writeln('belajar pengulangan atau looping') writeln('belajar pengulangan atau looping') writeln('belajar pengulangan atau looping') Anda mungkin akan membuatnya seprti kode di atas dengan menggunakan perintah cetak yaitu writeln ('belajar pengulangan atau looping') yang di ulang-ulang sebanyak 5 baris. Jika hanya 5 tentu bukanlah sebuah masalah, si pemula sekalipun akan sangat mudah sekali untuk membuatnya, namun apa jadinya jika yang diminta menampilkan tulisan sebanyak 1.000 baris, kita tidak mungkin menulis algoritma seperti cara di atas dengan menggunakan perintah writeln('.....'), yang jumlahnya kita buat 1.000 baris, tentu kurang efektif dan akan menguras energi dan tenaga si programmer. Maka untuk mengatasi hal-hal semacam itu pengulangan harus dilibatkan untuk memecahkan masalah di atas, ya mungkin penulisannya hanya beberapa baris saja namun hasilnya akan sama, jika menggunakan pengulangan maka untuk kasus di atas algoritmanya kurang lebih akan seperti di bawah ini: algoritma cetak_banyak deklarasi i:integer algoritma: i ← 1 for i<=1000 do writeln('contoh algoritma pengulanan atau looping') i ← i+1 endfor Kode algoritma di atas akan mencetak tulisan 'contoh algoritma pengulanan atau looping' sebanyak 1.000 baris, tanpa harus menuliskannya perbaris satu persatu, bagaimana cukup praktis bukan?, itulah fungsi dari pengulangan, Jenis algoritma Pengulangan beserta Contohnya Berikut saya uraikan jenis-jenis algoritma pengulanan disertai contohnya: #1. Pengulangan dengan Kondisi di awal Pengulangan dengan kondisi di awal adalah bentuk pengulangan yang melibatkan kondisinya di awal perintah. jenis pengulangan yang menggunakan kondisi di awal adalah pengulangan While Do dan pengulangan For Do, sebagai berikut: a. Pengulangan While Do Format Penulisan: While kondisi do pernyataan inrement /decrement endwhile Contoh Kasus: Buat algoritma untuk mencetak tulisan "Contoh pengulangan dengan kondisi di awal" sebanyak 100 buah. Jawab: algoritma looping_awal deklarasi i : integer algoritma: i ← 1 while i <= 100 do writeln('Contoh pengulangan dengan kondisi di awal') i ← i + 1 endwhile b. Pengulangan For do Format Penulisan: For kondisi do pernyataan increment/decrement endfor Contoh soal: Buat algoritma untuk mencetak tulisan "Contoh pengulangan dengan For do" sebanyak 100 buah. Jawab: algoritma looping_awal deklarasi i : integer algoritma: i ← 1 while i <= 100 do writeln('Contoh pengulangan dengan kondisi di awal') i ← i + 1 endwhile #2 - Pengulangan dengan kondisi di akhir Pengulangan dengan kondisi di akhir adalah bentuk pengulangan dimana kondisi untuk pengulangan di letakan di akhir perintah, satu-satunya pengulangan dengan kondisi di akhir adalah sebagai berikut: Pengulangan Repeat Until Format: Repeat Pernyataan increment/decrement until kondisi Contoh kasus: Buatlah algoritma untuk mencetak tulisan "Pengulangan kondisi akhir" sebanyak 70 baris Jawab: algoritma kondisi_akhir deklarasi i : integer algoritma: i ← 1 repeat writeln ('Pengulangan kondisi akhir') i ← i+1 until i=70 #3 -Pengulangan dengan kondisi diinputkan oleh User Pengulangan dengan kondisi yang diinputkan user adalah pengulangan dengan jumlah dinamis yang akan sangat tergantung sekali dengan input dari user atau pengguna. Contoh kasus: Buatlah algoritma pengulangan untuk mencetak tulisan "contoh pengulangan dengan input user" dimana jumlahnya sesuai dengan yang diinput oleh pengguna Jawab: program input_user deklarasi i : integer x : integer algoritma: read(x) i ← 1 while i <= x do writeln ('ini adalah pengulangan ke', i) i ← i+1 endwhile perintah read(x) adalah perintah untuk menampung input pengguna dalam bentuk angka bilangan bulat yang akan ditampung oleh variable x. pengulangan akan diulang sebanyak jumlah x yang diinput oleh pengguna dengan kondisi i <= x. Demikian tentang algoritma pengulangan terutama mengenai contoh dan penjelasan tentang algoritma Perulangan Kondisi di akhir, Kondisi di awal, pernyataan Continue dan break, dengan memahaminya maka anda sudah bisa menggunakannya pada implementasi bahasa pemrograman apapu. semoga bermanfaa. #4- Pengulangan dengan pernyataan Break dan continue Pengulangan dengan pernyataan break adalah bentuk pengulangan dimana di dalam proses pengulangan ada perintah break, sehingga pengulangan akan langsung selesai dan keluar dari proses pengulangan meskipun kondisi belum terpenuhi. Contoh : program contoh_break deklarasi i : integer algoritma: i ← 1 while i <= 10 do writeln ('ini pernyataan pertama') break endwhile Pengulangan di atas jika tidak ada perintah break, maka akan mencetak tulisan "ini pernyataan pertama" sebanyak 10 baris, karena ada break maka output hanya akan mencetak tulisan "ini pernyataan pertama" sebanyak satu kali, karena ketika perintah break terbaca oleh program itu artinya meminta program untuk langsung menghentikan pengulangan dan keluar dari pengulangan walaupun kondisi belum terpenuhi. Pernyataan perintah continue yang kita libatkan di dalam perintah pengulangan akan berdampak pengulangan akan dilanjutkan tanpa mengeksekusi perintah-perintah lainnya yang letaknya setelah perintah continue. Contoh: program contoh_continue deklarasi i : integer algoritma: i ← 1 while i <= 2 do writeln ('ini pernyataan pertama') continue writeln('ini pernyataan kedua') endwhile Perintah di atas jika tidak melibatkan perintah contine, maka akan menghasilkan output: ini pernyataan pertamainipernyataan keduaini pernyataan pertamainipernyataan kedua Karena ada perintah continue setelah perintah writeln('ini pernyataan pertama'), maka perintah setelahnya yaitu writeln('ini pernyataan kedua') tidak akan pernah dieksekusi, jadi ketika perintah continue dibaca oleh program, maka program akan langsung melanjutkan pengulangan berikutnya tanpa mengeksekusi perintah yang letaknya setelah continue. Jadi perintah di atas karena ada contine outputnya adalah ini pernyataan pertamaini pernyataan pertama Bab 5 Pengembangan algoritma aplikasi 1.Pengembangan Aplikasi dan analisis pemecahan masalah Pengembangan aplikasi, atau bisa juga disebut sebagai pengembangan software atau desain software, kerap kali disalahartikan sebagai kegiatan dimana seorang programmer melakukan coding, sebuah proses penulisan kode tetapi sebenarnya yang dimaksud dengan pengembangan aplikasi merupakan serangkaian proses yang dilakukan dari saat pembuatan konsep aplikasi hingga aplikasi tersebut selesai dan siap digunakan[11]. Dalam proses pengembangan aplikasi terdapat berbagai proses yang perlu dilakukan sebagai syarat untuk membuat sebuah aplikasi yang telah terancang dengan baik, dan dikerjakan secara berstruktur. Proses pengembangan aplikasi berdasarkan terdiri dari 5 tahap utama, walaupun di dalam setiap tahap tersebut terdapat berbagai fase lainnya yang dapat dijalankan sesuai kebutuhan pengembangan. Tahap tersebut antara lain : pengumpulan informasi, perencanaan, pengembangan, penggunaan, dan perawatan[9]. Tahap-tahap tersebut perlu dilakukan, guna mendapatkan sebuah software yang layak guna dan bertahan lama. Dalam urutan pelaksanaannya, terdapat berbagai macam model yang biasa digunakan oleh para pengembang aplikasi, seperti waterfall, spiral, dan agile development. Dalam menjalankan tugas sehari-hari, apa pun bidang tugasnya, ketika menghadapi masalah, terdapat empat pertanyaan pokok yang selalu muncul: 1. Masalah apa yang sedang dihadapi? 2. Mengapa masalah itu terjadi? 3. Tindakan apa yang harus diambil? 4. Bagaimana memastikan rencana terlaksana? Proses berpikir mengikuti pola, input – process – output. Masukan (input) adalah informasi. Informasi yang masuk diolah untuk menghasilkan keluaran (output). Diagram di atas menunjukkan bahwa mutu keputusan seharusnya dapat ditingkatkan bila aspek masukan dan prosesnya diperbaiki. Proses berpikir yang bermutu adalah proses berpikir yang sistematis dan rasional. Untuk itu diperlukan alat dan metode analisis masalah yang sesuai dengan masalah yang dihadapi. Buku ini akan membahas empat metode analisis masalah yaitu: Analisis Situasi, Analisis Persoalan, Analisis Keputusan, dan Analisis Persoalan Potensial. Jika ingin mengetahui masalah yang sedang dihadapi, metode yang digunakan adalah Analisis Situasi. Jika ingin mencari sebab, Analisis Persoalan yang dipakai, jika ingin mengambil keputusan, gunakan Analisis Keputusan, dan terakhir jika ingin mengamankan pelaksanaan rencana, pakailah Analisis Persoalan Potensial. ANALISIS SITUASI Dalam bahasa Minaut Indonesia, semua hal atau kejadian yang mendorong sesorang untuk melakukan tindakan didefinisikan sebagai masalah. Mengidentifikasi Masalah dapat dilakukan dengan: • Observasi lapangan • Analisis dokumen o Membandingkan rencana dengan realisasi o Analisis SWOT • Mencari informasi melalui orang lain: o Rapat o Wawancara Hasil: Daftar masalah Memilah Masalah Menguraikan masalah kompleks menjadi masalah tunggal • Masalah yang tidak berhubungan o Pisahkan secara horizontal • Masalah yang mempunyai hubungan sebab-akibat o Pisahkan secara vertical (stair stepping) Hasil: Masalah-masalah tunggal Memprioritaskan Masalah Jika ada lebih dari satu masalah yang siap ditangani, perlu menentukan masalah prioritas. Melokasi Masalah Mengidentifikasi jenis masalahnya, apakah masalah penyimpangan, memilih tindakan, atau mengamankan rencana. ANALISIS PERSOALAN Masalah yang di dalamnya terdapat penyimpangan dan belum diketahui sebabnya disebut persoalan. Hubungan Sebab-Akibat • Penyimpangan muncul karena ada PERUBAHAN • Penyimpangan adalah bentuk dari AKIBAT • PERUBAHAN adalah tempatnya SEBAB Sebab Persoalan SEBAB adalah PERUBAHAN relevan yang terkait dengan PERBEDAAN (kekhasan) FAKTA terhadap BUKAN FAKTA ANALISIS KEPUTUSAN Terdapat tiga alternatif tindakan terhadap persoalan, yaitu tindakan sementara/darurat, koreksi, dan penyesuaian/adaptasi. ANALISIS PERSOALAN POTENSIAL Analisis Persoalan Potensial, menganalisis persoalan-persoalan potensial yang mungkin muncul pada saat pelaksanaan keputusan. Persoalan potensial terjadi karena sebab yang lain atau sebab yang belum diantisipasi, sehingga perlu dipersiapkan tindakan pencegahan dan tindakan penanggulangan. APA YANG KHAS DARI PENDEKATAN MINAUT? • Kata “masalah” sangat subyektif sifatnya. • Dalam Analisis Situasi, orang yang menerapkan konsep Minaut dalam kehidupan sehari-hari akan lebih mudah melihat kemungkinan timbulnya masalah sejak dini dan dalam memilih konsep yang tepat pada saat menghadapi masalah. • Proses berpikir Analisis Keputusan sudah mengantisipasi kemungkinan kesalahan berpikir yang biasa terjadi. Dengan demikian, dalam mengambil keputusan, bukan hanya mempertimbangkan aspek positifnya, tetapi juga mempertimbangkan aspek negatifnya. 2.eror handling Error Handling adalah salah satu penanganan kesalahan (error) pada berbagai macam keadaan dalam pemrograman. Dengan adanya error handling ini maka setiap ada kesalahan , maka eksekusi program tidak akan dihentikan secara tiba-tiba, tetapi akan diteruskan ke baris program yang terdapat script penanganan kesalahan. Dengan adanya Error Handling ini maka program akan semakin user friendly bagi penggunanya, dan akan mengatasi kesulitan bagi para programmer apabila ingin mendefinisikan suatu kejadian yang tidak diinginkan dieksekusi. 3.debugging "Debug" dialihkan ke sini. Untuk kegunaan lain, lihat Debug (disambiguasi) . yang mencegah pengoperasian perangkat lunak komputer atau sistem yang benar . Sejumlah buku telah ditulis tentang debugging (lihat di bawah ini: Bacaan lebih lanjut ), karena melibatkan banyak aspek, termasuk debugging interaktif, aliran kontrol , pengujian integrasi , file log , pemantauan ( aplikasi , sistem ), dump memori , profil , Statistical Process Control , Dan taktik desain khusus untuk memperbaiki deteksi sambil menyederhanakan perubahan. Pengertian Dalam rekayasa perangkat lunak, metodologi pengembangan perangkat lunak atau metodologi pengembangan sistem adalah suatu kerangka kerja yang digunakan untuk menstrukturkan, merencanakan, dan mengendalikan proses pengembangan suatu sistem informasi. Banyak ragam kerangka kerja yang telah dikembangkan selama ini, yang masing-masing memiliki kekuatan dan kelemahan sendiri-sendiri. Model dalam Metode Pengembangan Perangkat Lunak Ada beberapa model dalam metode pengembangan perangkat lunak, yaitu: 1. Model Prototype Contoh Model Prototype Pendekatan prototyping model digunakan jika pemakai hanya mendefinisikan objektif umum dari perangkat lunak tanpa merinci kebutuhan input, pemrosesan dan outputnya, sementara pengembang tidak begitu yakin akan efisiensi algoritma, adaptasi sistem operasi, atau bentuk interaksi manusia-mesin yang harus diambil. Kelebihan model prototype: 1. Menghemat waktu pengembangan 2. Adanya komunikasi yang baik antara pengembang dan pelanggan 3. Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan 4. Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya 5. User dapat berpartisipasi aktif dalam pengembangan sistem Kekurangan model prototype: 1. Biaya untuk membuat prototyping cukup tinggi 2. Biasanya kurang fleksible dalam mengahadapi perubahan 3. Proses analisis dan perancangan terlalu singkat Contoh studi kasus: Seorang pelanggan mendefinisikan serangkaian sasaran umum bagi perangkat lunak, tetapi tidak melakukan mengidentifikasi kebutuhan output, pemrosesan, atupun input detail. Pada kasus yang lain, pengembang mungkin tidak memiliki kepastian terhadap efisiensi algoritme, kemampuan penyesuaian dari sebuah sistem operasi,atau bentuk-bentuk yang harus dilakukan oleh interaksi manusia dengan mesin. Dalam hal ini, serta pada banyak situasi yang lain, prototyping paradigma mungkin menawarkan pendekatan yang terbaik. Prototyping paradigma dimulai dengan pengumpulan kebutuhan. Pengembang dan pelanggan bertemu dan mendefinisikan obyektif keseluruhan dari software, mengidentifikasi segala kebutuhan yang diketahui, dan area garis besar diman definisi lebih jauh merupakan keharusan kemudian dilakukan “perancangan kilat”. Perancangan kilat berfokus pada penyajian dari aspek-aspek software tersebut yang akan nampak bagi pelanggan atau pemakai (contohnya pendekatan input dan format output). Perancangan kilat membawa kepada konstruksi sebuah prototipe. Prototipe tersebut dievaluasi oleh pelanggan/pemakai dan dipakai untuk menyaring kebutuhan pengembangan software. Iterasi terjadi pada saat prototipe disetel untuk memenuhi kebutuhan pelanggan, dan pada saat yang sama memungkinkan pengembang untuk secara lebih baik memahami apa yang harus dilakukannya. 2. Model Waterfall Waterfall model adalah model yang melakukan pendekatan pada perkembangan perangkat lunak secara seistematik dan sekuensial. Yang artinya kegiatan pada model ini dilakukan secara terurut berdasarkan panduan proses mulai dari komunikasi kepada client atau pelanggan sampai dengan aktifitas sampai pengorderan setelah masalah dipahami secara lengkap dan berjalan stabil sampai selesai. Contoh model waterfall Kelebihan model waterfall: 1. Mudah diaplikasikan. 2. Memberikan template tentang metode analisis, desain, pengkodean, pengujian, dan pemeliharaan. 3. Cocok digunakan untuk produk software yang sudah jelas kebutuhannya di awal, sehingga minim kesalahannya. Kekurangan model waterfall: 1. Waterfall model bersifat kaku sehingga sulit untuk melakukan perubahan pada sistem perangkat lunak. 2. Terjadinya pembagian proyek menjadi tahap-tahap yang tidak fleksibel, karena komitmen harus dilakukan pada tahap awal proses. 3. Customer harus sabar untuk menanti produk selesai, karena dikerjakan tahap per tahap,menyelesaikan tahap awal baru bisa ke tahap selanjutnya. 4. Perubahan ditengah-tengah pengerjaan produk akan membuat bingung team work yang sedang membuat produk. 5. Adanya waktu menganggur bagi pengembang, karena harus menunggu anggota tim proyek lainnya menuntaskan pekerjaannya. Contoh studi kasus: Sulitnya petugas bagian administrasi dalam mengolah data perpustakaan yang mengakomodasi peminjaman, buku, pengembalian dan membuat laporan yang membutuhkan banyak waktu. Adapun tujuan dari model sistem ini adalah memodelkan sebuah sistem informasi Perpustakaan yang berbasis komputer dengan menggunakan metode waterfall dan sistem informasi perpustakaan ini, untuk membantu petugas dalam menghadapi kendala yang dihadapi dalam melakukan transaksi, sehingga dengan adanya sistem informasi tersebut diharapkan dapat menyelesaikan permasalahan yang berhubungan dengan Perpustakaan. 3. Model Spiral Contoh Model Spiral Spiral model adalah model proses yang pendekatannya bersifat realistis pada software besar karena proses dari awal sampai proses pengiriman dan perbaikan dapat dipahami dnegan baik oleh clieent dan developer. Model ini mempunyai rangkaian kerja yang iterasi (peningkatan pada model) awal yang berbentuk prototype dan kemudian iterasi selanjutnya akan menjadi perkembangan dari model sebelumnya. Model ini dapat terus digunakan meskipun software sudah dikirimkan karena proses (siklus)dapat berputar lagi jika ada perubahan pada software sampai tidak ada permintaan perupbahan pada software oleh client. Kelebihan model spiral: 1. Setiap tahap pengerjaan dibuat prototyping sehingga kekurangan dan apa yang diharapkan oleh client dapat diperjelas dan juga dapat menjadi acuan untuk client dalam mencari kekurangan kebutuhan. 2. Lebih cocok untuk pengembangan sistem dan perangkat lunak skala besar. 3. Dapat disesuaikan agar perangkat lunak bisa dipakai selama hidup perangkat lunak komputer. 4. Pengembang dan pemakai dapat lebih mudah memahami dan bereaksi terhadap resiko setiap tingkat evolusi karena perangkat lunak terus bekerja selama proses. 5. Menggunakan prototipe sebagai mekanisme pengurangan resiko dan pada setiap keadaan di dalam evolusi produk. 6. Tetap mengikuti langkah-langkah dalam siklus kehidupan klasik dan memasukkannya ke dalam kerangka kerja iteratif. 7. Membutuhkan pertimbangan langsung terhadp resiko teknis sehingga mengurangi resiko sebelum menjadi permaslahan yang serius. Kekurangan model spiral: 1. Banyak konsumen (Client) tidak percaya bahwa pendekatan secara evolusioner dapat dikontrol oleh kedua pihak. Model spiral mempunyai resiko yang harus dipertimbangkan ulang oleh konsumen dan developer. 2. Memerlukan tenaga ahli untuk memperkirakan resiko, dan harus mengandalkannya supaya sukses. 3. Belum terbukti apakah metode ini cukup efisien karena usianya yang relatif baru. 4. Memerlukan penaksiran resiko yang masuk akal dan akan menjadi masalah yang serius jika resiko mayor tidak ditemukan dan diatur. 5. Butuh waktu lama untuk menerapkan paradigma ini menuju kepastian yang absolute. Contoh studi kasus: Tuan X adalah General Manager A Company, sebuah perusahaan perkapalan yang berbasis di Singapura. Sebagai. perusahaan UKM muda yang terus berkembang, Tuan X menginvestasikan sebagian modal perusahaan untuk promosi di media cetak dan elektronik, serta melatih kemampuan karyawan melalui berbagai kursus. Untuk mendukung kerja karyawan, A Company menggunakan komputer dasar (Basic PC) yang dilengkapi dengan office software. Seperti kebanyakan UKM lainnya, A Company juga memiliki akses internet yang hanya dapat digunakan secara terbatas di beberapa PC. A Company memiliki satu buah email resmi yang masih menggunakan domain dari, ISP (Internet Service Provider). Untuk komunikasi dilingkungan karyawan, mereka menggunakan fasilitas email gratis yang banyak tersedia di internet. Email gratis ini kadang juga digunakan untuk berkomunikasi dengan supplier dan pelanggan. Sebagai perusahaan UKM yang terus berkembang cepat, Tuan X mulai berfikir untuk mengembangkan A Company lebih professional. Harapan Tuan X, calon pelanggan, potensial, pelanggan, supplier dan karyawan lebih mengenal A Company. Disisi lain, ia juga berharap agar cara yang digunakan lebih efisien, hemat biaya, tetapi menampilkan sosok perusahaan yang meyakinkan atau bonafit. Tuan X meyakini, bahwa berkomunikasi menggunakan alamat email atau domain sendiri; promosi melalui website sendiri; data yang terintegrasi dan dapat diakses disemua komputer perusahaan akan dapat membawa perusahaan menjadi lebih profesional. A Company tidak memiliki departemen khusus untuk menangani TI. Untuk mewujudkan keinginannya, Tuan X meminta bantuan perusahaan khusus TI. Implementasi TI dikerjakan oleh perusahaan TI (sebagai pemenang tender) dalam jangka waktu kontrak 1 tahun, Dalam proses implementasi, Tuan X menyerahkan tugas dan tanggungjawab kepada bawahannya. Semua karyawan dilibatkan dalam pertemuan dan diskusi dengan perusahaan pembangun TI. Dari waktu kontrak 1 tahun yang disepakati, TI yang bisa diimplementasikan adalah pembangunan jaringan komputer, akses internet, email, dan pembangunan data. 4. Model Increment Dalam model Incremental ini proses pengerjaan perangkat lunak akan dilakukan perbagian sehingga bagian selanjutnya akan dikerjakan setelah bagian awal telah selesai dan selanjutnya sampai menghasilkan perangkat lunak yang lengkap dengan semua fungsi yang diperlukan dan pengerjaan perangkat lunak berakhir. Sebelum pengerjaan perangkat lunak akan dilakukan perancangan arsitektur software sebagai kerangka dalam pengerjaan perbagian. Contoh model increment Kelebihan model increment: 1. Resiko yang rendah pada pengembangan sistem. 2. Mengutamakan fungsi-fungsi pada sistem perangkat lunak sehingga kemudahan pemakaian sistem yang paling di utamakan. 3. Tahap awal adalan dasar dari pembuatan tahap berikutnya (dikerjakan secara terurut). 4. Cocok digunakan bila pembuat software tidak banyak/kekurangan pembuat 5. Mampu mengakomodasi perubahan kebutuhan customer. 6. Mengurangi trauma karena perubahan sistem. Klien dibiasakan perlahan-lahan menggunakan produknya bagian per bagian. 7. Memaksimalkan pengembalian modal investasi konsumen. Kekurangan model increment: 1. Hanya akan berhasil jika tidak ada staffing untuk penerapan secara menyeluruh. 2. Penambahan staf dilakukan jika hasil incremental akan dikembangkan lebih lanjut. 3. Hanya cocok untuk proyek dengan skala kecil. 4. kemungkinan tiap bagian tidak dapat diintegrasikan. Contoh studi kasus: Puskesmas sebagai salah satu bentuk pelayanan kesehatan yang dituntut untuk memberikan pelayanan kesehatan dengan baik. Diantaranya adalah rekam medis pasien di Puskesmas Mranggen I masih menggunakan sistem manual, sehingga menyebabkan beberapa kendala diantaranya pengolahan data pasien yang masih lambat yang mengakibatkan tingginya tingkat kesalahan dalam pengolahan data pasien. Sistem rekam medis ini menggunakan metode penelitian deskriptif dengan jenis studi kasus pada Puskesmas Mranggen I, teknik pengumpulan data yang digunakan adalah observasi, wawancara, dan studi literature. Teknik analisis data menggunakan model incremental yang dikembangkan dari model waterfall, sedangkan model analisis menggunakan analisis terstruktur yaitu ERD (Entity Relationship Diagram) dalam menggambarkan model data dan DFD (Data Flow Diagram) untuk mengembangkan model fungsional.Perangkat pembangun adalah Borland Delphi 7 dengan database MySQL. Data yang diproses yaitu pendaftaran, rekam medis, rujukan, laboratorium sedangkan keluaran dari system berupa laporan-laporan. Daptar Pustaka  http://kurniagara.blogspot.co.id/2013/01/struktur-bahasa-pemrograman-pascal.html-  Sumber: http://cynthia281999.blogspot.co.id/2016/01/tipe-data-konstanta-ekspresi-operator.html  http://referensisiswa.blogspot.co.id/2016/11/contoh-algoritma-perulangan.html  https://sangwidy.wordpress.com/web-design/oop-1/pengenalan-bahasa-pemograman/  Diposkan oleh Rizky Agung Hadi F. di 07.55  http://referensisiswa.blogspot.co.id/2016/10/algoritma-percabahangan-flow-control.html  2011https://hartz.wordpress.com/2011/05/18/pengembangan-aplikasi/