Pendahuluan. Komputasi Nuklir. 29 Oktober Komputasi Nuklir Pendahuluan 29 Oktober / 41

Ukuran: px
Mulai penontonan dengan halaman:

Download "Pendahuluan. Komputasi Nuklir. 29 Oktober Komputasi Nuklir Pendahuluan 29 Oktober / 41"

Transkripsi

1 Pendahuluan Komputasi Nuklir 29 Oktober 2015 Komputasi Nuklir Pendahuluan 29 Oktober / 41

2 Outline 1 Pendahuluan 2 Algoritma 3 Bahasa Pemrograman 4 Implementasi aturan trapesium menggunakan bahasa yang berbeda Komputasi Nuklir Pendahuluan 29 Oktober / 41

3 Pendahuluan Outline 1 Pendahuluan 2 Algoritma 3 Bahasa Pemrograman 4 Implementasi aturan trapesium menggunakan bahasa yang berbeda Komputasi Nuklir Pendahuluan 29 Oktober / 41

4 Pendahuluan Langkah penyelesaian permasalahan secara numerik Ketika permasalahan sains harus dipecahkan dengan bantuan komputasi numerik, prosedur penyelesaiannya meliputi beberapa langkah: 1 Memahami permasalahan dan memformulasikan model matematis 2 Menggunakan metode numerik untuk menyelesaikan problem matematis 3 Menerapkan metode numerik pada program komputer 4 Melakukan verifikasi bahwa hasil dari program adalah benar secara matematis 5 Menerapkan program pada permasalahan ilmiah dan menginterpretasikan hasil Komputasi Nuklir Pendahuluan 29 Oktober / 41

5 Pendahuluan Persyaratan software Software yang melakukan komputasi ilmiah harus: 1 Benar secara matematis 2 Efisien (kecepatan, penggunaan memori) 3 Mudah untuk dikelola dan dikembangkan Jika terdapat kesalahan pada program, perhitungan kemungkinan besar salah dan hasilnya menjadi tidak berguna. Banyak jenis komputasi yang memerlukan waktu komputasi berhari-hari atau berminggu-minggu serta membutuhkan memori gabungan dari sejumlah besar komputer. Oleh karena itu efisiensi terkait dengan kecepatan dan penggunaan meori mejadi hal yang sangat penting. Sayangnya, banyak usaha perbaikan efisiensi justru mudah untuk menimbulkan error pada program yang dibuat. Kompleksitas software ilmiah juga mencapai limit di mana pengelolaannya dan pengembangannya di masa depan menjadi sulit untuk dilakukan, dan memodifikasi program yang kompleks juga dapat menimbulkan error yang cukup signifikan. Komputasi Nuklir Pendahuluan 29 Oktober / 41

6 Pendahuluan Software development skills Seorang pengembang perangkat lunak ilmiah perlu memiliki keterampilan (skills) yang memenuhi persyaratan tersebut. 1 Mampu memahami problem matematis yang akan diselesaikan 2 Mampu memahami metode numerik yang akan digunakan 3 Mampu mendesain algoritma dan struktur data yang sesuai 4 Mampu memilih bahasa pemrograman dan tools yang paling sesuai 5 Mampu menggunakan libraries 6 Mampu memverifikasi tingkat kebenaran hasil yang diperoleh Komputasi Nuklir Pendahuluan 29 Oktober / 41

7 Algoritma Outline 1 Pendahuluan 2 Algoritma 3 Bahasa Pemrograman 4 Implementasi aturan trapesium menggunakan bahasa yang berbeda Komputasi Nuklir Pendahuluan 29 Oktober / 41

8 Algoritma Pseudo Code Pemetaan dari problem fisis menjadi program komputer mempunyai beberapa karakteristik yang tidak tergantung kepada permasalahan yang sedang diselesaikan. Problem fisis harus dinyatakan sebagai model matematis. Untuk setiap problem matematis, kita perlu memilih metode solusi numerik. Setiap metode dinyatakan sebagai algoritma dan diimplementasikan sebagai bagian dari program, biasanya berupa fungsi. Program atau code merupakan sekumpulan fungsi yang mengimplementasikan berbagai algoritma (atau langkah-langkah solusi) dari problem secara keseluruhan. Komunikasi di antara fungsi tergantung pada jenis struktur data yang digunakan. Oleh karena itu, software numerik merupakan algoritma dan struktur data yang saling mempengaruhi. Komputasi Nuklir Pendahuluan 29 Oktober / 41

9 Algoritma Algoritma yang lengkap biasanya dinyatakan dalam pseudo code, yaitu campuran antara formula matematis dengan instruksi dari bahasa komputer. Tujuannya adalah agar algoritma dapat diterjemahkan dengan mudah ke bahasa pemrograman. Beberapa instruksi penting yang digunakan dalam pseudo code (dan program komputer) adalah 1 Assignment: notasi s s + 2 berarti kita memberikan nilai dari ekspresi s + 2 ke s, yaitu s diganti dengan nilai yang baru, 2 Kalang for: kalang yang diatur dengan pembilang yang berjalan di antara dua nilai dengan panjang langkah tertentu, 3 Kalang while: kalang yang diatur dengan kondisi boolean, 4 Fungsi: subprogram yang mengambil sekumpulan variabel sebagai input (argumen) dan mengembalikan sekumpulan variabel, 5 Larik (array): urutan bilangan, misalnya u 1, u 2,..., u 10. Komputasi Nuklir Pendahuluan 29 Oktober / 41

10 Algoritma Contoh: n 1 f (a + ih) i=1 dengan f adalah fungsi dengan variabel skalar, a dan h adalah konstanta. Kalang for: 1: s = 0 2: for i = 1,..., n 1 do 3: s s + f (a + ih) 4: end for Kalang while: 1: s = 0 2: i = 1 3: while i n 1 do 4: s s + f (a + ih) 5: i i + 1 6: end while Komputasi Nuklir Pendahuluan 29 Oktober / 41

11 Algoritma Contoh: Misal kita ingin mengintegralkan fungsi f (x) dari x = a sampai x = b menggunaan metode trapesium. b a f (x)dx h 2 f (a) + h n 1 2 f (b) + h f (a + ih), 1: function trapesium(a,b,f,n) 2: h = b a n 3: s = 0 4: for i = 1,..., n 1 do 5: s s + hf (a + ih) 6: end for 7: s s + h 2 f (a) + h 2 f (b) 8: return s 9: end function i=1 h = b a n (1) 2n perkalian, 2n penjumlahan, 3 pembagian dan n + 1 pemanggilan fungsi Komputasi Nuklir Pendahuluan 29 Oktober / 41

12 Algoritma Optimasi perhitungan Rumusan yang lebih efisien: { } b n 1 f (x)dx h 0, 5(f (a) + f (b)) + f (a + ih), h = b a n a 1: function trapesium(a,b,f,n) 2: h = b a n 3: s = 0 4: x = a 5: for i = 1,..., n 1 do 6: x x + h 7: s s + f (x) 8: end for 9: s s + 0, 5(f (a) + f (b)) 10: s hs 11: return s 12: end function i=1 (2) 1 perkalian, 2n penjumlahan, 1 pembagian dan n + 1 pemanggilan fungsi Komputasi Nuklir Pendahuluan 29 Oktober / 41

13 Algoritma Pedoman untuk mengimplementasikan metode numerik 1 Gunakan algoritma yang mudah untuk dipahami dan dapat dicari dengan mudah di literatur. 2 Buat program komputer sedekat mungkin dengan algoritmanya, sehingga korespondensi satu-satu dapat diperiksa dengan membandingkan kode dan algoritmanya. 3 Uji implementasi dengan problem yang sederhana di mana hasil yang eksak telah diketahui. 4 Hati-hati dengan optimisasi manual sebelum program diverifikasi. 5 Setelah optimisasi manual diimplementasikan, kompilasi program dengan mengaktifkan opsi optimisasi kompiler, jalankan program aslinya dan program yang telah dioptimasi, periksa apakah hasilnya ekivalen dan bandingkan waktu yang diperlukan untuk menjalankan kedua program tersebut. Komputasi Nuklir Pendahuluan 29 Oktober / 41

