Pengantar Teknologi Informasi

Slides:



Advertisements
Presentasi serupa
PENDAHULUAN KONSEP ALGORITMA DAN DIAGRAM ALIR (FLOWCHART)
Advertisements

Algoritma dan Pemrograman
Pengertian Algoritma dan Flowchart
Teknologi Informasi ~ Komputasi dan Pemrograman ~ Oleh : Tim Hibah Pengajaran Mata Kuliah Teknologi Informasi Jurusan Matematika Pertemuan 9.
TEORI ALGORITMA.
ALGORITMA & PEMROGRAMAN I-A
Oleh : Tim Hibah Pengajaran Mata Kuliah Teknologi Informasi Jurusan Matematika Pertemuan 9.
ALGORITMA “Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis”. sistematis dan logis artinya,
Bahasa Pemrograman dan Flow Chart
PEMROGRAMAN TERSTRUKTUR
Dasar- Dasar Algoritma
ALGORITMA DEFINISI & FLOWCHART
Algoritma Dasar Dalam membuat suatu program komputer, menyusun algoritma adalah langkah pertama yang harus dilakukan Dalam membuat algoritma dapat digunakan.
Algoritma dan Pemrograman
ALGORITMA PSEUDOCODE Pertemuan Ke-2 Meilia Nur Indah Susanti, ST.,MKom
ALGORITMA & LOGIKA PEMROGRAMAN
Pengantar Algoritma dan pemograman
Pertemuan-III Algoritma disajikan gambar
Algoritma dan Pemrograman
Algoritma dan Pemrograman
PENGERTIAN DASAR ALGORITMA & FLOWCHART
Dasar Algoritma dan Pemrograman
Rifky Kurniawan, S.Kom, MTI
PERTEMUAN I PENGANTAR ALGORITMA
PERTEMUAN 1 Algoritma & Pemrograman
KELOMPOK 02 ALOGARITMA PEMOGRAMAN TAHUN AJARAN
DASAR PEMROGRAMAN & ALGORITMA
Struktur Keputusan pada Structure English dan Pseudocode
Flowchart (Diagram Alur)
Pengantar Pemrograman Basis Data (PPBD)
Pengertian Algoritma Pemrograman Pertemuan 1
Konsep Pemrograman Belajar memrogram adalah belajar mengenai strategi pemecahan persoalan/masalah, juga metodologi dan sistematika pemecahan tersebut kemudian.
BAB 1 BAHASA PEMROGRAMAN
KONSEP DASAR PEMROGRAMAN KOMPUTER DAN Algoritma
ALGORITMA & PEMROGRAMAN
Komputasi dan Pemrograman
PENGANTAR LOGIKA & TEKNIKPEMROGRAMAN
ALGORITMA & LOGIKA PEMROGRAMAN
Wahyu Cahyani Faradilah Artian Ningsih Siti khodijah FLOWCHART
Pengertian Algoritma dan Flowchart
Dasar Pemrograman Dan Bahasa Pemrograman
penyusunan algoritma (flowchart)
MODUL 2.
Algoritma dan Pemrograman
LOGIKA & ALGORITMA Algoritma & Pengenalan Flow Chart
Algoritma.
PARADIGMA DALAM PEMOGRAMAN
Pertemuan-III Algoritma disajikan gambar
Algoritma dan Pemrograman I Dosen : Utami Dewi Widianti
Introduction to Algorithm and Programming
JENIS DAN SIMBOL FLOWCHART PRODI MIK | FAKULTAS ILMU-ILMU KESEHATAN
ANALISA PERANCANGAN PROGRAM.
Bahasa Pemrograman dan Flow Chart
DASAR PEMROGRAMAN Anita Qoiriah ..
Bahasa Pemrograman Poltek Balikpapan 2010.
Pengantar Konsep Bahasa Pemrograman
DIAGRAM ALUR (FLOWCHART)
PENGANTAR LOGIKA & TEKNIK PEMROGRAMAN
Pengantar Algoritma dan pemograman
LOGIKA & ALGORITMA -Algoritma & Pengenalan Flow Chart
ALGORITMA DAN PEMROGRAMAN
Pertemuan ke 6 Nori Sahrun, S.Kom., M.Kom
Kenalan Alghoritma Wahab Sya’roni, M.Kom
Introduction to Algorithm and Programming
Dasar Pemrograman Dan Bahasa Pemrograman
Algoritma Pemrograman II
IT234 ALGORITMA DAN STRUKTUR DATA
LOGIKA & ALGORITMA A LGORITMA & P ENGENALAN F LOW C HART 1.
Flowchart (Diagram Alur)
Konsep Algoritma Pemrograman
Transcript presentasi:

Pengantar Teknologi Informasi Pemrograman

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

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.

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

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

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

Simbol-simbol Flowchart ARTI Input/Output (I/O) 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 Pembacaan data/input dengan punch card Konektor satu halaman Titik rujukan lain yang biasanya diberi nomor Konektor beda halaman Garis aliran Arah aliran logika

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

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

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

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

Pseudocode Pseudocode populer karena MULAI 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

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

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:

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

Klasifikasi Berdasarkan Tingkat Berdasarkan Paradigma

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

