Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Pengantar Teknologi Informasi Pemrograman. Programming? Proses Memberikan instruksi kepada komputer agar dapat bekerja seperti yang kita kehendaki. Berhubungan.

Presentasi serupa


Presentasi berjudul: "Pengantar Teknologi Informasi Pemrograman. Programming? Proses Memberikan instruksi kepada komputer agar dapat bekerja seperti yang kita kehendaki. Berhubungan."— Transcript presentasi:

1 Pengantar Teknologi Informasi Pemrograman

2 Programming? Proses Memberikan instruksi kepada komputer agar dapat bekerja seperti yang kita kehendaki. Berhubungan erat dengan coding (proses penulisan code-code perintah)

3 Manusia Vs Komputer Yang ‘dipahami’ atau dijalankan oleh komputer : data dan instruksi dalam bentuk biner (rangkaian bit-bit bernilai ‘0’ atau ‘1’). Yang dipahami manusia : logika, aritmetika, algoritma, konsep, model, dan sebagainya.

4 Disain Logika Program Sekali problem didefinisikan dengan jelas oleh user dan analis sistem, dan digambarkan sebagai sekumpulan spesifikasi program, maka programer atau pengembang software dapat memulai mendisain sebuah program. Pertama sekali, programer harus membuat sebuah algoritma. ALGORITMA berasal dari seorang ilmuwan Muslim bernama Al-Khowarizmi Algoritma secara bahasa berarti resep, metode, teknik atau prosedur Algoritma: prosedur yang digunakan untuk memecahkan masalah tahap demi tahap

5 Sifat Algoritma Harus sederhana Tahapan harus tidak bermakna ganda (ambigu) sehingga komputer bisa memahaminya secara baik Efektif dalam memecahkan masalah Universal dan mengarah ke solusi yang unik Memiliki kapabilitas untuk menangani situasi yang tidak diinginkan, misalnya devide by zero

6 Cara Menyatakan Algoritma Flowchart: Lambang, simbol, gambar Arah panah Pseudo code Uraian sistematis dengan bahasa biasa Hierarchy Chart

7 Simbol-simbol Flowchart Input/Output (I/O) SIMBOLARTI Pemrosesan Sederatan pemindahan data atau operasi aritmatika Keputusan (Penyeleksian Kondisi) Perbandingan logika; digunakan ketika kita ingin komputer minta sebuah pertanyaan Terminal Titik mulai atau akhir program Proses yang didefinisikan sebelumnya Subprogram atau modul yang dieksekusidi titik ini. Instruksi nyatanya diisikan di modul ini yang ditunjukkan di tempat lain di dalam flowchart Konektor satu halaman Titik rujukan lain yang biasanya diberi nomor Konektor beda halaman Garis aliran Arah aliran logika Pembacaan data/input dengan punch card

8 Macam-macam Instruksi Proses A Proses B Proses C a. Instruksi tanpa syarat (sequential flow) b. Instruksi bersyarat (conditional flow) c. Instruksi Pengulangan (repetitive flow) Kondisi Proses AProses B Salah Benar Kondisi Proses AProses B

9 Contoh Lain 1. Bagan arus untuk membeli kue dengan kupon Mulai Siapkan uang Antri di tempat jual karcis Beli kupon Pilih kue Tukar kue dengan kupon Selesai

10 2. Bagan arus untuk belajar Mulai Siapkan alat-alat Baca diktat Cernakan isi diktat Coba kerjakan soal Cocokkan dgn kunci Selesai Istirahat Cocok? TidakYa

11 Pseudocode Penggunaan flowchart sebagai alat perencanaan mengalami kemunduran belakangan ini karena –flowchart untuk program yang besar dan kompleks sering tidak praktis untuk digambar dan sulit untuk dipahami –sulit membuat modifikasi flowchart tanpa menggambar kembali secara penuh –sering sangat panjang, struktur logikanya bisa sulit diikuti Alternatifnya: PSEUDOCODE (secara harfiah berarti “kode salah”) yang terdiri dari pernyataan seperti dengan bahasa Inggris (sebagai lawan dari simbol) untuk merencanakan logika program Pseudocode tidak perlu menyatakan semua rincian- rincian proses, tetapi menggambarkan secara hati-hati keseluruhan aliran logika program

12 Pseudocode Pseudocode populer karena –dapat merepresentasikan secara mudah semua struktur pemrograman yang dibutuhkan oleh programer –istilah-istilah menggunakan bahasa seperti bahasa Inggris adalah mudah untuk dipelajari dan dipahami Contoh pseudocode untuk penyiapan faktur MULAI BACA Nama, Jam, Rate LAKUKAN subprogram untuk kalkulasi upah CETAK Nama, Upah SELESAI

13 Contoh CONTOH Read(Data); Write(Report) Total := X + Y; If NilaiUjian > 60 Then Ket := ‘Lukus’; Begin End. Procedure Faktorial(); Faktorial(N,F);