14 Algoritma Rekomendasi: Hindari optimasi di tahapan awal pengembangan sofware karena program yang tidak dioptimasi biasanya lebih mudah dipahami dan lebih mudah untuk di-debug. Donald Knuth Premature optimization is the roof of all evil. Komputasi Nuklir Pendahuluan 29 Oktober / 41

15 Bahasa Pemrograman Outline 1 Pendahuluan 2 Algoritma 3 Bahasa Pemrograman 4 Implementasi aturan trapesium menggunakan bahasa yang berbeda Komputasi Nuklir Pendahuluan 29 Oktober / 41

16 Bahasa Pemrograman Ada ratusan bahasa pemrograman, sebagian cocok untuk perhitungan ilmiah, sebagian yang lain tidak. Menentukan bahasa pemrograman yang digunakan tentunya tergantung pada selera dan pengalaman pribadi. Tapi penguasaan terhadap beberapa bahasa pemrograman serta kemampuan untuk berpindah dengan cepat ke bahasa yang baru sangatlah diperlukan. Alasannya karena tools yang berbeda mempunyai kekuatan dan kelemahan yang berbeda sehingga cocok untuk jenis-jenis permasalahan yang berbeda. Komputasi Nuklir Pendahuluan 29 Oktober / 41

17 Bahasa Pemrograman Statis vs Dinamis Fortran, C, C++ dan Java disebut dengan strongly typed atau statically typed, karena setiap jenis variabel harus dituliskan secara eksplisit. Matlab, Python, Octave adalah contoh bahasa pemrograman yang tidak perlu dituliskan jenis variabel secara eksplisit dan jenis variabel dapat berubah selama program dijalankan dynamically typed. Dynamic typing memberikan fleksibilitas yang besar dan sintaksisnya lebih dekat dengan notasi matematis pada bahasa pseudo code. Static typing sangat berguna bagi pemrogram pemula karena dapat menghindari kesalahan input jenis variabel. Komputasi Nuklir Pendahuluan 29 Oktober / 41

18 Bahasa Pemrograman Efisiensi komputasi Beberapa bahasa komputer lebih cepat dibandingkan dengan yang lain. Bahasa pemrograman dapat dikelompokkan menjadi interpreter atau kompiler. Pembedaan ini merefleksikan potensi kecepatan bahasa dan oleh karenanya berpengaruh terhadap penggunaannya di bidang komputasi ilmiah. Umumnya kompiler mempunyai static typing, dan interpreter menggunakan dynamic typing. Java terletak di tengah-tengah: memiliki static typing, awalnya diinterpretasikan, tapi kemudian dilengkapi dengan teknik kompiler. Fortran, C dan C++ adalah kompiler yang menerjemahkan bahasa program kompute ke kode mesin, yaitu instruksi primitif tingkat rendah yang terkait dengan perangkat keras. Kompiler berjalan lebih cepat daripada interpreter karena beroperasi menggunakan kode mesin. Matlab, Python, Octave adalah interpreter. Sebuah program dibaca baris per baris oleh interpreter yang menerjemahkannya menjadi panggilan fungsi di library. Proses penerjemahan berlangsung ketika program berjalan. Keuntungan dari interpreter adalah tingkat fleksibilitasnya yang lebih tinggi, pernyataan dan struktur data dapat diubah secara dinamis ketika program berjalan. Komputasi Nuklir Pendahuluan 29 Oktober / 41

19 Bahasa Pemrograman Dukungan terhadap objek Fortran 77 hanya mempunyai beberapa jenis variabel: integer, real, array, complex dan character string. C memperbolehkan pemrogram untuk mendefinisikan jenis variabel baru. struct, merupakan kumpulan dari variabel-variabel dasar C dan variabel struct lain yang telah didefinisikan sebelumnya. C++ merupakan ekstensi dari C yang menawarkan jenis variabel yang didefinisikan oleh pengguna yang terdiri dari fungsi dan data. Jenis ini disebut dengan class. Fortran 90 dan Fortran 95 merupakan ekstensi dari Fortran 77 (dan versi yang lebih awal: Fortran IV dan Fortran 66) di mana programmer dapat mengumpulkan data dan fungsi pada module. Module dapat melakukan banyak hal seperti halnya class, tetapi class di C++ lebih unggul daripada modul di Fortran 90/95. Fortran 2000 mempunyai module dengan fungsionalitas class yang lebih baik. Komputasi Nuklir Pendahuluan 29 Oktober / 41

20 Bahasa Pemrograman Java mendukung class, tetapi fleksibilitasnya kurang daripada di C++. Sebaliknya, Java mempunyai fungsionalitas yang membuat bahasa tersebut lebih user-friendly dan lebih mudah untuk diprogram dibandingkan dengan C++. Python memiliki class yang lebih maju atau advanced dibandingkan dengan C++. Matlab awalnya hanya memiliki matriks dan string, tetapi pengembangan Matlab saat ini telah menyertakan pula definisi class. Komputasi Nuklir Pendahuluan 29 Oktober / 41

21 Outline 1 Pendahuluan 2 Algoritma 3 Bahasa Pemrograman 4 Implementasi aturan trapesium menggunakan bahasa yang berbeda Komputasi Nuklir Pendahuluan 29 Oktober / 41

22 Struktur program Struktur utama program untuk melakukan integrasi numerik dengan bantuan aturan trapesium tidak tergantung pada tool pemrograman yang digunaan. Model matematis yang digunakan adalah I = b a f (x)dx (3) dan tujuannya adalah menghitung pendekatan terhadap nilai I. Pada program kita perlu untuk: 1 menginisialisasi data masukan: a, b, dan n 2 menentukan fungsi f (x) 3 memanggil modul program yang mengimplementasikan algoritma trapesium yang dioptimasi 4 menuliskan nilai dari I Untuk perhitungan ini, ditentukan a = 0, b = 2 dan n = Fungsi f (x) = e x 2 log(1 + x sin x) diimplementasikan dengan nama f1. Komputasi Nuklir Pendahuluan 29 Oktober / 41

23 Fortran 77 Didesain pada tahun 1950an sebagai bahasa tingkat tinggi alternatif terhadap assembly. Perkembangan: Fortran IV, Fortran 66, Fortran 77, Fortran 90, Fortran 95 dan Fortran Bahasa yang cukup primitif: hanya ada beberapa jenis variabel (integer, real, complex, array dan string), beberapa keyword, beberapa struktur kontrol dan tata letak yang ketat. Banyak digunakan di aplikasi komputasi ilmiah, karena sifatnya yang sederhana dan kinerja yang tinggi. Cocok untuk mengimplementasikan algoritma yang menggunakan kalang yang sangat intensif perhitungannya. Komputasi Nuklir Pendahuluan 29 Oktober / 41

24 Aturan trapesium r e a l 8 f u n c t i o n t r a p e s i u m ( a, b, f, n ) r e a l 8 a, b, f e x t e r n a l f i n t e g e r n r e a l 8 s, h, x i n t e g e r i h = ( b a )/ f l o a t ( n ) s = 0 x = a do i = 1, n 1 x = x + h s = s + f ( x ) end do s = 0. 5 ( f ( a ) + f ( b ) ) + s t r a p e s i u m = h s r e t u r n end Komputasi Nuklir Pendahuluan 29 Oktober / 41

25 Implementasi program C f u n g s i yang akan d i i n t e g r a l k a n : r e a l 8 f u n c t i o n f 1 ( x ) r e a l 8 x f 1 = exp( x x ) log (1+x s i n ( x ) ) r e t u r n end C program utama : program i n t e g r a t i o n i n t e g e r n r e a l 8 a, b, r e s u l t e x t e r n a l f 1 a=0 b=2 n = 1000 r e s u l t = t r a p e s i u m ( a, b, f1, n ) w r i t e (, ) r e s u l t end Komputasi Nuklir Pendahuluan 29 Oktober / 41

26 Compiling, linking dan running Anggap program di atas disimpan dalam file int.f unix> g77 -O3 -c int.f # kompilasi unix> g77 -o int int.o # linking unix>./int Komputasi Nuklir Pendahuluan 29 Oktober / 41

