Pengantar dan Pengertian Dasar Pemrograman Komputer
Click here to load reader
-
Upload
anastasia-vera -
Category
Documents
-
view
272 -
download
4
description
Transcript of Pengantar dan Pengertian Dasar Pemrograman Komputer
CS1023 Pemrograman KomputerLecture 1Pengantar amp Pengertian-pengertian dasar
20107 Pengantar 2
Pengantar ProKom
bull Silabus matakuliahbull Pengantar algoritmabull Pengantar pemrogramanbull Belajar Memprogram dan Belajar B
ahasa Pemrograman
bull Interpreter dan Compiler bull Compiler Pascal bull Objektif Matakuliah
20107 Pengantar 3
Pengantar Algoritma
20107 Pengantar 4
Pengantar Algoritma
20107 Pengantar 5
Contoh 1 Terdapat dua jenis minuman dalam 2 gelas berukuran sama A dan B kedua minuman akan ditukarkan tempatnya
status awal gelas A berisi minuman a gelas B berisi minuman bstatus akhir gelas A berisi minuman b gelas B berisi minuman aDibutuhkan sebuah gelas kosong yaitu gelas CAlgoritmaTuangkan minuman a ke gelas CTuangkan minuman b ke gelas ATuangkan minuman a ke gelas B
20107 Pengantar 6
Penjelasan Contoh 1Aksi 1
status awal gelas A berisi minuman a gelas C kosongTuangkan minuman a ke gelas Cstatus akhir gelas A kosong gelas C berisi minuman a
Aksi 2status awal gelas A kosong gelas B berisi minuman b Tuangkan minuman b ke gelas Astatus akhir gelas A berisi minuman b gelas B kosong
Aksi 3status awal gelas B kosong gelas C berisi minuman a Tuangkan minuman a ke gelas Cstatus akhir gelas B berisi minuman a gelas C kosong
20107 Pengantar 7
Contoh 2Misalkan terdapat sebuah atau sejumlah bola berwarna merah kuning hijau pada kotak A Akan diambil secara acak sebuah bola dari kotak A dan dimasukkan ke kotak B yang kosong
status awal kotak A berisi sejumlah bola kotak B kosongstatus akhir Bola pada kotak A berkurang 1 kotak B berisi sebuah bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 8
Latihan 1
bull Terdapat 4 buah bola yang tampilannya sama 3 bola mempunyai berat yang sama dan sebuah bola lebih ringan atau lebih berat Untuk mencari bola mana yang beratnya berbeda disediakan sebuah timbangan tanpa skala yang hanya bisa menunjukkan 2 benda beratnya sama atau tidak
bull Buat algoritma untuk persoalan ini
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 2
Pengantar ProKom
bull Silabus matakuliahbull Pengantar algoritmabull Pengantar pemrogramanbull Belajar Memprogram dan Belajar B
ahasa Pemrograman
bull Interpreter dan Compiler bull Compiler Pascal bull Objektif Matakuliah
20107 Pengantar 3
Pengantar Algoritma
20107 Pengantar 4
Pengantar Algoritma
20107 Pengantar 5
Contoh 1 Terdapat dua jenis minuman dalam 2 gelas berukuran sama A dan B kedua minuman akan ditukarkan tempatnya
status awal gelas A berisi minuman a gelas B berisi minuman bstatus akhir gelas A berisi minuman b gelas B berisi minuman aDibutuhkan sebuah gelas kosong yaitu gelas CAlgoritmaTuangkan minuman a ke gelas CTuangkan minuman b ke gelas ATuangkan minuman a ke gelas B
20107 Pengantar 6
Penjelasan Contoh 1Aksi 1
status awal gelas A berisi minuman a gelas C kosongTuangkan minuman a ke gelas Cstatus akhir gelas A kosong gelas C berisi minuman a
Aksi 2status awal gelas A kosong gelas B berisi minuman b Tuangkan minuman b ke gelas Astatus akhir gelas A berisi minuman b gelas B kosong
Aksi 3status awal gelas B kosong gelas C berisi minuman a Tuangkan minuman a ke gelas Cstatus akhir gelas B berisi minuman a gelas C kosong
20107 Pengantar 7
Contoh 2Misalkan terdapat sebuah atau sejumlah bola berwarna merah kuning hijau pada kotak A Akan diambil secara acak sebuah bola dari kotak A dan dimasukkan ke kotak B yang kosong
status awal kotak A berisi sejumlah bola kotak B kosongstatus akhir Bola pada kotak A berkurang 1 kotak B berisi sebuah bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 8
Latihan 1
bull Terdapat 4 buah bola yang tampilannya sama 3 bola mempunyai berat yang sama dan sebuah bola lebih ringan atau lebih berat Untuk mencari bola mana yang beratnya berbeda disediakan sebuah timbangan tanpa skala yang hanya bisa menunjukkan 2 benda beratnya sama atau tidak
bull Buat algoritma untuk persoalan ini
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 3
Pengantar Algoritma
20107 Pengantar 4
Pengantar Algoritma
20107 Pengantar 5
Contoh 1 Terdapat dua jenis minuman dalam 2 gelas berukuran sama A dan B kedua minuman akan ditukarkan tempatnya
status awal gelas A berisi minuman a gelas B berisi minuman bstatus akhir gelas A berisi minuman b gelas B berisi minuman aDibutuhkan sebuah gelas kosong yaitu gelas CAlgoritmaTuangkan minuman a ke gelas CTuangkan minuman b ke gelas ATuangkan minuman a ke gelas B
20107 Pengantar 6
Penjelasan Contoh 1Aksi 1
status awal gelas A berisi minuman a gelas C kosongTuangkan minuman a ke gelas Cstatus akhir gelas A kosong gelas C berisi minuman a
Aksi 2status awal gelas A kosong gelas B berisi minuman b Tuangkan minuman b ke gelas Astatus akhir gelas A berisi minuman b gelas B kosong
Aksi 3status awal gelas B kosong gelas C berisi minuman a Tuangkan minuman a ke gelas Cstatus akhir gelas B berisi minuman a gelas C kosong
20107 Pengantar 7
Contoh 2Misalkan terdapat sebuah atau sejumlah bola berwarna merah kuning hijau pada kotak A Akan diambil secara acak sebuah bola dari kotak A dan dimasukkan ke kotak B yang kosong
status awal kotak A berisi sejumlah bola kotak B kosongstatus akhir Bola pada kotak A berkurang 1 kotak B berisi sebuah bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 8
Latihan 1
bull Terdapat 4 buah bola yang tampilannya sama 3 bola mempunyai berat yang sama dan sebuah bola lebih ringan atau lebih berat Untuk mencari bola mana yang beratnya berbeda disediakan sebuah timbangan tanpa skala yang hanya bisa menunjukkan 2 benda beratnya sama atau tidak
bull Buat algoritma untuk persoalan ini
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 4
Pengantar Algoritma
20107 Pengantar 5
Contoh 1 Terdapat dua jenis minuman dalam 2 gelas berukuran sama A dan B kedua minuman akan ditukarkan tempatnya
status awal gelas A berisi minuman a gelas B berisi minuman bstatus akhir gelas A berisi minuman b gelas B berisi minuman aDibutuhkan sebuah gelas kosong yaitu gelas CAlgoritmaTuangkan minuman a ke gelas CTuangkan minuman b ke gelas ATuangkan minuman a ke gelas B
20107 Pengantar 6
Penjelasan Contoh 1Aksi 1
status awal gelas A berisi minuman a gelas C kosongTuangkan minuman a ke gelas Cstatus akhir gelas A kosong gelas C berisi minuman a
Aksi 2status awal gelas A kosong gelas B berisi minuman b Tuangkan minuman b ke gelas Astatus akhir gelas A berisi minuman b gelas B kosong
Aksi 3status awal gelas B kosong gelas C berisi minuman a Tuangkan minuman a ke gelas Cstatus akhir gelas B berisi minuman a gelas C kosong
20107 Pengantar 7
Contoh 2Misalkan terdapat sebuah atau sejumlah bola berwarna merah kuning hijau pada kotak A Akan diambil secara acak sebuah bola dari kotak A dan dimasukkan ke kotak B yang kosong
status awal kotak A berisi sejumlah bola kotak B kosongstatus akhir Bola pada kotak A berkurang 1 kotak B berisi sebuah bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 8
Latihan 1
bull Terdapat 4 buah bola yang tampilannya sama 3 bola mempunyai berat yang sama dan sebuah bola lebih ringan atau lebih berat Untuk mencari bola mana yang beratnya berbeda disediakan sebuah timbangan tanpa skala yang hanya bisa menunjukkan 2 benda beratnya sama atau tidak
bull Buat algoritma untuk persoalan ini
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 5
Contoh 1 Terdapat dua jenis minuman dalam 2 gelas berukuran sama A dan B kedua minuman akan ditukarkan tempatnya
status awal gelas A berisi minuman a gelas B berisi minuman bstatus akhir gelas A berisi minuman b gelas B berisi minuman aDibutuhkan sebuah gelas kosong yaitu gelas CAlgoritmaTuangkan minuman a ke gelas CTuangkan minuman b ke gelas ATuangkan minuman a ke gelas B
20107 Pengantar 6
Penjelasan Contoh 1Aksi 1
status awal gelas A berisi minuman a gelas C kosongTuangkan minuman a ke gelas Cstatus akhir gelas A kosong gelas C berisi minuman a
Aksi 2status awal gelas A kosong gelas B berisi minuman b Tuangkan minuman b ke gelas Astatus akhir gelas A berisi minuman b gelas B kosong
Aksi 3status awal gelas B kosong gelas C berisi minuman a Tuangkan minuman a ke gelas Cstatus akhir gelas B berisi minuman a gelas C kosong
20107 Pengantar 7
Contoh 2Misalkan terdapat sebuah atau sejumlah bola berwarna merah kuning hijau pada kotak A Akan diambil secara acak sebuah bola dari kotak A dan dimasukkan ke kotak B yang kosong
status awal kotak A berisi sejumlah bola kotak B kosongstatus akhir Bola pada kotak A berkurang 1 kotak B berisi sebuah bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 8
Latihan 1
bull Terdapat 4 buah bola yang tampilannya sama 3 bola mempunyai berat yang sama dan sebuah bola lebih ringan atau lebih berat Untuk mencari bola mana yang beratnya berbeda disediakan sebuah timbangan tanpa skala yang hanya bisa menunjukkan 2 benda beratnya sama atau tidak
bull Buat algoritma untuk persoalan ini
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 6
Penjelasan Contoh 1Aksi 1
status awal gelas A berisi minuman a gelas C kosongTuangkan minuman a ke gelas Cstatus akhir gelas A kosong gelas C berisi minuman a
Aksi 2status awal gelas A kosong gelas B berisi minuman b Tuangkan minuman b ke gelas Astatus akhir gelas A berisi minuman b gelas B kosong
Aksi 3status awal gelas B kosong gelas C berisi minuman a Tuangkan minuman a ke gelas Cstatus akhir gelas B berisi minuman a gelas C kosong
20107 Pengantar 7
Contoh 2Misalkan terdapat sebuah atau sejumlah bola berwarna merah kuning hijau pada kotak A Akan diambil secara acak sebuah bola dari kotak A dan dimasukkan ke kotak B yang kosong
status awal kotak A berisi sejumlah bola kotak B kosongstatus akhir Bola pada kotak A berkurang 1 kotak B berisi sebuah bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 8
Latihan 1
bull Terdapat 4 buah bola yang tampilannya sama 3 bola mempunyai berat yang sama dan sebuah bola lebih ringan atau lebih berat Untuk mencari bola mana yang beratnya berbeda disediakan sebuah timbangan tanpa skala yang hanya bisa menunjukkan 2 benda beratnya sama atau tidak
bull Buat algoritma untuk persoalan ini
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 7
Contoh 2Misalkan terdapat sebuah atau sejumlah bola berwarna merah kuning hijau pada kotak A Akan diambil secara acak sebuah bola dari kotak A dan dimasukkan ke kotak B yang kosong
status awal kotak A berisi sejumlah bola kotak B kosongstatus akhir Bola pada kotak A berkurang 1 kotak B berisi sebuah bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 8
Latihan 1
bull Terdapat 4 buah bola yang tampilannya sama 3 bola mempunyai berat yang sama dan sebuah bola lebih ringan atau lebih berat Untuk mencari bola mana yang beratnya berbeda disediakan sebuah timbangan tanpa skala yang hanya bisa menunjukkan 2 benda beratnya sama atau tidak
bull Buat algoritma untuk persoalan ini
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 8
Latihan 1
bull Terdapat 4 buah bola yang tampilannya sama 3 bola mempunyai berat yang sama dan sebuah bola lebih ringan atau lebih berat Untuk mencari bola mana yang beratnya berbeda disediakan sebuah timbangan tanpa skala yang hanya bisa menunjukkan 2 benda beratnya sama atau tidak
bull Buat algoritma untuk persoalan ini
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 9
Contoh 3Berdasarkan contoh 1 dimana setelah bola diambil dari kotak A bola tersebut disimpan di kotak B jika berwarna merah
status awal kotak A berisi sejumlah bola kotak B kosong
status akhir bola pada kotak A berkurang 1 kotak B kosong atau berisi sebuah bola merah
Algoritma
Ambilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak B
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 10
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi then
aksi
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 11
Contoh 4status awal kotak A berisi sejumlah bola kotak B dan C kosong
status akhir Bola pada kotak A berkurang 1 kotak B atau kotak C kosong
atau berisi sebuah bolaAlgoritmaAmbilkan 1 bola dari kotak A if bola berwarna merah thenMasukkan bola terambil ke kotak Belse Masukkan bola terambil ke kotak C
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 12
Perhatikan pemilihan kondisi pada baris ke-2 Skema pemilihan yang digunakan memiliki pola
if kondisi thenaksi 1
elseaksi 2
else menunjukkan ldquojika tidak terpenuhirdquo Pada contoh dia atas jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 13
Contoh 5status awal kotak A berisi 5 bola kotak B
kosongstatus akhir kotak A kosong kotak B berisi 5
bolaAlgoritmaAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak BAmbil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 14
Contoh 6status awal kotak A berisi 100 bola kotak B kosong
status akhir kotak A kosong kotak B berisi 100 bola
Algoritma
repeat 100 times Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak B
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 15
Pada algoritma di atas digunakan struktur
repeat n times
Aksi
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 16
Bagaimana jika jumlah bola pada kotak A tidak diketahui
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 17
Contoh 7status awal kotak A berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola
Algoritmarepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak BUntil kotak A kosong
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 18
Bagaimana jika kotak A KOSONG
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 19
Contoh 8
status awal kotak A kosong atau berisi bola kotak B kosong
status akhir kotak A kosong kotak B berisi bola atau tetap kosong
AlgoritmaIf kotak A tidak kosong thenrepeat Ambil 1 bola dari kotak A Masukkan bola terambil ke kotak Buntil kotak A kosong
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 20
Latihan 2
Persoalan pada contoh 7 sedikit diubah dimana bola-bola dari kotak A akan dipindahkan ke 3 kotak lain berdasarkan warnanya sehingga kotak A kosong dan 3 kotak lain terisi dengan bola berwarna sejenis
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 21
Syarat Algoritma
1 Algoritma harus berhenti
2 Setiap instruksi dan spesifikasi harus didefinisikan dengan tepat dan tidak ambigu Contohnya ketika kita membuat algoritma yang melibatkan bilangan positif harus jelas apakah nol bilangan positif atau bukan
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 22
3 Memiliki nol atau lebih masukan
4 Memiliki nol atau lebih keluaraan
5 Efektif yaitu urutan instruksi sesederhana mungkin
Syarat Algoritma
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 23
Sejarah Bahasa Pemrograman
First GenerationVacuum Tubes
1950-1957
Machine Language
Second GenerationTransistors1957-1965
Assembly LanguagesHigh-level Programming Languages
Third GenerationIntegrated Circuits
1965-1975
First minicomputerBirth of software
industry
Fourth GenerationEven smaller
Integrated circuits1975-1985
First microcomputerComputer networks
Electronic mailGraphical user interfaces
Embedded systemsFifth Generation
Transistors1985-Present
Parallel processorsHandheld devices
High-resolution graphicsWorld wide web
Massive storage devicesUbiquitous computing
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 24
Machine Language
bull A machine generally processes very primitive calculator-like instructions
10487081048708 ldquoGet first number from memoryrdquo
10487081048708 ldquoGet second number from memoryrdquo
10487081048708 ldquoAdd the two numbersrdquo
10487081048708 ldquoStore the results back in memoryrdquo
bull All of this is in binary code (machine language)
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 25
What is this code executing
bull 11000010 00000000 00101000 00101100
bull 11000100 00000000 00101000 00110000
bull 10000110 10001000 11000000 00000000
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 26
Assembly Language
bull Instead of using hard-to-read machine language use textual representations
bull Designed to overcome shortcomings of machine languages
bull Create a more productive user-oriented environment
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 27
Assembly Language
bull Earlier termed second-generation languages
bull Now viewed as low-level programming languages
bull Assembly language considered ldquosecond-levelrdquo language
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 28
Assembly Language
LD R1 x (load the value of x into R1 in the CPU)
LD R2 y load the value of y into R2 in the CPU)
ADD R0 R1 R2 (add contents of R1 and R2 and store it in R0)
Still really annoying what we want is ldquox + yrdquo
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 29
High-level Languages
bull Started in the 50s60s with FORTRAN and COBOL
bull Idea take a higher-level description of what we want to do and let the computer translate it into the machine language as specified before
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 30
bull Called compiler because it might take a single high-level command and compile a sequence of low-level commandsndash Input high-level language as text store
binary commands in executable filebull Alternative interpret commands on the
fly and issue low-level statements to the processor (BASIC does this)
bull C is compiled Java between compiled and interpreted
High-level Languages
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 31
Programming Paradigms
bull A paradigmndash A model or mental framework for representing
or thinking about something
bull Programming Paradigmsndash Proceduralndash Object Orientedndash Functionalndash Logic
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 32
Programming Paradigms
bull Procedural programmingndash Fortran C Pascal etc ndash A sequence of detailed instructions is provided
to the computerndash Each instruction accesses or modifies the
contents of a memory locationndash Computer carries out the instructions one at a
time resulting in the solution to the problem
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 33
Programming Paradigms
bull Object-oriented programming (OOP)ndash C++ Java SmallTalkndash Each object is an example drawn from a class
of similar objectsndash Encapsulation
bull A class consists of its subtask modules and its properties
bull Both are ldquoencapsulatedrdquo in the class
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 34
ndash Inheritancebull Once a class A of objects is defined a
class B of objects can be defined as a ldquosubclassrdquo of A
ndash Polymorphismbull One name the name of the service to
be performed has several meanings depending on the class of the object providing the service
Programming Paradigms
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 35
Programming Paradigmsbull Functional Programming
ndash Lispndash programming in terms of function callsndash no use of temporary variables to store intermediate
results (x = 5)bull Logical Programming
ndash Prologndash A series of logical deductions from known factsndash Various facts are asserted to be truendash On the basis of these facts a logic program can infer or
deduce other facts
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 36
Belajar memrogram = Belajar bahasa pemrograman
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 37
Interpreter
InterpreterMachine Language
Execute Output
Data
Source Program
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 38
Compiler
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 39
Compiler Pascal
bull Pascal adalah bahasa tingkat tinggi yang dirancang oleh Profesor Niklaus Wirth dari Technical University di Zurich Switzerland
bull Nama Pascal diambil dari Blaise Pascal ahli matematik dan philosophi terkenal abad 17 dari Perancis
bull Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K Jensen dan Niklaus Wirth
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 40
Objektif Matakuliah
Kuliah ditekankan pada belajar memprogram dan bukan untuk
mempelajari bahasa pemrograman tertentu
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 41
Setelah menyelesaikan matakuliah ini mahasiswa diharapkan mampu mendefinisikan langkah-langkah sistematis untuk menyelesaikan persoalan-persoalan yang perlu
diselesaikan dengan program dan mentranslasikannya ke dalam bahasa
Pascal
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 42
Pada kuliah ini digunakan compiler Pascal dengan pertimbangan
ldquokekakuanrdquo skema program Pascal yang dipandang baik bagi pemrogram
pemula
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 43
Notasi Algoritmik
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 44
Teks Algoritma
Terdiri atas tiga bagian
bull Judul
bull Kamus
bull Algoritma
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 45
Contoh teks algoritma
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 46
Pada setiap bagian akan didefinisikan amp dituliskan NAMA atau komentar
Komentar dituliskan diantara tanda kurung kurawal
Teks yang dituliskan diluar tanda kurung kurawal adalah teks algoritma
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 47
NAMA
Definisi Sesuatu yang dipakai sebagai identifikasi
Modul program algoritma skema program dsbFungsi
ProsedurType
Tempat penyimpanan (nama variabel)Konstanta
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 48
Aturan pemberian NAMA
1 Dalam bahasa pemrograman setiap nama mempunyai aturan penulisan Pada teks algoritma tidak ada aturan ketat
2 Pemilihan nama harus interpretatif tidak menimbulkan kerancuan jika singkat harus disertai penjelasancontoh x-y akan membingungkan sebab mungkin ldquox minus yrdquo
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 49
3 Nama merupakan satu kesatuan leksikal maka sebuah nama harus dituliskan secara utuh (tidak dipisah blank) supaya satu nama dapat dibedakan dengan nama lainnya (besaran leksikal lain)
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 50
Semua nama dalam program harus unik artinya suatu nama hanya didefinisikan
satu kali saja
Semua nama yang dipakai dalam teks algoritma harus sudah didefinisikan
pada salah satu bagian teks algoritma
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 51
JUDULBagian teks algoritma tempat mendefinisikan
apakah teks tsb adalah program prosedur fungsi atau modul
Setelah judul tuliskan spesifikasi singkat dari teks algoritma
Bagian judul identik dengan judul buku dan intisari pada suatu teks ilmiah dalam suatu makalah
berbahasa Indonesia
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 52
KAMUS
Definisi Bagian teks algoritma tempat mendefinisikan
Nama typeNama konstanta
Nama informasi (nama variabel)Nama prosedur sekaligus spesifikasi
Nama fungsi sekaligus spesifikasi
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 53
Contoh pendefinisian kamus
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 54
ALGORITMA
Definisi Bagian teks algoritma yang berisi
instruksi atau pemanggilan aksi yang telah didefinisikan
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 55
Komponen AlgoritmaKomponen teks algoritmik dalam pemrograman
prosedural dapat berupa
Instruksi dasar seperti I O assignment
Sequence
Analisa kasus
Pengulangan
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-
20107 Pengantar 56
Referensi
bull Liem Inggriani Diktat kuliah Algoritma amp Pemrograman ITB 2003
- CS1023 Pemrograman Komputer
- Pengantar ProKom
- Pengantar Algoritma
- Slide 4
- Contoh 1
- Penjelasan Contoh 1
- Contoh 2
- Latihan 1
- Contoh 3
- Slide 10
- Contoh 4
- Slide 12
- Contoh 5
- Contoh 6
- Slide 15
- Slide 16
- Contoh 7
- Slide 18
- Contoh 8
- Latihan 2
- Syarat Algoritma
- Slide 22
- Slide 23
- Machine Language
- What is this code executing
- Assembly Language
- Slide 27
- Slide 28
- High-level Languages
- Slide 30
- Programming Paradigms
- Slide 32
- Slide 33
- Slide 34
- Slide 35
- Belajar memrogram = Belajar bahasa pemrograman
- Interpreter
- Compiler
- Compiler Pascal
- Objektif Matakuliah
- Slide 41
- Slide 42
- Notasi Algoritmik
- Teks Algoritma
- Contoh teks algoritma
- Slide 46
- NAMA
- Aturan pemberian NAMA
- Slide 49
- Slide 50
- JUDUL
- KAMUS
- Contoh pendefinisian kamus
- ALGORITMA
- Komponen Algoritma
- Referensi
-