14 Hierarchy Chart Flowchart dan pseudocode adalah alat untuk mendisain logika program Hierarchy chart (structure chart) menggambarkan bagaimana program disegmentasi ke sub- subprogram atau modul-modul dan bagaimana modul-modul itu secara nyata berhubungan satu dengan lainnya Contoh:

15 Bahas Pemrogramman Untuk menjembatani, dibuatlah bahasa pemprograman, yang menerjemahkan dari apa yang dikehendaki / dimengerti manusia menjadi instruksi mesin komputer.

16 Klasifikasi Berdasarkan Tingkat Berdasarkan Paradigma

17 Berdasarkan tingkat 1. Bahasa tingkat rendah, memetakan setiap instruksi dari kode sumber kedalam satu instruksi bahasa mesin. Biasa disebut juga dengan bahasa assembly. Untuk dapat memprogram dalam bahasa assembly, diperlukan pengetahuan yang benar tentang perangkat keras, representasi data, cara kerja pemprosesan, dan instruksi-instruksi mesin komputer 2. Bahasa tingkat tinggi, memiliki kedekatan dengan bahasa dan cara berpikir manusia. Contoh : bahasa Pascal 3. Bahasa tingkat menengah, antara kedua tingkat di atas. Contoh : bahasa C

18 Berdasarkan Paradigma 1. Prosedural 2. Fungsional 3. Deklaratif 4. Object Oriented Programming (OOP)

19 Bahasa Prosedural Program tersusun atas prosedur-prosedur algoritma. Procedure : sekumpulan langkah Function, routine, subroutine Pemprograman prosedural dicirikan dengan adanya: sequence (urutan), branch (pencabangan), dan loop (pengulangan).

20 Eksekusi Bahasa Prosedural Urutan, berarti bahasa tersebut memiliki urutan pemprosesan tertentu, biasanya dari atas ke bawah dan dari kiri ke kanan.

21 Percabangan merupakan alternatif alur program berdasarkan evaluasi terhadap kondisi tertentu. Contoh pencabangan adalah beberapa statement berikut

22 Pengulangan Pengulangan terhadap alur program berdasarkan evaluasi terhadap kondisi tertentu.

23 PEMROGRAMAN FUNGSIONAL tersusun atas fungsi-fungsi, baik yang sudah terdefinisi maupun yang dibuat sendiri oleh pengguna. Contoh : LISP

24 PEMROGRAMAN DEKLARATIF Tersusun atas deklarasi-deklarasi logika, berupa fakta, aturan, dan sasaran. Bahasa pemprograman prosedural memiliki mekanisme inferensi, yang memungkinkan komputer ‘menalar’ atau menelusuri berbagai fakta dan aturan yang diberikan untuk mendapatkan hasil / jawaban dari pertanyaan tertentu. Contoh : Prolog (programming in logic), Python, XpertRule

25 OOP Dalam pemprograman berorientasi objek, persoalan dan solusinya dimodelkan sebagai objek. Objek adalah segala sesuatu di alam semesta (lahiriah) yang dapat diamati. Setiap objek merupakan anggota, atau merupakan instance dari kelas objek tertentu.

26 Kelas Objek 1. nama kelas objek yang unik, membedakannya dengan kelas objek yang lain 2. atribut-atribut, atau data, atau properti- properti, atau sifat-sifat yang melekat pada kelas objek tersebut 3. perilaku, atau kemampuan, atau operasi, atau method, atau tanggung jawab yang melekat pada kelas objek tersebut

27 Ciri Utama Encapsulation, merupakan pembungkusan suatu kelas objek dengan atributatribut dan perilaku- perilaku yang dimilikinya. Contoh kelas objek sederhana Inheritance, merupakan penurunan sifat dari kelas objek induk kepada kelas objek anaknya, dari suatu kelas objek yang lebih general / umum kepada kelas objek yang lebih spesifik / khusus. Polymorphism, berarti objek yang berbeda-beda yang diturunkan dari induk yang sama mendukung antarmuka properti dan method yang sama. (dapat dipahami jika telah terlibat lebih lanjut dengan pemprograman berorientasi objek)

28 Contoh OOP Java C++ Eiffel, SmallTalk, C#

29 Program Control Structure Sequence structure Branch structure Loop structure

30 Sequence Instruksi dikerjakan secara berurutan. dari atas ke bawah stepInstruksi 1Input jmlBrg, hrgSat 2harga ← jmlBrg x hrgSat 3Print harga

31 Contoh Sequence (1) Program akan dikerjakan dengan input: 2, 1500 stepInstruksi 1Input jmlBrg, hrgSat 2harga ← jmlBrg x hrgSat 3Print harga stepVariabelOutput jmlBrghrgSatharga