Berdasarkan Paradigma Prosedural Fungsional Deklaratif Object Oriented Programming (OOP)

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

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

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

Pengulangan Pengulangan terhadap alur program berdasarkan evaluasi terhadap kondisi tertentu.

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

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

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.

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

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)

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

Program Control Structure Sequence structure Branch structure Loop structure

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

Contoh Sequence (1) step Variabel Output Program akan dikerjakan dengan input: 2, 1500 step Instruksi 1 Input jmlBrg, hrgSat 2 harga ← jmlBrg x hrgSat 3 Print harga step Variabel Output jmlBrg hrgSat harga

Contoh Sequence (2) step Variabel Output 1 2 1500 Mulai dengan langkah-1: Input 2, 1500 step Instruksi 1 Input jmlBrg, hrgSat 2 harga ← jmlBrg x hrgSat 3 Print harga step Variabel Output jmlBrg hrgSat harga 1 2 1500

Contoh Sequence (3) step Variabel Output 1 2 1500 3000 Langkah-2: Hitung perkalian, simpan hasilnya di variabel harga step Instruksi 1 Input jmlBrg, hrgSat 2 harga ← jmlBrg x hrgSat 3 Print harga step Variabel Output jmlBrg hrgSat harga 1 2 1500 3000

Contoh Sequence (4) step Variabel Output Tampilkan isi variabel harga Langkah-3: Tampilkan isi variabel harga step Instruksi 1 Input jmlBrg, hrgSat 2 harga ← jmlBrg x hrgSat 3 Print harga step Variabel Output jmlBrg hrgSat harga 1 2 1500 3000 3

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

Contoh Branch (1) step Variabel Next step Output 1 2 1500 1 Instruksi 1 Input jmlBrg, hrgSat 2 IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4 ELSE 5 harga ← jmlBrg x hrgSat 6 ENDIF 7 Print harga step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500

Contoh Branch (2) step Variabel Next step Output 1 2 1500 5 1 Instruksi 1 Input jmlBrg, hrgSat 2 IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4 ELSE 5 harga ← jmlBrg x hrgSat 6 ENDIF 7 Print harga step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 5

Contoh Branch (3) step Variabel Next step Output 1 2 1500 5 3000 6 Instruksi 1 Input jmlBrg, hrgSat 2 IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4 ELSE 5 harga ← jmlBrg x hrgSat 6 ENDIF 7 Print harga step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 5 3000 6

Contoh Branch (4) step Variabel Next step Output 1 2 1500 5 3000 6 7 Instruksi 1 Input jmlBrg, hrgSat 2 IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4 ELSE 5 harga ← jmlBrg x hrgSat 6 ENDIF 7 Print harga step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 5 3000 6 7

Contoh Branch (5) step Variabel Next step Output 1 2 1500 5 3000 6 7 Instruksi 1 Input jmlBrg, hrgSat 2 IF jmlBrg lebih besar dari 100 THEN 3 harga ← 90% x jmlBrg x hrgSat 4 ELSE 5 harga ← jmlBrg x hrgSat 6 ENDIF 7 Print harga step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 5 3000 6 7 selesai

Contoh Loop (0) Akan dijalankan dengan input 2, 1500 6, 100 11, 2000 step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga

Contoh Loop (1) Input pertama Input berikutnya 2, 1500 6, 100 11, 2000 step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500

Contoh Loop (2) Input berikutnya 6, 100 11, 2000 step Variabel Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 3

Contoh Loop (3) Input berikutnya 6, 100 11, 2000 step Variabel Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 3 4 Tidak boleh kurang dari 10

Contoh Loop (4) Input sekarang Input berikutnya 6, 100 11, 2000 step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 3 4 Tidak boleh kurang dari 10 6 100 5

Contoh Loop (5) Input berikutnya 11, 2000 step Variabel Next step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 3 4 Tidak boleh kurang dari 10 6 100 5

Contoh Loop (6) Input berikutnya 11, 2000 step Variabel Next step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 3 4 Tidak boleh kurang dari 10 6 100 5

Contoh Loop (7) Input berikutnya 11, 2000 1 Input jmlBrg, hrgSat 2 step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 3 4 Tidak boleh kurang dari 10 6 100 5

Contoh Loop (8) 11 2000 1 Input jmlBrg, hrgSat 2 step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT step Variabel Next step Output jmlBrg hrgSat harga 1 2 1500 3 4 Tidak boleh kurang dari 10 6 100 5 11 2000

Contoh Loop (9) 11 2000 1 Input jmlBrg, hrgSat 2 step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT Step jmlBrg hrgSat harga Next step Output 1 2 1500 3 4 Tidak boleh kurang dari 10 6 100 5 11 2000

Contoh Loop (10) 11 2000 1 Input jmlBrg, hrgSat 2 step Instruksi 1 Input jmlBrg, hrgSat 2 WHILE jmlBrg lebih kecil dari 10 3 Print ‘Tidak boleh kurang dari 10’ 4 5 END REPEAT Step jmlBrg hrgSat harga Next step Output 1 2 1500 3 4 Tidak boleh kurang dari 10 6 100 5 11 2000

Kesalahan Syntax : tata bahasa Logical : algoritma 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

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