Prog komp - history&algorithm
-
Upload
rudi-wicaksana -
Category
Education
-
view
221 -
download
1
Transcript of Prog komp - history&algorithm
•• Tujuan perkuliahanTujuan perkuliahan: : MahasiswaMahasiswa memahamimemahami prinsipprinsip dasardasar bekerjanyabekerjanya
komputer,komputer, dandan mengetahuimengetahui komponenkomponen dasardasardalamdalam sistemsistem komputerkomputer..
MahasiswaMahasiswa mampumampu membuatmembuat algoritmaalgoritma dalamdalambentukbentuk diagramdiagram aliralir (flow(flow chart)chart) dandan dapatdapatmengonversikannyamengonversikannya dalamdalam salahsalah satusatu bahasabahasapemrogramanpemrograman dasardasar komputerkomputer..
•• MK memiliki beban 2 SKSMK memiliki beban 2 SKS, akan disampaikan dalam , akan disampaikan dalam perkuliahan di kelas dan praktek pemrograman perkuliahan di kelas dan praktek pemrograman menggunakan Turbo Pascalmenggunakan Turbo Pascal & MATLAB& MATLAB. .
2
3
4
•• Komputer: Komputer: alat hitungalat hitung, “tukang” hitung, “tukang” hitung•• Alat penghitung misalnya: mistar hitungAlat penghitung misalnya: mistar hitung•• Cara perhitungan manual, menimbulkan Cara perhitungan manual, menimbulkan
“error” “error” bagaimana meminimalisasibagaimana meminimalisasi•• Proses/langkah perhitungan (computerized):Proses/langkah perhitungan (computerized):AdaAda deskripsideskripsi masalahmasalahAlgoritmaAlgoritma (alur(alur berfikir)berfikir)MenentukanMenentukan parameterparameter yangyang ada/dicariada/dicariPerhitunganPerhitunganHasilHasil
5
LangkahLangkah--langkahlangkah yangyang samasama untukuntuk problemproblemserupa/samaserupa/sama
DataData dandan algoritmaalgoritma dimasukkandimasukkan keke dalamdalam komputerkomputer PerhitunganPerhitungan dilakukandilakukan dengandengan cepatcepat dandan tepat/presisitepat/presisi
PeralatanPeralatan elektronikaelektronika Dapat menerima input data, mengolah data dan Dapat menerima input data, mengolah data dan
memberikan informasi;memberikan informasi; Menggunakan program yang tersimpan dalam memori;Menggunakan program yang tersimpan dalam memori; Dapat menyimpan program dan hasil pengolahannyaDapat menyimpan program dan hasil pengolahannya Bekerja secara otomatisBekerja secara otomatis
6
7
8
::
9
10
Alat bantu perhitungan matematis kuno (abacus, sempoa)Alat bantu perhitungan matematis kuno (abacus, sempoa); 300 BC; 300 BC
Napier’s bones Napier’s bones teknologiteknologi u melakukan perkalian melalui proses u melakukan perkalian melalui proses penambahan (logarithms); John Napier, 1617.penambahan (logarithms); John Napier, 1617.
[[------dalam penjelasan ini banyakdalam penjelasan ini banyak bagian sejarah komputer yang terlewatkanbagian sejarah komputer yang terlewatkan------]]
11
Slide rule (England, 1632); masih digunakan oleh engineerSlide rule (England, 1632); masih digunakan oleh engineer NASA sampai NASA sampai tahun 1960tahun 1960--anan
Mesin penghitung dengan penggerak roda gigi Mesin penghitung dengan penggerak roda gigi calculating clock; calculating clock; Wilhelm Schickard, 1623;Wilhelm Schickard, 1623; sudah pernah dikonsep oleh Leonardo da Vinci sudah pernah dikonsep oleh Leonardo da Vinci (1452(1452--1519).1519).
[[------dalam penjelasan ini banyakdalam penjelasan ini banyak bagian sejarah komputer yang terlewatkanbagian sejarah komputer yang terlewatkan------]]
12Computer punch card (1801~Computer punch card (1801~))
[[------dalam penjelasan ini banyakdalam penjelasan ini banyak bagian sejarah komputer yang terlewatkanbagian sejarah komputer yang terlewatkan------]]
13
The Harvard Mark I (electro mechanical computer); Harvard & IBM, 1944; 5 The Harvard Mark I (electro mechanical computer); Harvard & IBM, 1944; 5 tons, 500 mile kabel, tinggi 8 kaki, panjang 51 kaki, digerakkan oleh electric tons, 500 mile kabel, tinggi 8 kaki, panjang 51 kaki, digerakkan oleh electric motor 5 hp.motor 5 hp.
[[------dalam penjelasan ini banyakdalam penjelasan ini banyak bagian sejarah komputer yang terlewatkanbagian sejarah komputer yang terlewatkan------]]
14
Apple I, 1976, $600.Apple I, 1976, $600.
[[------dalam penjelasan ini banyakdalam penjelasan ini banyak bagian sejarah komputer yang terlewatkanbagian sejarah komputer yang terlewatkan------]]
15
Wiring dalam komputer Wiring dalam komputer silicon chip silicon chip microchipmicrochipDst, dst …Dst, dst …
Komputer generasi masa kini; yangKomputer generasi masa kini; yang kita gunakan saat ini!kita gunakan saat ini!
[[------dalam penjelasan ini banyakdalam penjelasan ini banyak bagian sejarah komputer yang terlewatkanbagian sejarah komputer yang terlewatkan------]]
Operating System (OS)Operating System (OS)
16
17
OS, sometimes called the OS, sometimes called the executiveexecutive. In computer . In computer science, the software responsible for science, the software responsible for controlling the controlling the allocation and usage of hardware resources allocation and usage of hardware resources such as such as memory; central processing unit (CPU) time, disk memory; central processing unit (CPU) time, disk space, and peripheral devices. The OS is the space, and peripheral devices. The OS is the foundation on which applications, such as wordfoundation on which applications, such as word--processing and spreadsheet programs, are built.processing and spreadsheet programs, are built.
Popular OS Popular OS Windows, Mac OS, Linux, Windows, Mac OS, Linux, UbuntuUbuntu,,Unix, DOSUnix, DOS
MobileMobile OSOS iOSiOS,, Android,Android, WindowsWindows Phone,Phone, BB,BB,FirefoxFirefox OS,OS, TizenTizen,, SymbianSymbian
18
19
PENGERTIAN DASARLOGIKA dan ALGORITMA
22
Kuliah saja
+ Organisasi+ Skill (komputer, program, otomotif, dsb)+ Bahasa asing+ Communication skill
4 tahun
5 tahun
Definisi Algoritma
Tahap Tahap Penyelesaian Penyelesaian
MasalahMasalah
Masalah
Model
Algoritma
Program
Eksekusi
Hasil
Data
Analisis
Analisis
Analisis
1. Ada Output
2. Efektifitas dan Efisiensi
3. Jumlah Langkahnya Berhingga
4. Berakhir
5. Terstruktur
Suatu Algoritma yg terbaik (The Best):“Suatu algoritma harus menghasilkan
output yg tepat guna (efektif) dlm waktu yg relatif singkat & penggunaan memori yg relatif sedikit (efesien) dgn langkah yg berhingga & prosedurnya berakhir baik
dlm keadaan diperoleh suatu solusi ataupun tdk ada solusinya.“
SebuahSebuah prosedurprosedur ketikaketika akanakan mengirimkanmengirimkan suratsuratkepadakepada temanteman::
1.1. TulisTulis suratsurat padapada secariksecarik kertaskertas suratsurat2.2. AmbilAmbil sampulsampul suratsurat atauatau amplopamplop3.3. MasukkanMasukkan suratsurat keke dalamdalam amplopamplop4.4. TutupTutup amplopamplop suratsurat dengandengan lemlem perekatperekat5.5. TulisTulis alamatalamat suratsurat ygyg dituju,dituju, jikajika tdktdk ingat,ingat, lebihlebih
dahuludahulu ambilambil bukubuku alamatalamat && caricari alamatalamat ygyg dituju,dituju, lalulalutulistulis alamatalamat tsbtsb pdpd amplopamplop suratsurat..
6.6. TempelkanTempelkan perangkoperangko padapada amplopamplop suratsurat7.7. BawaBawa suratsurat keke kantorkantor pospos utkutk diserahkandiserahkan pdpd pegawaipegawai
pospos atauatau menujumenuju keke bisbis suratsurat untukuntuk memasukkanmemasukkansuratsurat keke dlmdlm kotak/biskotak/bis suratsurat..
• Menggunakan bahasa natural (Bahasa manusia: Indonesia, Inggris)
Kelemahannya masih sering membingungkan (ambigu) / sulit dipahami.
• Menggunakan FlowchartBaik karena alur algoritma dapat dilihat secara visual, tetapi repot
pembuatannya jika algoritma panjang
• Menggunakan PseudocodeSudah dekat dengan bahasa pemrograman, tetapi sulit dimengerti oleh orang yang belum tahu pemrograman
Tahap Analisa Algoritma
1. Bagaimana merencanakan algoritma
2. Bagaimana menyatakan suatu algoritma (menulis algoritma)
3. Bagaimana validitas suatu algoritma.
4. Bagaimana Menganalisa suatu Algoritma.
5. Bagaimana Menguji Program dari suatu Algoritma
Ad.1. Bagaimana merencanakan algoritma
Dengan Mendefinisikan masalah.
Contoh : Permasalahan menghitung luas lingkaran, dengan data yang diketahui adalah diameter lingkaran.
Rumus : ∏ . r2 dengan Phi = 3.14 atau 22/7
Ad.2. Bagaimana menyatakan suatu algoritma (menulis algoritma)
– Dengan psudocodeSuatu cara penulisan algoritma agar ide dan logika dari algoritma dapat disampaikan/ diekspresikan menggunakan gaya bahasa pemrograman tertentu.
Phi 3.14
Input (diameter)
Radius diameter / 2
Luas phi * radius * radius
Output (Luas)
End
Start
Phi = 3.14
Input(diameter)
Radius = diameter/2Luas = phi * radius * radius
OutputLuas
Stop
34
35
36
37
38
39
40
LatihanLatihan
Bila bilangan A negatif, tambahkan 3 pada A. Jika tidak, kurangi 3 dari A.
41
Tugas Tugas 22Buatlah algoritma dalam bentuk flow chart Buatlah algoritma dalam bentuk flow chart yang mengandung yang mengandung instruksi bersyaratinstruksi bersyarat::1.1. Berkaitan masalah keseharian anda (misalnya memilih mata Berkaitan masalah keseharian anda (misalnya memilih mata
kuliah, motor/mobil mogok, ban kempes, menentukan kuliah, motor/mobil mogok, ban kempes, menentukan aktivitas liburan, masalah keuangan, dsb.) aktivitas liburan, masalah keuangan, dsb.)
2.2. Untuk memecahkan persamaan Fisika (gerak jatuh bebas, Untuk memecahkan persamaan Fisika (gerak jatuh bebas, gerak peluru, konversi satuan, dsb.) atau persamaan gerak peluru, konversi satuan, dsb.) atau persamaan Matematika yang sudah anda pelajari.Matematika yang sudah anda pelajari.
Catatan:Catatan:-- Dikumpulkan paling lambat Dikumpulkan paling lambat 26 26 Maret Maret 20120144 boleh diketik atau boleh diketik atau
tulis tangan.tulis tangan.-- Pilihlah kasus anda sendiriPilihlah kasus anda sendiri--sendiri. Jika ada jawaban yang sendiri. Jika ada jawaban yang
sama, nilai akan dibagi sesuai banyaknya jawaban yang sama.sama, nilai akan dibagi sesuai banyaknya jawaban yang sama.-- Bisa dikirim via email: [email protected]; dengan subject Bisa dikirim via email: [email protected]; dengan subject
email: Tugas Progkom.email: Tugas Progkom.
Tugas Tugas 22Buatlah algoritma dalam bentuk flow chart Buatlah algoritma dalam bentuk flow chart yang mengandung yang mengandung instruksi bersyaratinstruksi bersyarat::1.1. Berkaitan masalah keseharian anda (misalnya memilih mata Berkaitan masalah keseharian anda (misalnya memilih mata
kuliah, motor/mobil mogok, ban kempes, menentukan kuliah, motor/mobil mogok, ban kempes, menentukan aktivitas liburan, masalah keuangan, dsb.) aktivitas liburan, masalah keuangan, dsb.)
2.2. Untuk memecahkan persamaan Fisika (gerak jatuh bebas, Untuk memecahkan persamaan Fisika (gerak jatuh bebas, gerak peluru, konversi satuan, dsb.) atau persamaan gerak peluru, konversi satuan, dsb.) atau persamaan Matematika yang sudah anda pelajari.Matematika yang sudah anda pelajari.
Catatan:Catatan:-- Dikumpulkan paling lambat Dikumpulkan paling lambat 26 26 Maret Maret 20120144 boleh diketik atau boleh diketik atau
tulis tangan.tulis tangan.-- Pilihlah kasus anda sendiriPilihlah kasus anda sendiri--sendiri. Jika ada jawaban yang sendiri. Jika ada jawaban yang
sama, nilai akan dibagi sesuai banyaknya jawaban yang sama.sama, nilai akan dibagi sesuai banyaknya jawaban yang sama.-- Bisa dikirim via email: [email protected]; dengan subject Bisa dikirim via email: [email protected]; dengan subject
email: Tugas Progkom.email: Tugas Progkom.
42
Catatan:o Dalam kurikulum Teknik Mesin UNUD, ada 2
mata kuliah yang berhubungan denganpemrograman komputer, yaitu: Pemrograman Komputer Computational Fluid Dynamics (CFD) =
Komputasi Dinamika Fluida.o Pemrograman Komputer bersifat
pengenalan dan masih level basic/dasar.o CFD MK Pilihan untuk konsentrasi Konversi
Energi, hanya sampai kasus 2D.
ContohContoh--contoh hasil dari program CFDcontoh hasil dari program CFD
43
44
Gambar di atas menunjukkan aliran fluida di belakang benda berbentuk silinder bulat misalnya: tiang jembatan, menara, gedung berbentuk bulat, cerobong, dsb.
Bisakah kita menghitung tekanan, kecepatan, dan sirkulasi yang terjadi di belakang silinder?
Bisakah kita membuat program menggunakan salah satu bahasa pemrograman untuk menghitung hal tersebut?
45
Distribusi tekanan aliran melintasi silinder bulat. Besarnya tekanan dinyatakan dengan warna yang berbeda.
Distribusi kecepatan aliran melintasi silinder bulat. Besarnya kecepatan dinyatakan dengan warna yang berbeda.
Silinder bulat
Silinder bulat
Gambar di atas merupakan visualisasi aliran melintasi silinder bulat. Warna-warna menyatakan besarnya kecepatan dan tekanan, yang merupakan hasil penyelesaian persamaan aliran fluida (perhitungan numerik) yang rumit dan kompleks.
Untuk kasus 2 dimensi (2D), kasus tersebut bisa menggunakan bahasa pemrograman komputer, misalnya FORTRAN, namun membutuhkan pemrograman yang rumit dan sulit.
46
Gambar di atas menunjukkan hasil visualisasi dan penyelesaian perhitungan numerik aliran melintasi silinder bulat 3 dimensi (3D).
Penyelesaian secara langsung menggunakan pemrograman komputer menjadi terlalu panjang dan rumit.
Pada level ini, penyelesaiannya dilakukan menggunakan suatu bahasa pemrograman yang sudah dalam bentuk paket program siap pakai dengan menu-menu yang lebih user-friendly.
47
Gambar di atas menunjukkan penyelesaian perhitungan numerik aliran melintasi belokan pipa 3D.
48
Bisakah pemrograman komputer sederhana bisa membuat simulasi pengujian aerodinamika mobil balap di atas?
Simulasi dalam gambar di atas dilakukan menggunakan paket program yang merupakan sebuah konstruksi sangar besar pemrograman yang secara khusus didesain untuk tujuan yang tertentu (dalam kasus di atas untuk simulasi aliran fluida).
Contoh program untuk aliran fluida (disebut computational fluid dynamics, CFD): ANSYS, STAR CCD+, Comsol, dll.
49