32 Contoh Sequence (2) Mulai dengan langkah-1: Input 2, 1500 stepInstruksi 1Input jmlBrg, hrgSat 2harga ← jmlBrg x hrgSat 3Print harga stepVariabelOutput jmlBrghrgSatharga

33 Contoh Sequence (3) Langkah-2: Hitung perkalian, simpan hasilnya di variabel harga stepInstruksi 1Input jmlBrg, hrgSat 2harga ← jmlBrg x hrgSat 3Print harga stepVariabelOutput jmlBrghrgSatharga

34 Contoh Sequence (4) Langkah-3: Tampilkan isi variabel harga stepInstruksi 1Input jmlBrg, hrgSat 2harga ← jmlBrg x hrgSat 3Print harga stepVariabelOutput jmlBrghrgSatharga

35 Contoh Branch (0) stepInstruksi 1Input jmlBrg, hrgSat 2IF jmlBrg lebih besar dari 100 THEN 3 harga <= 90% x jmlBrg x hrgSat 4ELSE 5 harga <= jmlBrg x hrgSat 6ENDIF 7Print harga stepVariabelNext step Output jmlBrghrgSatharga

36 Contoh Branch (1) stepInstruksi 1Input jmlBrg, hrgSat 2IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4ELSE 5 harga ← jmlBrg x hrgSat 6ENDIF 7Print harga stepVariabelNext step Output jmlBrghrgSatharga

37 Contoh Branch (2) stepInstruksi 1Input jmlBrg, hrgSat 2IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4ELSE 5 harga ← jmlBrg x hrgSat 6ENDIF 7Print harga stepVariabelNext step Output jmlBrghrgSatharga

38 Contoh Branch (3) stepInstruksi 1Input jmlBrg, hrgSat 2IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4ELSE 5 harga ← jmlBrg x hrgSat 6ENDIF 7Print harga stepVariabelNext stepOutput jmlBrghrgSatharga

39 Contoh Branch (4) stepInstruksi 1Input jmlBrg, hrgSat 2IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4ELSE 5 harga ← jmlBrg x hrgSat 6ENDIF 7Print harga stepVariabelNext stepOutput jmlBrghrgSatharga

40 Contoh Branch (5) stepInstruksi 1Input jmlBrg, hrgSat 2IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4ELSE 5 harga ← jmlBrg x hrgSat 6ENDIF 7Print harga stepVariabelNext stepOutput jmlBrghrgSatharga selesai3000

41 Contoh Loop (0) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext stepOutput jmlBrghrgSatharga Akan dijalankan dengan input 2, , , 2000

42 Contoh Loop (1) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext stepOutput jmlBrghrgSatharga Input pertama 2, 1500 Input berikutnya 6, , 2000

43 Contoh Loop (2) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext stepOutput jmlBrghrgSatharga Input berikutnya 6, , 2000

44 Contoh Loop (3) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext step Output jmlBrghrgSatharga Tidak boleh kurang dari 10 Input berikutnya 6, , 2000

45 Contoh Loop (4) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext step Output jmlBrghrgSatharga Tidak boleh kurang dari Tidak boleh kurang dari 10 Input sekarang 6, 100 Input berikutnya 11, 2000

46 Contoh Loop (5) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext step Output jmlBrghrgSatharga Tidak boleh kurang dari Tidak boleh kurang dari Input berikutnya 11, 2000

47 Contoh Loop (6) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext step Output jmlBrghrgSatharga Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari 10 Input berikutnya 11, 2000

48 Contoh Loop (7) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext stepOutput jmlBrghrgSatharga Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari 10 Input berikutnya 11, 2000

49 Contoh Loop (8) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT stepVariabelNext stepOutput jmlBrghrgSatharga Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari 10

50 Contoh Loop (9) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT Step jmlBrghrgSatharga Next stepOutput Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari 10

51 Contoh Loop (10) stepInstruksi 1Input jmlBrg, hrgSat 2WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 Input jmlBrg, hrgSat 5END REPEAT Step jmlBrghrgSatharga Next stepOutput Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari Tidak boleh kurang dari

52 Kesalahan Syntax : tata bahasa Diinginkan: IF a > b THEN Tertulis : IF a -> b THEN Logical : algoritma Diinginkan: INPUT harga Tertulis : INPUT jumlah Numerical : perhitungan Original data Truncation Round off Propagated

53 Kesalahan Syntax : tata bahasa Logical : algoritma Numerical : perhitungan Original data Misal, input harga, seharusnya 5000 Terrekam: 3999 Truncation Misal, pi = 3, Kapasitas memory hanya merekam pi=3,1415 Round off Misal, pembulatan pi=3, menjadi pi=3,1416 Propagated


Download ppt "Pengantar Teknologi Informasi Pemrograman. Programming? Proses Memberikan instruksi kepada komputer agar dapat bekerja seperti yang kita kehendaki. Berhubungan."

Presentasi serupa


Iklan oleh Google