27 C dan C++ C dikembangkan di awal tahun 1970an untuk UNIX OS dan menjadi dominan digunakan di akhir 1980an. Lebih advanced daripada F77, dengan memberikan fleksibilitas melalui tipe struct, namun seringkali diimbangi dengan berkurangnya kinerja komputasi. C++ didesain untuk menyediakan class dan OOP seperti bahasa SIMULA 67, namun dengan sintaksis C dan C sebagai subset. Aplikasi yang dapat mengambil manfaat dari struktur data yang rumit dan pemrograman OOP akan lebih sederhana implementasinya dibandingkan dengan F77 atau C. Akan tetapi C++ tidak dapat bersaing dengan F77 dalam hal kecepatan komputasi, meskipun perbedaannya kecil. Dengan sedikit otak-atik, C dan C++ bisa secepat atau bahkan lebih cepat daripada F77, tetapi hal ini tergantung dari jenis algoritma dan struktur data yang terlibat. Komputasi Nuklir Pendahuluan 29 Oktober / 41

28 Aturan trapesium typedef double ( f p t r ) ( double x ) ; double Trapesium ( double a, double b, f p t r f, i n t n ) { double h = ( b a )/ double ( n ) ; double s = 0 ; double x = a ; f o r ( i n t i = 1 ; i <= n 1; i ++) { x = x + h ; s = s + f ( x ) ; } s = 0. 5 ( f ( a ) + f ( b ) ) + s ; r e t u r n h s ; } Komputasi Nuklir Pendahuluan 29 Oktober / 41

29 Implementasi program #i n c l u d e <i o s t r e a m > #i n c l u d e <cmath> / f u n g s i t r a p e s i u m : /... / f u n g s i yang akan d i i n t e g r a l k a n / double f 1 ( double x ) { r e t u r n exp( x x ) l o g (1+x s i n ( x ) ) ; } i n t main ( ) // program utama { double a = 0, b = 2 ; i n t n = 1000; double r e s u l t = Trapesium ( a, b, f1, n ) ; s t d : : cout << r e s u l t << s t d : : e n d l ; } Komputasi Nuklir Pendahuluan 29 Oktober / 41

30 Compiling, linking dan running Anggap program di atas disimpan dalam file int.cpp unix> g++ -O3 -c int.cpp unix> g++ -o int int.o unix>./int # kompilasi int.cpp ke int.o # linking; menghasilkan int executable Komputasi Nuklir Pendahuluan 29 Oktober / 41

31 Java Java dibuat oleh Sun Microsystem di awal tahun 1990an dan dapat dianggap sebagai versi C++ yang lebih sederhana dan lebih user-friendly. Program Java tidak dikompilasi secara klasik seperti Fortran, C dan C++ sehingga kinerjanya sedikit negatif untuk komputasi ilmiah. Minat awal untuk menggunakan Java di dunia komputasi ilmiah telah turun, namun masih dominan untuk pembelajaran pemrograman komputer. Komputasi Nuklir Pendahuluan 29 Oktober / 41

32 Aturan trapesium import j a v a. l a n g. ; i n t e r f a c e Func { // c l a s s d a s a r untuk f u n g s i f ( x ) p u b l i c double f ( double x ) ; } c l a s s Trapesium { p u b l i c s t a t i c double i n t e g r a t e ( double a, double b, Func f, i n t n ) { double h = ( b a ) / ( ( double ) n ) ; double s = 0 ; double x = a ; i n t i ; f o r ( i = 1 ; i <= n 1; i ++) { x = x + h ; s = s + f. f ( x ) ; } s = 0. 5 ( f. f ( a ) + f. f ( b ) ) + s ; r e t u r n h s ; } } Komputasi Nuklir Pendahuluan 29 Oktober / 41

33 Implementasi program c l a s s f 1 implements Func { p u b l i c double f ( double x ) { r e t u r n Math. exp( x x ) Math. l o g (1+x Math. s i n ( x ) ) ; } } c l a s s Demo { p u b l i c s t a t i c void main ( S t r i n g a r g v [ ] ) { double a = 0 ; double b = 2 ; i n t n = 1000; double r e s u l t = 0 ; i n t i ; f 1 f = new f 1 ( ) ; // f 2 f = new f 2 ( ) ; f o r ( i = 1 ; i <= 10000; i ++) { r e s u l t = Trapesium. i n t e g r a t e ( a, b, f, n ) ; } System. out. p r i n t l n ( r e s u l t ) ; } } Komputasi Nuklir Pendahuluan 29 Oktober / 41

34 Compiling, linking dan running Anggap program di atas disimpan dalam file Trapesium.java unix> javac Trapesium.java unix> java Demo # kompilasi # running Komputasi Nuklir Pendahuluan 29 Oktober / 41

35 MATLAB Matlab awalnya merupakan front end yang user-friendly terhadap library F77 yang efisien untuk keperluan komputasi aljabar linear numerik. Selama tahun 80an dan terutama 90an, pengembangan Matlab menjadi lebih baik dan lebih user-friendly dan menjadikannya platform pengembangan untuk aplikasi komputasi ilmiah. Bekerja dengan Matlab tidak terlalu jauh berbeda dengan pemrograman F77, tetapi terdapat perbedaan mendasar: Pernyataan dapat diberikan secara interaktif, yaitu kita tuliskan perintah dan hasilnya langsung dapat dilihat. Tidak perlu mendeklarasikan variabel (dynamic typing). Matlab mempunyai banyak perintah tingkat tinggi yang menggantikan keperluan penulisan kalang secara rinci. Jika terdapat kesalahan pada pernyataan, Matlab akan memberikan pesan kesalahan yang mudah dipahami. Matlab menyediakan fitur visualisasi yang maju dan terintegrasi. Komputasi Nuklir Pendahuluan 29 Oktober / 41

36 Fungsi yang akan dipanggil secara interaktif pada lingkungan Matlab atau dari script Matlab harus berupa source code yang ditulis pada file dengan ekstensi.m. Isi file Trapesium.m f u n c t i o n r = Trapesium ( a, b, f, n ) % METODE TRAPESIUM I n t e g r a s i s e c a r a numerik d a r i a ke b % menggunakan metode t r a p e s i u m f = f c n c h k ( f ) ; h = ( b a )/ n ; s = 0 ; x = a ; f o r i = 1 : n 1 x = x + h ; s = s + f e v a l ( f, x ) ; end s = 0. 5 ( f e v a l ( f, a ) + f e v a l ( f, b ) ) + s ; r = h s ; Komputasi Nuklir Pendahuluan 29 Oktober / 41

37 Fungsi yang akan diintegralkan disimpan di file.m lain, misalnya f1.m f u n c t i o n y = f 1 ( x ) y = exp( x x ) log (1+x s i n ( x ) ) ; Untuk mengintegralkan f1, kita memanggil fungsi Trapesium di lingkungan Matlab interaktif. a = 0 ; b = 2 ; n = 1 0 ; r e s u l t = Trapesium ( a, n ) ; d i s p ( r e s u l t ) ; % p r i n t r e s u l t Komputasi Nuklir Pendahuluan 29 Oktober / 41

38 Python Python adlaah bahasa pemrograman yang sangat fleksibel yang mendukung banyak konsep maju dibandingkan C atau Fortran, dan juga konstruksi datanya lebih powerful dibandingkan C++ atau Java. Programnya cenderung lebih kecil, lebih ringkas dan lebih mudah dibaca dibandingkan dengan Fortran, C, C++ dan Java. Karena Python adalah interpreter, maka untuk beberapa konstruksinya (terutama kalang) berjalan lebih lambat dibandingkan Fortran, C, C++ atau Java. Akan tetapi untuk banyak aplikasi terkait komputasi ilmiah, Python cukup cepat. Adanya dukungan library yang cukup handal untuk komputasi ilmiah, misalnya NumPy, SciPy dan Matplotlib. Matlab dan Python banyak kesamaannya: mudah dipelajari, punya sintaksis yang sangat bersih, dan mempunyai tool tingkat tinggi untuk melakukan operasi kompleks dengan hanya beberapa pernyataan saja. Komputasi Nuklir Pendahuluan 29 Oktober / 41

39 Variabel di Python dapat langsung digunakan, tanpa harus disebutkan jenisnya secara eksplisit. Karena sintaksis Python sangat dekat dengan notasi matematika, maka perbedaan antara algoritma dengan program Python menjadi kecil. #! / u s r / b i n / env python from math import def Trapesium ( a, b, f, n ) : h = ( b a )/ f l o a t ( n ) s = 0 x = a f o r i i n range ( 1, n, 1 ) : x = x + h s = s + f ( x ) s = 0. 5 ( f ( a ) + f ( b ) ) + s r e t u r n h s def f 1 ( x ) : f = exp( x x ) l o g (1+x s i n ( x ) ) r e t u r n f a = 0 ; b = 2 ; n = 1000 r e s u l t = Trapesium ( a, b, f1, n ) p r i n t r e s u l t Komputasi Nuklir Pendahuluan 29 Oktober / 41

40 Tidak diperlukan proses kompilasi program, karena Python adalah interpreter. Untuk menjalankan program, cukup dengan mengetikkan nama file, misal int.py di Unix/Linux/Mac, atau menuliskan unix> python int.py Komputasi Nuklir Pendahuluan 29 Oktober / 41

41 Perbandingan running time Tabel: default Bahasa Waktu relatif Fortran 1 C++ 1 Java 2,1 Matlab 85 2 (dengan vektorisasi) Python 14 2 (dengan vektorisasi) Komputasi Nuklir Pendahuluan 29 Oktober / 41

ALGORITMA PEMROGRAMAN 1C PENDAHULUAN KONSEP BAHASA PEMROGRAMAN

ALGORITMA PEMROGRAMAN 1C PENDAHULUAN KONSEP BAHASA PEMROGRAMAN ALGORITMA PEMROGRAMAN 1C PENDAHULUAN KONSEP BAHASA PEMROGRAMAN Indah Wahyuni KONSEP DASAR PEMROGRAMAN Program merupakan himpunan atau kumpulan instruksi tertulis yang dibuat oleh programer atau suatu bagian

Lebih terperinci

BAB I PENGANTAR Pendahuluan Penyajian 1.1 Latar Belakang 1.2 Algoritma dan Struktur Data

BAB I PENGANTAR Pendahuluan Penyajian 1.1 Latar Belakang 1.2 Algoritma dan Struktur Data BAB I PENGANTAR Pendahuluan Program komputer dibuat berdasarkan langkah-langkah logis untuk menyelesaikan masalah. Lagkah-langkah tersebut ditulis dalam suatu instruksi yang bisa dipahami oleh komputer,

Lebih terperinci

Compiler & Interpreter

Compiler & Interpreter Compiler & Interpreter ICT Nama Kelompok Dyah Kamiswari Sarah Apriliana Stania Ajeng IT AeU Politeknik Negeri Jakarta KOMPILATOR Kompilator (Inggris: compiler) adalah sebuah program komputer yang berguna

Lebih terperinci

SUMBER BELAJAR PENUNJANG PLPG

SUMBER BELAJAR PENUNJANG PLPG SUMBER BELAJAR PENUNJANG PLPG 2017 [TIK] BAB VIII PEMROGRAMAN BERORIENTASI OBJEK [Alfa Faridh Suni] KEMENTERIAN PENDIDIKAN DAN KEBUDAYAAN DIREKTORAT JENDERAL GURU DAN TENAGA KEPENDIDIKAN 2017 BAB VIII

Lebih terperinci

Algoritma dan Struktur Data

Algoritma dan Struktur Data Algoritma dan Struktur Data Algoritma Pemrograman Bekti Wulandari, M.Pd Kelas B TE 2014 Program Program: sederetan perintah-perintah yang harus dikerjakan oleh komputer untuk menyelesaikan masalah. 3 level

Lebih terperinci

LAPORAN PRAKTIKUM 1 TEKNIK KOMPILASI

LAPORAN PRAKTIKUM 1 TEKNIK KOMPILASI LAPORAN PRAKTIKUM 1 TEKNIK KOMPILASI DI SUSUN OLEH : ADITYA TUNGGAL PRAKOSO 3201216005 PRODI TEKNIK INFORMATIKA JURUSAN TEKNIK ELEKTRO POLITEKNIK NEGERI PONTIANAK TAHUN 2015 BAB 1 TEORI PRAKTIKUM A. BAHASA

Lebih terperinci

Dasar Pemrograman. Nisa ul Hafidhoh

Dasar Pemrograman. Nisa ul Hafidhoh Dasar Pemrograman Nisa ul Hafidhoh nisa@dsn.dinus.ac.id 08156114760 Rencana Kuliah W Pokok Bahasan 1 Pendahuluan 2 Notasi Algoritmik, Tipe Data 3 Perintah Dasar 4 Aksi Sekuensial 5 Analisa Kasus 6 Analisa

Lebih terperinci

Pendahuluan Pemrograman Mikrokontroler

Pendahuluan Pemrograman Mikrokontroler Pendahuluan Pemrograman Mikrokontroler Pokok Bahasan: 1. Pemrograman C 2. Pengalokasian Memory Tujuan Belajar: Setelah mempelajari dalam bab ini, mahasiswa diharapkan mampu: 1. Memahami dan Menjelaskan

Lebih terperinci

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom DASAR PEMROGRAMAN PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom https://www.facebook.com/groups/dasarpemrogramanc TUJUAN Mengenal sejarah, struktur, sintaks

Lebih terperinci

Pengenalan Pemrograman

Pengenalan Pemrograman Pengenalan Pemrograman 1 Pemrograman Suatu kumpulan urutan perintah ke komputer untuk mengerjakan sesuatu, dimana instruksi tersebut menggunakan bahasa yang dimengerti oleh komputer atau dikenal dengan

Lebih terperinci

PERTEMUAN 2 KONSEP DASAR PEMROGRAMAN

PERTEMUAN 2 KONSEP DASAR PEMROGRAMAN PERTEMUAN 2 KONSEP DASAR PEMROGRAMAN I. Algoritma Pemrograman Yang Baik Ciri-ciri algoritma pemrograman yang baik adalah: 1. Memiliki logika perhitungan/metode yang tepat dalam memecahkan masalah 2. Menghasilkan

Lebih terperinci

2 TIPE DATA DAN VARIABEL

2 TIPE DATA DAN VARIABEL BAB 2 TIPE DATA DAN VARIABEL Kompetensi Dasar dan Indikator : Setelah mengikuti materi kuliah ini mahasiswa mampu menggunakan tipe data dan variable yang ada dalam Java, dengan indikator mahasiswa mampu:

Lebih terperinci

Algoritma dan Struktur Data

Algoritma dan Struktur Data Algoritma dan Struktur Data Program Program: sederetan perintah-perintah yang harus dikerjakan oleh komputer untuk menyelesaikan masalah. 3 level bahasa pemrograman: 1. Bahasa tingkat rendah 2. Bahasa

Lebih terperinci

1.1. Sejarah Bahasa C

1.1. Sejarah Bahasa C Bab 1 Pendahuluan 1.1. Sejarah Bahasa C Sejarah perkembangan dan latar belakang munculnya bahasa C adalah seperti dalam Gambar 1. Gambar 1: Sejarah Bahasa C Boleh dikatakan bahwa akar dari bahasa C adalah

Lebih terperinci

C / C++ / JAVA / C# / Python?

C / C++ / JAVA / C# / Python? C / C++ / JAVA / C# / Python? C / C++, Python, dan Java merupakan bahasa pemrograman yang umum digunakan sebagai penunjang mata kuliah pemrograman. Lalu apa yang membedakan bahasa pemrograman satu dengan

Lebih terperinci

AP2B-Dini Triasanti KONSEP DASAR PYTHON

AP2B-Dini Triasanti KONSEP DASAR PYTHON KONSEP DASAR PYTHON Pada awalnya, motivasi pembuatan bahasa pemrograman ini adalah untuk bahasa skrip tingkat tinggi pada sistem operasi terdistribusi Amoeba. Bahasa pemrograman ini menjadi umum digunakan

Lebih terperinci

P3 Pengantar Pemrograman C

P3 Pengantar Pemrograman C P3 Pengantar Pemrograman C A. Sidiq Purnomo Prodi Teknik Informatika & Prodi Sistem Informasi Universitas Mercu Buana Yogyakarta Tujuan Mahasiswa dapat mengetahui dan memahami sejarah bahasa C, struktur

Lebih terperinci

Pemrograman dan Bahasa Pemrograman

Pemrograman dan Bahasa Pemrograman Pemrograman dan Bahasa Pemrograman Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN - 2008 Apakah Pemrograman? Problem Space Abstraction Modelling Programming Language Implementation Solution

Lebih terperinci

Fungsi. Fungsi. Dasar Komputer & Pemrograman 1. dipecah Sub Program. Program. Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD

Fungsi. Fungsi. Dasar Komputer & Pemrograman 1. dipecah Sub Program. Program. Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD Fungsi Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD Program dipecah Sub Program modul / routine / prosedur / fungsi Dasar Komputer & Pemrograman 1 Keuntungan modularisasi program 1. Menghindari

Lebih terperinci

Tahap pengembangan program

Tahap pengembangan program Program Kata, ekspresi, pernyataan atau kombinasinya yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan dengan menggunakan

Lebih terperinci

METODE NUMERIK Modul I

METODE NUMERIK Modul I LABORATORIUM KOMPUTASIONAL FAKULTAS TEKNOLOGI INFORMASI UNIVERSITAS YARSI METODE NUMERIK Modul I a. Estimasi waktu: 100 menit b. Tujuan Istruksional Khusus: Mahasiswa dapat menggunakan Mathlab dengan baik

Lebih terperinci

BAB II VARIABEL DAN TIPE DATA

BAB II VARIABEL DAN TIPE DATA BAB II VARIABEL DAN TIPE DATA Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai atau data. Sedangkan Java sendiri dikenal sebagai bahasa pemrograman dengan

Lebih terperinci

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut 1. Pengenalan Bahasa C++ a. Elemen Bahasa C+ Bahasa C++ ditulis dari beberapa elemen, antara lain: Pernyataan Satu atau beberapa ekspresi

Lebih terperinci

BAHASA PEMROGRAMAN C

BAHASA PEMROGRAMAN C BAHASA PEMROGRAMAN C A. Pengenalan Bahasa C diciptakan oleh Dennis Ritchie tahun 1972 di Bell Laboratories. Kelebihan Bahasa C: - Bahasa C tersedia hampir di semua jenis computer. - Kode bahasa C sifatnya

Lebih terperinci

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program. BAHASA PEMROGRAMAN PROGRAM Kata, ekspresi, pernyataan atau kombinasinya yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan

Lebih terperinci

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA

BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA 1 BAHASA PEMROGRAMAN JAVA PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM YOGYAKARTA IDENTIFIER Identifier adalah suatu tanda yang mewakili nama-nama variabel, method, class, dsb. Ingat : Bahasa

Lebih terperinci

Proses Kompilasi. Otomata dan Pengantar Kompulasi Pertemuan 3

Proses Kompilasi. Otomata dan Pengantar Kompulasi Pertemuan 3 Proses Kompilasi Otomata dan Pengantar Kompulasi Pertemuan 3 Bahasa Pemrograman Bahasa pemrograman adalah bahasa yang menjadi sarana manusia untuk berkomunikasi dengan komputer. Pikiran manusia yang tidak

Lebih terperinci

Objek Data, Variabel, dan Konstanta. Konsep Bahasa Pemrograman Materi 4 Yudianto Sujana, M.Kom

Objek Data, Variabel, dan Konstanta. Konsep Bahasa Pemrograman Materi 4 Yudianto Sujana, M.Kom Objek Data, Variabel, dan Konstanta Konsep Bahasa Pemrograman Materi 4 Yudianto Sujana, M.Kom Pengantar Penyimpanan data di komputer (memori, register, dan lainnya) Organisasi yang sederhana Barisan bit

Lebih terperinci

P - 3 Bab 2 : Pengantar Pemrograman C

P - 3 Bab 2 : Pengantar Pemrograman C P - 3 Bab 2 : Pengantar Pemrograman C 2.1 Tujuan Mahasiswa dapat mengetahui dan memahami sejarah bahasa C, struktur program C dan alur eksekusi program C 2.2 Materi 1. Sejarah C 2. Interprenter dan Compiler

Lebih terperinci

Bahasa Pemrograman Sejarah singkat C++ Struktur program C++ Yoannita

Bahasa Pemrograman Sejarah singkat C++ Struktur program C++ Yoannita DASAR PEMROGRAMAN Bahasa Pemrograman Sejarah singkat C++ Struktur program C++ Yoannita Bahasa Pemrograman Apa yang dimaksud bahasa pemrograman? Alat yang digunakan programmer untuk memberikan instruksi

Lebih terperinci

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi.

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi. Tabel Informasi Tabel informasi atau tabel simbol berguna untuk mempermudah pada saat pembuatan dan implementasi dari analisa semantik (semantic analyzer). Pada proses translasi, tabel informasi dapat

Lebih terperinci

Bahasa C-M6 By Jamilah, Skom 1

Bahasa C-M6 By Jamilah, Skom 1 BAB 1 KONSEP DASAR BAHASA C 1.1 SEJARAH DAN STANDAR C Akar dari bahasa C adalah bahasa BCPL yang dikembangkan oleh Martin Richard pada tahun 1967. Bahasa ini memberkan ide kepada ken thompson yang kemudian

Lebih terperinci

Pengenalan Bahasa C++, Algoritma Pemrograman, Integrated Development Equipment (IDE) Visual C++ dan Dasar Dasar Bahasa C++

Pengenalan Bahasa C++, Algoritma Pemrograman, Integrated Development Equipment (IDE) Visual C++ dan Dasar Dasar Bahasa C++ MODUL 1 Pengenalan Bahasa C++, Algoritma Pemrograman, Integrated Development Equipment (IDE) Visual C++ dan Dasar Dasar Bahasa C++ Modul Praktikum C++ Dasar Pemrograman Komputer Semester Genap 2017/2018

Lebih terperinci

Pemrograman dengan Java

Pemrograman dengan Java Pemrograman dengan Java Java sebagai salah satu bahasa pemrograman baru menjanjikan banyak kemudahan bagi programer junior maupun senior. Tutorial ini akan membawa Anda mengenal lebih jauh bahasa ini melalui

Lebih terperinci

BAB I KONSEP DASAR PEMROGRAMAN

BAB I KONSEP DASAR PEMROGRAMAN BAB I KONSEP DASAR PEMROGRAMAN I.1. Program dan Pemrograman Kata program dapat diartikan: a. Untuk mendeskripsikan instruksi-instruksi tersendiri, yang biasanya disebut source code, yang dibuat oleh programmer.

Lebih terperinci

Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak

Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak Modular Programming Program pendek dan simple = mudah dihandle. Program besar, banyak dan kompleks = tidak mudah dihandle. dl Kesulitan: sulit mencari dan mengingat variabel-variabel aiabel yang sudah

Lebih terperinci

Kuliah Online : TEKKOM [2013/VI]

Kuliah Online : TEKKOM [2013/VI] Kuliah Online : TEKKOM [2013/VI] Sumber Perancangan Bahasa Pemrograman Bahasa alami (natural language) Konstruksi yang diturunkan dari bahasa alami, karena bahasa alami dapat digunakan sebagai panduan

Lebih terperinci

Algoritma Pemrograman 2C

Algoritma Pemrograman 2C Algoritma Pemrograman 2C Indah Wahyuni Pertemuan 1 Daftar Isi Pengenalan Algoritma Definisi Algoritma Mengapa Belajar Algoritma & Pemrograman Pengenalan Jenis-jenis Bahasa Pemrograman Efisiensi Algoritma

Lebih terperinci

METODE NUMERIK 3SKS-TEKNIK INFORMATIKA-S1. Mohamad Sidiq PERTEMUAN-1

METODE NUMERIK 3SKS-TEKNIK INFORMATIKA-S1. Mohamad Sidiq PERTEMUAN-1 METODE NUMERIK 3SKS-TEKNIK INFORMATIKA-S1 Mohamad Sidiq PERTEMUAN-1 KONTRAK KULIAH METODE NUMERIK TEKNIK INFORMATIKA S1 3 SKS Mohamad Sidiq MATERI PERKULIAHAN SEBELUM-UTS Pengantar Metode Numerik Sistem

Lebih terperinci

Fungsi Bahasa pemrograman adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara pemrogram dengan computer.

Fungsi Bahasa pemrograman adalah sebagai media untuk menyusun dan memahami serta sebagai alat komunikasi antara pemrogram dengan computer. Pertemuan II Bahasa Pemrograman Program Kata, ekspresi, pernyataan atau kombinasinya yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang

Lebih terperinci

Badiyanto, S.Kom., M.Kom. PBO java

Badiyanto, S.Kom., M.Kom. PBO java Badiyanto, S.Kom., M.Kom PBO java Apa yang Disebut Java? Bahasa pemrograman berorientasi objek murni yang dibuat berdasarkan kemampuankemampuan terbaik bahasa pemrograman objek sebelumnya (C++, Ada, Simula).

Lebih terperinci

TIPE DATA PADA JAVA. Pertemuan (K-04/L-04)

TIPE DATA PADA JAVA. Pertemuan (K-04/L-04) TIPE DATA PADA JAVA Pertemuan (K-04/L-04) Alangkah baiknya kita mempelajari terlebih dahulu tentang apa itu tipe data dan mengenal ada berapa tipe data yang digunakan dalam Bahasa Pemrograman Java. Sudah

Lebih terperinci

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

DASAR PEMROGRAMAN. Institut Teknologi Sumatera DASAR PEMROGRAMAN REVIEW STRUKTUR DASAR, PERCABANGAN, DAN PERULANGAN Institut Teknologi Sumatera TUJUAN KULIAH Mengenalkan konsep dasar pemrograman: dekomposisi problem, modularisasi, rekurens; skill/praktek

Lebih terperinci

Praktikum Modul Praktikum ke Judul Materi Tujuan / Sasaran Waktu (lama) Aplikasi yang digunakan

Praktikum Modul Praktikum ke Judul Materi Tujuan / Sasaran Waktu (lama) Aplikasi yang digunakan FUNGSI Praktikum Modul Praktikum ke Judul Materi Tujuan / Sasaran Waktu (lama) Aplikasi yang digunakan I. : Algoritma dan Pemrograman I : 10 : Fungsi / Function : Mahasiswa dapat membuat pseudecode mempraktekkan

Lebih terperinci

MINGGU II : DASAR C# Tujuan Pembelajaran. Materi

MINGGU II : DASAR C# Tujuan Pembelajaran. Materi MINGGU II : DASAR C# Bagian ini akan membahas tentang struktur dasar C# dan elemen-elemen dasar dalam C#. Pembahasan meliputi struktur dasar C#, Ekspresi, Tipe data, variable dan operator dalam C#. Tujuan

Lebih terperinci

BAB III PEMROGRAMAN PADA SOFTWARE MICROSOFT VISUAL BASIC dan data-data yang saling terelasi yang memerintahkan apa yang harus

BAB III PEMROGRAMAN PADA SOFTWARE MICROSOFT VISUAL BASIC dan data-data yang saling terelasi yang memerintahkan apa yang harus BAB III PEMROGRAMAN PADA SOFTWARE MICROSOFT VISUAL BASIC 2010 A. Software Software (perangkat lunak) adalah kumpulan dari program-program dan data-data yang saling terelasi yang memerintahkan apa yang

Lebih terperinci

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA

PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA PEMROGRAMAN JAVA : VARIABEL DAN TIPE DATA Asep Herman Suyanto info@bambutechno.com http://www.bambutechno.com Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai

Lebih terperinci

Part 2 - Algoritma & Pemrograman Konsep dasar Pemrograman

Part 2 - Algoritma & Pemrograman Konsep dasar Pemrograman Part 2 - Algoritma & Pemrograman Konsep dasar Pemrograman Apa itu Program? Program adalah deretan instruksi yang digunakan untuk mengendalikan komputer, sehingga komputer dapat melakukan tindakan sesuai

Lebih terperinci

AP2B Dini Triasanti STRUKTUR PEMROGRAMAN PYTHON

AP2B Dini Triasanti STRUKTUR PEMROGRAMAN PYTHON STRUKTUR PEMROGRAMAN PYTHON 1. Aturan Penulisan Program-program yang ditulis dalam Python secara khas jauh lebih pendek dibandingkan dengan program-program C atau C++, karena beberapa pertimbangan: tipe

Lebih terperinci

MODUL I PENGENALAN MATLAB

MODUL I PENGENALAN MATLAB MODUL I PENGENALAN MATLAB 1. Apa Matlab itu? Matlab merupakan bahasa pemrograman dengan kemampuan tinggi dalam bidang komputasi. Matlab memiliki kemampuan mengintegrasikan komputasi, visualisasi, dan pemrograman.

Lebih terperinci

Pengenalan JavaScript

Pengenalan JavaScript Pengenalan JavaScript Tujuan - Mahasiswa memahami konsep dasar Javascript - Mahasiswa mampu memahami cara menggunakan Javascript - Mahasiswa mampu memahami dasar variabel di Javascript - Mahasiswa mampu

Lebih terperinci

KOMPILASI. Assembler Bahasa Rakitan Bahasa Mesin Compiler (Kompilator) Bahasa Tingkat Tinggi Bahasa tingkat rendah

KOMPILASI. Assembler Bahasa Rakitan Bahasa Mesin Compiler (Kompilator) Bahasa Tingkat Tinggi Bahasa tingkat rendah KOMPILASI Translator (penerjemah) adalah sebuah program yang menerjemahkan sebuah program sumber ( source program) menjadi program sasaran ( target program) Proses translasi suatu program dari bentuk syntax

Lebih terperinci

BAB 1 KONSEP DASAR BAHASA C

BAB 1 KONSEP DASAR BAHASA C BAB 1 KONSEP DASAR BAHASA C 1. Sejarah dan Standar C Akar dari bahasa C adalah bahasa BCPL yang dikembangkan oleh Martin Richard pada tahun 1967. Bahasa ini memberikan ide kepada Ken Thompson yang kemudian

Lebih terperinci

MODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman

MODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman Jurusan Teknik Informatika Fakultas Teknik Universitas Maritim Raja Ali Haji ALGORITMA DAN PEMOGRAMAN I. ALGORITMA II. BAHASA

Lebih terperinci

Kualitas bahasa pemrograman: Ekspresivitas : secara jelas menggambarkan algoritma yang dibuat oleh programmer

Kualitas bahasa pemrograman: Ekspresivitas : secara jelas menggambarkan algoritma yang dibuat oleh programmer Program Kata, ekspresi, pernyataan atau kombinasinya yang disusun dan dirangkai menjadi satu kesatuan prosedur yang berupa urutan langkah untuk menyelesaikan masalah yang diimplementasikan dengan menggunakan

Lebih terperinci

Fungsi. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

Fungsi. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang Fungsi Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang Review: Fungsi dalam Matematika Fungsi f(x) dengan satu parameter x dalam matematika yang didefinisikan sebagai: f(x) = x

Lebih terperinci

Pendahuluan Metode Numerik

Pendahuluan Metode Numerik Pendahuluan Metode Numerik Obyektif : 1. Mengerti Penggunaan metode numerik dalam penyelesaian masalah. 2. Mengerti dan memahami penyelesaian masalah menggunakan grafik maupun metode numeric. Pendahuluan

Lebih terperinci

PENGENALAN C++ Bab 1

PENGENALAN C++ Bab 1 PENGENALAN C++ Bab 1 1.1 SEJARAH C++ Bahasa C++ diciptakan oleh Bjarne Stroustrup di AT&T Bell Laboratories awal tahun 1980-an berdasarkan C ANSI (American National Standard Institute). Pertama kali, prototype

Lebih terperinci

PHP (HYPERTEXT PREPROCESSOR)

PHP (HYPERTEXT PREPROCESSOR) LAPORAN PRAKTIKUM MODUL 4 PEMROGRAMAN WEB PHP (HYPERTEXT PREPROCESSOR) Disusun Oleh: Deny Kurniawan Novianto (130533608222) PTI OFF B UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK JURUSAN TEKNIK ELEKTRO PROGRAM

Lebih terperinci

PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN BERORIENTASI OBJEK PEMROGRAMAN BERORIENTASI OBJEK Fungsi Budhi Irawan, S.Si, M.T 10/27/2017 9:12:31 AM 1 PENDAHULUAN Fungsi merupakan kumpulan statemen yang dikelompokan menjadi satu bagian kode (blok program) untuk menyelesaikan

Lebih terperinci

ALGORITMA, FLOWCHART dan PSEUDO-CODE

ALGORITMA, FLOWCHART dan PSEUDO-CODE BAB III ALGORITMA, FLOWCHART dan PSEUDO-CODE A. Langkah langkah dalam Pemrograman Komputer Dalam membuat suatu pemrograman komputer langkah langkah yang harus dilakukan adalah sebagai berikut : 1. Mendefinisikan

Lebih terperinci

Chapter 1 KONSEP DASAR C

Chapter 1 KONSEP DASAR C Chapter 1 KONSEP DASAR C Sejarah Dan Standar C Akar dari bahasa C adalah BCPL (dikembangkan oleh Martin Richard tahun 1967). Kemudian Tahun 1970, Ken Thompson mengembangkan bahasa tersebut yang di kenal

Lebih terperinci

VISUAL BASIC 6.0 PEMROGRAMAN KOMPUTER. Visual Basic

VISUAL BASIC 6.0 PEMROGRAMAN KOMPUTER. Visual Basic PEMROGRAMAN KOMPUTER VISUAL BASIC 6.0 Visual Basic Asal mula VB dari bahasa BASIC (Beginners Allpurpose Symbolic Instruction Code) yang pada awalnya bekerja pada sistem operasi DOS. Kelebihan VB : Sangat

Lebih terperinci

Pengantar Teknologi Informasi. Software Komputer

Pengantar Teknologi Informasi. Software Komputer Pengantar Teknologi Informasi Software Komputer Apa yang dimaksud dengan software? Contoh software dan jenisnya? Software = program Program adalah deretan intruksi yang digunakan untuk mengendalikan komputer

Lebih terperinci

Komentar, Identifier, Konstanta dan Variabel

Komentar, Identifier, Konstanta dan Variabel PEMROGRAMAN BERORIENTASI OBJEK Komentar, Identifier, Konstanta dan Variabel Budhi Irawan, S.Si, M.T KOMENTAR PROGRAM Dalam proses pengembangan sebuah program, pasti akan disibukan dengan penulisan kode-kode

Lebih terperinci

Dasar Pemrograman C++

Dasar Pemrograman C++ Dasar Pemrograman C++ Yuli Astuti, Jurusan Sistem Informasi, STMIK AMIKOM Yogyakarta, Jl. Ring Road Utara, Condong Catur, Sleman, Yogyakarta, Indonesia 1.1 Konsep Dasar Pemrograman Program adalah deretan

Lebih terperinci

VI. FUNGSI. Fungsi Main ( ) Fungsi a ( ) Fungsi b ( ) Fungsi c ( ) Fungsi c1 ( ) Fungsi c2 ( ) Fungsi c3 ( ) Bentuk umumnya :

VI. FUNGSI. Fungsi Main ( ) Fungsi a ( ) Fungsi b ( ) Fungsi c ( ) Fungsi c1 ( ) Fungsi c2 ( ) Fungsi c3 ( ) Bentuk umumnya : VI. FUNGSI 6.1. FUNGSI Fungsi adalah sekumpulan perintah operasi program yang dapat menerima argumen input dan dapat memberikan hasil output yang dapat berupa nilai ataupun sebuah hasil operasi. Hasil

Lebih terperinci

Dasar-Dasar Python Untuk Seismologi Materi # 01 Pengenalan Python

Dasar-Dasar Python Untuk Seismologi Materi # 01 Pengenalan Python Dasar-Dasar Python Untuk Seismologi Materi # 01 Pengenalan Python Zulfakriza zulfakriza@students.itb.ac.id Training Peningkatan Kapasitas SDM Seismologi Teknik Phyton dan SAC Tahun 2014 22-23 September

Lebih terperinci

BAB 4 PENGENALAN BAHASA C

BAB 4 PENGENALAN BAHASA C Bab 4 Pengenalan Bahasa C 35 BAB 4 PENGENALAN BAHASA C TUJUAN PRAKTIKUM 1. Mengetahui sejarah perkembangan bahasa C. 2. Mengerti struktur program bahasa C. 3. Mengerti konsep tipe data, variabel, & operator

Lebih terperinci

Elemen Bahasa Pemrograman. Aditya Rizki Yudiantika, M.Eng.

Elemen Bahasa Pemrograman. Aditya Rizki Yudiantika, M.Eng. Elemen Bahasa Pemrograman Aditya Rizki Yudiantika, M.Eng. Algoritma dan Struktur Data (SI063) Ganjil 2017/2018 Outline Pengenalan bahasa C++ Struktur penulisan kode dan elemen Tipe data Konstanta Operator

Lebih terperinci

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++ I.PENDAHULUAN 1. 1. ALGORITMA Algoritma adalah urutan aksi-aksi yang dinyatakan dengan jelas dan tidak rancu untuk memecahkan suatu masalah dalam rentang waktu tertentu. Setiap aksi harus dapat dikerjakan

Lebih terperinci

BAHASA PEMROGRAMAN JAVA

BAHASA PEMROGRAMAN JAVA MI1274 Algoritma & Pemrograman Lanjut Genap 2015-2016 BAHASA PEMROGRAMAN JAVA Disusun Oleh: Reza Budiawan Untuk: Tim Dosen Algoritma & Pemrograman Lanjut Hanya dipergunakan untuk kepentingan pengajaran

Lebih terperinci

KONSEP DASAR PROGRAM BAHASA C

KONSEP DASAR PROGRAM BAHASA C KONSEP DASAR PROGRAM BAHASA C AGENDA Pengantar Kelebihan Kekurangan Penulisan Program Bahasa C Fungsi Penyusun Pengantar (1) Bahasa C merupakan perkembangan dari bahasa BCPL (Basic Combine Programming

Lebih terperinci

Konsep Pemrograman Prosedural

Konsep Pemrograman Prosedural Konsep Pemrograman Prosedural Urutan pengerjaan kegiatan Pemrograman Pengenalan bahasa C 9/20/2010 Minggu 1 1 Urutan Pengerjaan Kegiatan(1) Manusia selalu berusaha menyelesaikan masalah yang dihadapi Penyelesaian

Lebih terperinci

Modul 1 Dasar Dasar Bahasa Pemrograman C

Modul 1 Dasar Dasar Bahasa Pemrograman C Modul 1 Dasar Dasar Bahasa Pemrograman C 1. C dan Pengolahan Sinyal Digital C adalah bahasa pemrograman tingkat tinggi. Sebab bahasa pemrogramannya menggunakan keyword dan syntax yang mudah dimengerti

Lebih terperinci

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION POINTER POINTER ADALAH SUATU VARIABEL PENUNJUK, BERISI NILAI YANG MENUNJUK ALAMAT SUATU LOKASI MEMORI TERTENTU. JADI POINTER TIDAK BERISI NILAI DATA, MELAINKAN

Lebih terperinci

PEMAHAMAN DASAR DASAR JAVA

PEMAHAMAN DASAR DASAR JAVA MODUL 1 PEMAHAMAN DASAR DASAR JAVA A. PENGANTAR JAVA Java Standard Development Kit (JDK/SDK) merupakan alat-alat utama bagi programmer untuk membuat dan menjalankan java. Development Kit dapat didownload

Lebih terperinci

TIPE DATA, VARIABLE, dan OPERATOR DELPHI

TIPE DATA, VARIABLE, dan OPERATOR DELPHI TIPE DATA, VARIABLE, dan OPERATOR DELPHI A. TIPE DATA Delphi merupakan bahasa pemrograman tingkat tinggi yang mendukung perancangan terstruktur dan berorientasi Object. Bahasa pemrograman ini berdasarkan

Lebih terperinci

Pemrograman Dasar C. Minggu 1: Pengenalan C Programming

Pemrograman Dasar C. Minggu 1: Pengenalan C Programming Pemrograman Dasar C Minggu 1: Pengenalan C Programming Sejarah Bahasa C Pencipta: Dennis M. Ritchie dan Brian W. Kernighan (awal 1970) Pada awalnya berkembang di UNIX (90% System Operasi UNIX dalam C)

Lebih terperinci

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR 1 PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR Siti Mukaromah, S.Kom TEKNIK PENYAJIAN ALGORITMA Teknik Tulisan Structure English Pseudocode Teknik Gambar Structure Chart HIPO Flowchart 2 PSEUDOCODE Kode

Lebih terperinci

Sejarah C. Dirancang oleh Denis M. Ritchie tahun 1972 di Bell Labs.

Sejarah C. Dirancang oleh Denis M. Ritchie tahun 1972 di Bell Labs. Sejarah C Dirancang oleh Denis M. Ritchie tahun 1972 di Bell Labs. Pengembangan dari bahasa BCPL(Martin Richard, 1967) dan bahasa B (Ken Thompson, 1970) Dibantu Brian W. Kernighan, Ritchie menulis buku

Lebih terperinci

MODUL II VARIABEL DAN TIPE DATA

MODUL II VARIABEL DAN TIPE DATA MODUL II VARIABEL DAN TIPE DATA A. TUJUAN Mengenal tipe data, jenis-jenis, dan penggunaannya. Memahami variabel dan cara pendeklarasiannya. Memahami konvensi penamaan dan coding standard Memahami jenis

Lebih terperinci

JAVA PADA NETBEANS IDE 7.4 ASRI WIDYADHARI KOM E 13

JAVA PADA NETBEANS IDE 7.4 ASRI WIDYADHARI KOM E 13 1 JAVA PADA NETBEANS IDE 7.4 ASRI WIDYADHARI 132406210 KOM E 13 D-III TEHNIK INFORMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2014 2 i KATA PENGANTAR Alhamdulillah,

Lebih terperinci

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR BAB 3 TYPE DATA, VARIABLE DAN OPERATOR Bahasa pemrograman pada umumnya, mengenal adanya variabel yang digunakan untuk menyimpan nilai atau data. Sedangkan Java sendiri dikenal sebagai bahasa pemrograman

Lebih terperinci

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah ); PERTEMUAN I BAHASA PEMROGRAMAN JAVA DAN PENGENALAN NETBEANS 1. Program dan Bahasa Pemrograman Di dalam dunia komputer sering kali dijumpai istilah program dan bahasa pemrograman. Kedua istilah tersebut

Lebih terperinci

Modul Praktikum 3 Pemograman Berorientasi Objek

Modul Praktikum 3 Pemograman Berorientasi Objek Modul Praktikum 3 Pemograman Berorientasi Objek 1. Judul : Kontrol Keputusan dan Pengulangan 2. Tujuan Percobaan : Diakhir praktikum, mahasiswa diharapkan mampu : Menggunakan struktur kontrol keputusan

Lebih terperinci

PRAKTEK 1 CLASS, ATTRIBUTE, METHOD, DAN OBJEK

PRAKTEK 1 CLASS, ATTRIBUTE, METHOD, DAN OBJEK 1 PRAKTEK 1 CLASS, ATTRIBUTE, METHOD, DAN OBJEK 1.1 NetBeans 8.1 Sebelum membuat project ada baiknya kenali dulu windows yang ada pada NetBeans 8.1 Projects/Services/Files Editor Output Navigator Projects

Lebih terperinci

Konsep Dasar Pemrograman Dan Pengenalan C++

Konsep Dasar Pemrograman Dan Pengenalan C++ PRAKTIKUM 1 DAN 2 Konsep Dasar Pemrograman Dan Pengenalan C++ I. KONSEP DASAR PEMROGRAMAN Program adalah deretan instruksi yang digunakan untuk mengendalikan komputer, sehingga komputer dapat melakukan

Lebih terperinci

Sekilas Tentang C. Dasar Pemrograman & Algoritma

Sekilas Tentang C. Dasar Pemrograman & Algoritma Sekilas Tentang C Dasar Pemrograman & Algoritma Objectives Setelah menyelesaikan bab ini, anda diharapkan dapat: Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C Menjelaskan kelebihan dan kekurangan

Lebih terperinci

LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java)

LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java) LAPORAN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN ( Implementasi Rekursi Pada Java) Di susun oleh: Wahyono ( 06/193218/PA/10892 ) Praktikan Algoritma dan Pemrograman Kelas A 7 Mei 2007 LABORATORIUM KOMPUTASI

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN SISTEM. Analisis sistem bertujuan untuk mengidentifikasi permasalahan

BAB III ANALISIS DAN PERANCANGAN SISTEM. Analisis sistem bertujuan untuk mengidentifikasi permasalahan BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1 Analisis Sistem Analisis sistem bertujuan untuk mengidentifikasi permasalahan permasalahan yang ada pada sistem di mana aplikasi dibangun yang meliputi perangkat

Lebih terperinci

TEKNIK KOMPILASI. Alamat untuk tugas: Informasi: DADANG MULYANA. dadang mulyana 2013

TEKNIK KOMPILASI. Alamat  untuk tugas: Informasi: DADANG MULYANA. dadang mulyana 2013 TEKNIK KOMPILASI DADANG MULYANA Alamat email untuk tugas: dadangstmik@gmail.com Informasi: dadangmulyana@wordpress.com 1 Cara pengiriman tugas: Dalam subjek email tuliskan: Instansi_kelas_nama_matakuliah_jenistugas

Lebih terperinci

dilakukan oleh bahasa mesin dapat dilakukan oleh C dengan penyusunan program yang lebih sederhana dan mudah. Bahasa C dalam pemakainnya memerlukan

dilakukan oleh bahasa mesin dapat dilakukan oleh C dengan penyusunan program yang lebih sederhana dan mudah. Bahasa C dalam pemakainnya memerlukan I. PENDAHULUAN Perkembangan bahasa C erat kaitannya dengan perkembangan sistem operasi UNIX, dimana keduanya dikembangkan di AT&T Bell Lab (USA). Pertama kali bahasa C diimplementasikan pada komputer DEC

Lebih terperinci

Cara pertama adalah pada saat deklarasi variabel ditambahkan ke- yword const sebelum nama tipe data seperti

Cara pertama adalah pada saat deklarasi variabel ditambahkan ke- yword const sebelum nama tipe data seperti KONSTANTA Menghitung besaran-besaran fisis dalam bidang fisika memerlukan suatu konstantakonstanta. Bahasa C dan C++ menyediakan tipe data tambahan sehingga variabel yang kita gunakan merupakan konstanta

Lebih terperinci

Pertemuan 2 Bahasa Visual Basic Aplication

Pertemuan 2 Bahasa Visual Basic Aplication Pertemuan 2 Bahasa Visual Basic Aplication Dasar dari pemrograman pada Visual Basic adalah VBA yang menggunakan dialek Basic. Bagi anda yang pernah belajar bahasa Basic, tidak akan sulit untuk belajar

Lebih terperinci

PEMROGRAMAN TERSTRUKTUR MENGGUNAKAN MATLAB

PEMROGRAMAN TERSTRUKTUR MENGGUNAKAN MATLAB PETUNJUK PRAKTIKUM PEMROGRAMAN TERSTRUKTUR MENGGUNAKAN MATLAB Oleh Ahmad Kamsyakawuni JURUSAN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS JEMBER 2009 MODUL 1 MENGENAL MATLAB A.

Lebih terperinci

BEKERJA DENGAN JAVA CLASS LIBRARY

BEKERJA DENGAN JAVA CLASS LIBRARY MK. Pemrograman Berorientasi Objek BEKERJA DENGAN JAVA CLASS LIBRARY (CLASS-METHOD-OBJECT) KARMILASARI ANALOGI OBJEK DALAM DUNIA NYATA Objek di dunia nyata = Objek dalam perangkat lunak Atribut di dunia

Lebih terperinci

Konsep Dasar Pemrograman Berorientasi Obyek I JAVA. Anugrah Kusuma Seno Adi Putra

Konsep Dasar Pemrograman Berorientasi Obyek I JAVA. Anugrah Kusuma Seno Adi Putra Konsep Dasar Pemrograman Berorientasi Obyek I JAVA Anugrah Kusuma Seno Adi Putra Konsep Dasar Pemrograman Berorientasi Obyek I JAVA @2007 Java Competency Center - Institut Teknologi Bandung Penulis : Anugrah

Lebih terperinci

Bab IV Simulasi dan Pembahasan

Bab IV Simulasi dan Pembahasan Bab IV Simulasi dan Pembahasan IV.1 Gambaran Umum Simulasi Untuk menganalisis program pemodelan network flow analysis yang telah dirancang maka perlu dilakukan simulasi program tersebut. Dalam penelitian

Lebih terperinci

SUB PROGRAM (FUNGSI)

SUB PROGRAM (FUNGSI) MATERI V SUB PROGRAM (FUNGSI) Materi Praktikum Pemograman Bahasa C++ dengan menggunakan Fungsi Durasi 180 menit TIU/TIK 1. Pendahuluan 2. Pemahaman Prosedur dan Fungsi 3. Parameter Fungsi 4. Fungsi Rekursif

Lebih terperinci