Modul Praktikum
ALGORITMA DAN DASAR PEMROGRAMAN
Disusun oleh:
Carwoto (
[email protected])
Semarang 2011 2011
Hak cipta 2011 pada Carwoto Diperkenankan menggunakan e-modul ini untuk keperluan pendidikan di Indonesia baik dalam bentuk elektronik maupun dengan mencetaknya, dengan syarat tidak melakukan perubahan isi dan informasi yang ada di dalamnya. Segala hal yang diakibatkan oleh penggunaan e-modul ini bukan tanggung jawab penulis. Untuk keperluan komersial atau penggunaan di luar Indonesia, silahkan hubungi penulis melalui email:
[email protected].
KATA PENGANTAR Mata kuliah Algoritma dan Dasar Pemrograman merupakan mata kuliah yang mendasari teknik pemrograman komputer. Sebagai mata kuliah dasar, para mahasiswa perlu memiliki pengetahuan dan keterampilan yang cukup mengenai algoritma dan dasar pemrograman tersebut. Karena itu diperlukan pengalaman praktek dengan cara mencoba langsung melakukan pemrograman menggunakan perangkat lunak computer dengan bahasa pemrograman tertentu. Modul Praktikum Algoritma dan Pemrograman Komputer ini disusun dengan menyajikan tiga macam bahasa pemrograman berbasis perintah baris (Command Line Interface, CLI) yaitu PASCAL, C++, dan BASIC. Disajikannya tiga macam bahasa pemrograman ini dimaksudkan supaya para mahasiswa dapat memiliki pengalaman belajar yang bervariasi serta dapat membandingkan gaya pemrograman ketiganya. Meskipun demikian, pada tahap selanjutnya para mahasiswa tidak harus mengembangkan keterampilan pemrograman dengan ketigatiganya, melainkan bias hanya memilih salah satu sesuai kebutuhan atau peminatannya. Mengapa masih menggunakan CLI, bukan berbasis GUI (Graphical User Interface)? Menurut hemat penyusun, dengan pemrograman berbasis CLI para mahasiswa bias lebih focus pada algoritma dan logika pemrogramannya. Jika praktikum ini menggunakan GUI, sangat mungkin kegiatan praktikum akan menghabiskan banyak waktu saat kegitan perancangan antarmuka grafisnya. Modul ini pertama kali disusun tahun 2002 dan telah digunakan sejak saat itu dalam perkuliahan di Program Studi Teknik Elektronika, Teknik Informatika, Sistem Informasi, serta telah mengalami perbaikanperbaikan hingga wujud akhirnya sekarang ini seperti yang And baca. Untuk dapat menggunakan modul praktikum ini secara maksimal, para mahasiswa dianjurkan mengikuti petunjuk berikut ini: 1. Sebelum praktikum, mahasiswa membaca, mencermati dan mencoba memahami alur kerja kode program yang ada di modul, serta memperkirakan hasil atau tampilan keluarannya. 2. Mengetik kode program seperti yang ada di dalam tiap-tiap bagian LATIHAN, kemudian melakukan kompilasi, memperbaiki kesalahan
Penyusun: Carwoto (
[email protected])
Penyusun: Carwoto (
[email protected])
pengetikan kode, dan mencoba menjalankan hasil kompilasi program. Jika waktu memungkinkan, majhasiswa dapat memodifikasi latihan ini sesuai kebutuhan. 3. Mengerjakan tugas yang ada di bagian TUGAS PRAKTIKUM. Tampilan antarmuka program latihan silahkan dirancang sendiri oleh mahasiswa dan silahkan berkreatifitas sendiri. 4. Menyusun Laporan Praktikum sesuai format yang telah ditentukan. Dengan menyusun laporan, maka para mahasiswa akan mengalami tahap endap materi atau pendalaman terhadap materi pemrograman yang sudah dipraktekkan sebelumnya. Selain itu, laporan merupakan dokumentasi atas hasil kerja mahasiswa atas tugas yang diberikan. Akhir kata, semoga modul praktikum ini dapat bermanfaat dalam melatih mahasiswa belajar mengenai algoritma dan dasar-dasar pemrograman komputer. Kritik dan saran membangun dari semua pihak sangat diharapkan.
Semarang, Februari 2011 Penyusun,
DAFTAR ISI KATA PENGANTAR
IV
DAFTAR ISI
VI
KERANGKA (OUTLINE) LAPORAN PRAKTIKUM
VII
STRUKTUR DASAR PROGRAM
1
STATEMEN KONDISIONAL
5
PERULANGAN (LOOPING)
11
MENGGUNAKAN LARIK (ARRAY)
15
MENGGUNAKAN STRUKTUR (RECORD)
19
MEMBUAT FUNGSI
23
MEMBUAT PROSEDUR
26
MENGGUNAKAN POINTER
29
PEMROGRAMAN BERORIENTASI OBJEK
33
DAFTAR PUSTAKA
38
Carwoto
Penyusun: Carwoto (
[email protected])
Penyusun: Carwoto (
[email protected])
KERANGKA (OUTLINE) LAPORAN PRAKTIKUM
I. Judul Percobaan II. Tujuan III. Dasar Teori IV. Alat V. Langkah Kerja VI. Hasil Percobaan VII. Analisa A. Diagram Alir Program B. Pembahasan VIII. Penutup A. Kesimpulan B. Saran IX. Daftar Pustaka Lampiran - Listing Program - Lampiran lain
Penyusun: Carwoto (
[email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
2
MODUL 1 STRUKTUR DASAR PROGRAM
return 0; }
A. TUJUAN
Bahasa Pascal
Setelah menyelesaikan praktikum ini, Anda diharapkan dapat: 1. Memahami struktur dasar program. 2. Menggunakan tipe data, konstanta, dan variabel dalam program. 3. Membuat ekspresi dengan menggunakan operator bahasa pemrograman.
Program Selamat; Begin Writeln(‘Selamat Datang di Kuliah Pemrograman Komputer!’); Readln; End.
B. PERALATAN
PRINT "Selamat Datang di Kuliah Pemrograman!"
Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.
Latihan 1.b
C. SKENARIO
Bahasa Basic:
Berikut adalah program untuk menghitung penjumlahan dua bilangan dengan variabel x, y, dan jml yang bertipe Integer. Buatlah kode program tersebut lalu lakukan kompilasi. Bahasa C:
Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.
D. LATIHAN Latihan 1.a Berikut ini adalah program untuk menampilkan teks “Selamat Datang di Kuliah Pemrograman Komputer” pada layar monitor. Buatlah kode program tersebut lalu lakukan kompilasi. Bahasa C #include
int main() { cout<<"Selamat Datang di Kuliah Pemrograman Komputer!\n";
Penyusun: Carwoto ([email protected])
#include int main() { int x,y,jml; cout<<"Masukkan x: ";cin>>x; cout<<"Masukkan y: ";cin>>y; jml=x+y; cout<<"\n"; cout<<"Hasil x + y = "<< jml; return 0; }
Bahasa Pascal: program Jumlah; var x,y,jml : integer; begin write(‘Masukkan x: ‘); readln(x); write(‘Masukkan y: ‘); readln(y); jml:=x+y; writeln;
Penyusun: Carwoto ([email protected])
STRUKTUR DASAR PROGRAM
3
Modul Praktikum Algoritma dan Dasar Pemrograman
writeln(‘Hasil x + y = ‘,jml); readln; end.
4
Writeln("Panjang: ",Panjang); Writeln("Luas Permukaan: ",Luas); readln; end.
Bahasa Basic: DIM x,y,jml as Integer PRINT "Masukkan x: "; :INPUT x PRINT "Masukkan y: "; :INPUT y jml=x+y; PRINT PRINT "Hasil x + y = "; jml
Bahasa Basic:
Latihan 1.c Berikut ini adalah program untuk menghitung luas persegi panjang. Buatlah kode program tersebut lalu lakukan kompilasi.
CONST Lebar = 5 CONST Panjang = 10 DIM Luas AS Single ‘menghitung Luas dengan rumus Panjang kali Lebar Area = Lebar * Panjang PRINT "Lebar: "; Lebar PRINT "Panjang: "; Panjang PRINT "Luas Permukaan: "; Luas
E. TUGAS PRAKTIKUM
Bahasa C: #include int main() { unsigned short int Lebar = 5, Panjang; Panjang = 10; // membuat unsigned short dan diinisialisasi dengan hasil // berupa Panjang kali Lebar unsigned short int Area = Lebar * Panjang; cout << "Lebar:" << Lebar<< "\n"; cout << "Panjang: " << Panjang << endl; cout << "Luas Permukaan: " << Luas << endl; return 0; }
1. Tulislah program untuk menampilkan teks berikut pada layar monitor. Kuliah Pemrograman Komputer Mencetak Sarjana Komputer dengan Kompetensi Standar 2. Buatlah aplikasi untuk menghitung luas permukaan dan volume bola dengan rumus: L = 4 * ∏ * r2 V = 4/3 * ∏ * r 3 r adalah jari-jari lingkaran dan ∏ adalah sebuah bilangan tetap yang nilainya 3.14.
Bahasa Pascal: Program Luas_Segi_empat;
3. Buatlah aplikasi untuk mengkonversi suhu dalam satuan Celcius (C) ke satuan Fahrenheit (F), Reamur (R), dan Kelvin (K). Rumus konversinya adalah sebagai berikut:
const Lebar = 5; Panjang = 10; Var Luas : Real; begin {menghitung Luas dengan rumus Panjang kali Lebar} Luas = Lebar * Panjang; Writeln("Lebar: ",Lebar);
F = (9/5 * C) + B; R = C + B; dan K = (4/5 * C) B pada rumus di atas adalah bilangan tetap yang besarnya 32.
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
MODUL 2 STATEMEN KONDISIONAL A. TUJUAN Setelah melakukan praktikum ini, diharapkan Anda dapat: 1. Menggunakan statemen untuk menyelesaikan kondisi percabangan dengan beberapa bahasa pemrograman. 2. Membuat program untuk menangani kasus-kasus percabangan.
B. PERALATAN Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.
C. SKENARIO Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.
D. LATIHAN Latihan 2.a Berikut adalah program untuk membandingkan dua buah bilangan yang dimasukkan oleh pemakai. Buatlah kode program tersebut lalu lakukan kompilasi. Simpan kode program dengan nama Banding.
6
int BilPertama, BilKedua; cout << "Ketikkan bilangan yang besar (banyak): “ cin >> BilPertama; cout << "\nMasukkan bilangan yang lebih kecil: “; cin >> BilKedua; if (BilPertama > BilKedua) cout << "\nTerima kasih….\n"; else cout << "\nMaaf. Bilangan kedua Anda lebih besar!"; return 0; }
Bahasa Pascal: Program Banding; Uses WinCrt; Var BilPertama, BilKedua : real; Begin write(‘Ketikkan bilangan yang besar (banyak): ‘); readln(BilPertama); write(‘Masukkan bilangan yang lebih kecil: ‘); readln(BilKedua); if BilPertama > BilKedua then writeln(‘Terima kasih...’) else writeln(‘Maaf. Bilangan kedua Anda lebih besar!’); End.
Bahasa Basic: DIM BilPertama, BilKedua As Single PRINT "Ketikkan bilangan yang besar (banyak): “; :INPUT BilPertama PRINT "Masukkan bilangan yang lebih kecil: “; :INPUT BilKedua IF BilPertama > BilKedua PRINT "Terima kasih..." ELSE PRINT "Maaf. Bilangan kedua Anda lebih besar!" END IF
Latihan 2.b Bahasa C: Berikut adalah program untuk membandingkan dua buah bilangan yang dimasukkan oleh pemakai menggunakan statemen if bersarang. Mula-mula program meminta masukan dua bilangan, setelah itu
#include int main() {
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
STATEMEN KONDISIONAL
7
dibandingkan mana yang lebih besar, apakah bilangan yang besar habis dibagi bilangan yang kecil, serta dicek apakah kedua bilangan sama besar. Buatlah kode program tersebut lalu lakukan kompilasi. Simpan kode program dengan nama Banding2. Bahasa C: #include int main() { int firstNumber, secondNumber; cout << "Masukkan dua buah bilangan.\nPertama: "; cin >> firstNumber; cout << "\nKedua: "; cin >> secondNumber; cout << "\n\n"; if (firstNumber >= secondNumber) { if ( (firstNumber % secondNumber) == 0) { if (firstNumber == secondNumber) cout << "Kedua bilangan sama!\n"; else cout << "Habis dibagi!\n"; } else cout << "Tidak habis dibagi!\n"; } else cout << "Hey! Bilangan kedua Anda lebih besar!\n"; return 0; }
Bahasa Pascal: Program Banding2; Uses WinCrt; Var firstNumber, secondNumber : integer; Begin writeln('Masukkan dua buah bilangan.'); write('Pertama: '); readln(firstNumber); write('Kedua: '); readln(secondNumber); writeln; if firstNumber >= secondNumber then if (firstNumber mod secondNumber) = 0 then if (firstNumber=secondNumber) then
Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
8
writeln('Kedua bilangan sama!') else writeln('Habis dibagi!') else writeln('Tidak habis dibagi!') else writeln('Hey! Bilangan kedua Anda lebih besar!'); end.
Bahasa Basic: PRINT "Masukkan dua buah bilangan." PRINT "Pertama: "; :INPUT firstNumber PRINT "Kedua: "; :INPUT secondNumber PRINT "" IF (firstNumber >= secondNumber) THEN IF ((firstNumber MOD secondNumber) = 0) THEN IF (firstNumber = secondNumber) THEN PRINT "Kedua bilangan sama!" ELSE PRINT "Habis dibagi!" END IF else PRINT "Tidak habis dibagi!" END IF ELSE PRINT "Hey! Bilangan kedua Anda lebih besar!" END IF
Latihan 2.c Kode program berikut menggambarkan contoh penggunaan statemen case untuk memeriksa penekanan tombol keyboard a, b, atau c. Buatlah kode program tersebut lalu lakukan kompilasi. Simpan dengan nama Tombol. Bahasa C: #include #include int main(void) { int ch; printf("\tTekan tombol a, b, atau c. JANGAN YANG LAIN!"); ch = getch()
Penyusun: Carwoto ([email protected])
STATEMEN KONDISIONAL
9
switch (ch) { case 'a' : printf("\nAnda memilih tombol a .\n"); break; case 'b' : printf("\nAnda memilih tombol b.\n"); break; case 'c' : printf("\nAnda memilih tombol c.\n"); break; default : printf("\nBUKAN PILIHAN YANG BENAR! Bye ..."); return(-1); } return(0); }
Bahasa Pascal:
Modul Praktikum Algoritma dan Dasar Pemrograman
CASE ELSE : PRINT "BUKAN PILIHAN YANG BENAR! Bye ..." END SELECT
E. TUGAS PRAKT IKUM 1. Buatlah program untuk memasukkan nilai teori dan nilai praktek mahasiswa kemudian menghitung nilai rata-ratanya. Apabila nilai rata-rata lebih dari atau sama dengan 6 maka mahasiswa dinyatakan Lulus, jika nilai rata-ratanya kurang dari enam, maka mahasiswa tersebut Tidak Lulus. 2. Buatlah program untuk memasukkan IPK mahasiswa, kemudian menampilkan predikat kelulusannya. Aturan predikat kelulusan adalah sebagai berikut: IPK
Predikat Kelulusan
Program Tombol; Uses WinCrt;
2,0≤IPK<2,5
Baik
Var ch : char;
2,5≤IPK<3,0
Memuaskan
3,0≤IPK<3,5
Sangat Memuaskan
3,5≤IPK≤4,0
Cumlaud
Begin write('Tekan tombol a, b, atau c. JANGAN YANG LAIN!'); readln(ch); Case ch of 'a' : writeln('Anda memilih tombol a.'); 'b' : writeln('Anda memilih tombol b.'); 'c' : writeln('Anda memilih tombol c.'); else writeln('BUKAN PILIHAN YANG BENAR! Bye ...'); End; End.
10
3. Buatlah program untuk mengkonversi angka hari menjadi nama hari. Pemakai diminta memasukkan di antara angka dari 1 sampai 7, maka akan ditampilkan nama hari yang sesuai. Jika pemakai memasukkan angka yang tidak termasuk dalam batasan, maka ditampilkan pesan kesalahan memasukkan angka.
Bahasa Basic: PRINT "Tekan tombol a, b, SELECT CASE ch$ CASE "a" PRINT "Anda memilih CASE "b" PRINT "Anda memilih CASE "c" PRINT "Anda memilih
atau c. JANGAN YANG LAIN!"; :INPUT ch$
tombol a." tombol b." tombol c."
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
MODUL 3 PERULANGAN (LOOPING) A. TUJUAN Setelah menyelesaiakan materi praktikum ini, Anda diharapkan dapat: 1. Membuat perulangan menggunakan perintah WHILE. 2. Membuat perulangan menggunakan perintah REPEAT. 3. Membuat perulangan menggunakan perintah FOR.
B. PERALATAN Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.
C. SKENARIO Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.
12
#include int main() { int counter = 0; // inisialisasi kondisi while(counter < 5) // tes apakah kondisi masih benar { counter++; // tubuh loop cout << "counter: " << counter << "\n"; } cout << "Selesai. Counter: " << counter << ".\n"; return 0; }
Bahasa Pascal: Program Counter5; Uses WinCrt; Var Counter : Integer; Begin while(counter < 5) do begin counter:=counter+1; writeln('counter: ',counter); end; writeln('Selesai. Counter: ',counter); End.
Bahasa Basic:
D. LATIHAN
WHILE counter<5 Counter=counter+1 PRINT "counter: "; counter LOOP PRINT "Selesai. Counter: "; counter
Latihan 3.a
Latihan 3.b
Kode program berikut merupakan contoh perulangan untuk membuat dan menampilkan pencacah (counter) mulai dari 1 sampai 5. Ketik kode program tersebut lalu lakukan kompilasi. Simpan file dengan nama Counter5.
Contoh program berikut merupakan contoh perulangan menggunakan WHILE untuk membuat dan menampilkan teks STMIK ProVisi sebanyak keinginan pemakai. Ketik kode program tersebut lalu lakukan kompilasi. Simpan file dengan nama UlangTek.
Bahasa C:
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
PERULANGAN (LOOPING)
13
Modul Praktikum Algoritma dan Dasar Pemrograman
14
Bahasa C: #include int main() { int counter; cout << "Berapa banyak teks STMIK ProVisi? "; cin >> counter; do { cout << "STMIK ProVisi\n"; counter--; } while (counter >0 ); cout << "Nilai Counter: " << counter << endl; return 0; }
program tersebut lalu lakukan kompilasi. Simpan file dengan nama Looping.
Bahasa Pascal:
Bahasa Pascal:
Program UlangTek; Uses WinCrt; Var Counter : Integer; Begin Write('Berapa banyak teks STMIK ProVisi? '); Readln(counter); while counter>0 do begin writeln('STMIK ProVisi'); counter:=counter-1; end; writeln('Nilai Counter: ',counter); End.
Program Looping; Uses WinCrt; Var Counter : Integer; Begin for counter := 1 to 5 do writeln('Looping!'); writeln('Counter: ',counter); End.
Bahasa C: #include int main() { int counter; for (counter = 0; counter < 5; counter++) cout << "Looping! "; cout << "\nCounter: " << counter << ".\n"; return 0; }
Bahasa Basic: FOR counter= 1 TO 5 PRINT "Looping!" NEXT PRINT "Counter: "; counter
Bahasa Basic: PRINT "Berapa banyak teks STMIK ProVisi? "; :INPUT counter DO WHILE counter>0 PRINT "STMIK ProVisi" Counter=counter-1 WEND PRINT "Nilai Counter: "; counter
Latihan 3.c Kode program berikut merupakan contoh perulangan menggunakan FOR untuk menampilkan teks “Looping!” sebanyak 5 kali. Ketik kode
Penyusun: Carwoto ([email protected])
E. TUGAS PRAKTIKUM 1. Buatlah program menggunakan untuk menghitung kuadrat bilangan 100 sampai 200. 2. Buatlah program menggunakan while untuk menghitung faktorial bilangan. 3. Buatlah program untuk menampilkan bilangan prima antara 0 sampai dengan 100. 4. Buatlah program untuk menampilkan deret Fibonacci yang sesuai dengan angka yang hendak dijumlahkan. Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
MODUL 4 MENGGUNAKAN LARIK (ARRAY) A. TUJUAN Setelah menyelesaikan materi praktikum ini, diharapkan Anda dapat: 1. Mendeklarasikan larik (array). 2. Menggunakan larik (array) pada program.
B. PERALATAN Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.
C. SKENARIO Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.
D. LATIHAN Latihan 4.a Berikut merupakan contoh program C menggunakan larik berisi 5 elemen. Ketik kode program tersebut lalu lakukan kompilasi. Simpan file program dengan nama Larik5. Bahasa C:
16
for ( i=0; i<5; i++) // 0-4 { cout << "Nilai LarikBil [" << i << "]: "; cin >> LarikBil [i]; } for (i = 0; i<5; i++) cout << i << ": " << LarikBil[i] << "\n"; return 0; }
Bahasa Pascal: Program Larik5; Uses WinCrt; Var LarikBil: array[0..5] of integer; I : integer; Begin for i:=0 to 4 do begin writeln('Nilai LarikBil [',i,']: '); Readln(LarikBil[i]); end; for i:=0 to 4 do writeln(i,': ', LarikBil[i]); End.
Bahasa Basic: DIM LarikBil(5) As Integer FOR i=0 TO 4 PRINT "Nilai LarikBil (";i;")" :INPUT LarikBil(i) NEXT FOR i = 0 TO 4 PRINT i ": " ; LarikBil(i) NEXT
Latihan 4.b Program berikut merupakan contoh program menggunakan larik multidimensi dan menampilkan isinya di layar monitor. Ketik kode program tersebut lalu lakukan kompilasi. Betulkan jika pada program yang Anda buat terdapat kesalahan. Simpan file program dengan nama multidim.
#include int main() { int LarikBil[5]; int i;
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
MENGGUNAKAN LARIK (ARRAY)
17
Modul Praktikum Algoritma dan Dasar Pemrograman
18
Bahasa C: #include int main() { int LarikBil[5][2] = { {0,0}, {1,2}, {2,4}, {3,6}, {4,8}}; for (int i = 0; i<5; i++) for (int j=0; j<2; j++) { cout << "LarikBil[" << i << "][" << j << "]: "; cout << LarikBil[i][j]<< endl; } return 0; }
Bahasa Pascal:
E. TUGAS 1. Buatlah program menggunakan larik untuk memasukkan data matrik berordo 3 X 2 dengan matrik berordo 2 X 3 serta menghitung dan menampilkan hasil perkaliannya 2. Buatlah program memasukkan data Nilai Teori dan Nilai Praktek sepuluh mahasiswa menggunakan larik untuk menyimpan data nama dan nilai mahasiswa tersebut, lalu menampilkan kembali data nama dan nilai yang dimasukkan, serta menampilkan hasil perhitungan Nilai Akhir (yang merupakan rata-rata Nilai Teori dengan Nilai Praktek) masing-masing mahasiswa.
Program Multidim; Uses WinCrt; Var LarikBil[5][2] = { {0,0}, {1,2}, {2,4}, {3,6}, {4,8}}; Begin for i:=0 to 4 do for j:=0 to 1 do writeln(‘LarikBil[‘,I,’][‘,j,’]: ‘,LarikBil[I,j]; End.
Bahasa Basic: DIM LarikBil(5,2) AS Integer FOR i = 0 TO 4 FOR j=0 TO 1 PRINT "LarikBil(" i "," j "): "; :READ LarikBil(i,j) PRINT LarikBil(I,j) NEXT NEXT DATA 0,0,1,2,2,4,3,6,4,8
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
MODUL 5 MENGGUNAKAN STRUKTUR (RECORD) A.
TUJUAN
Setelah menyelesaikan materi praktikum ini, diharapkan Anda dapat: 1. Mendeklarasikan struktur (record). 2. Menggunakan struktur (record) pada program.
B.
SKENARIO
Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.
D.
struct{ float r; float K; double L; } Lingkaran; cout << "Masukkan jari-jari lingkaran: "; cin >> Lingkaran.r; Lingkaran.K=2*3.14*Lingkaran.r; Lingkaran.L=3.14* Lingkaran.r* Lingkaran.r; cout << "Keliling Lingkaran: " << Lingkaran.K << endl; cout << "Luas Lingkaran : " << Lingkaran.L << endl; }
PERALATAN
Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Borland C++, Turbo Pascal, dan QuickBasic.
C.
20
LATIHAN
Latihan 5.a Contoh program C berikut menggunakan struktur untuk menyimpan data jarijari, keliling, dan luas lingkaran. Setelah pemakai memasukkan ukuran jari-jari lingkaran, kemudian dihitung keliling dan luasnya, lalu hasil perhitungannya ditampilkan di layar. Ketik kode program tersebut lalu lakukan kompilasi. Simpan file program dengan nama Lingkar; Bahasa C: #include main() {
Penyusun: Carwoto ([email protected])
Bahasa Pascal: Program Lingkar; Uses WinCrt; Type Lingkar = record R : real; K : real; L : double; end; Var Lingkaran : Lingkar; Begin Write(‘Masukkan jari-jari lingkaran: ‘); readln(Lingkaran.r); Lingkaran.K:=2*3.14*Lingkaran.r; Lingkaran.L:=3.14* Lingkaran.r* Lingkaran.r; Writeln(‘Keliling Lingkaran: ‘,Lingkaran.K); writeln(‘Luas Lingkaran : ‘,Lingkaran.L); End.
Bahasa Basic: TYPE Lingkar R As Single K As Single L As Double END TYPE DIM Lingkaran As Lingkar PRINT "Masukkan jari-jari lingkaran: " INPUT Lingkaran.r Lingkaran.K=2*3.14*Lingkaran.r Lingkaran.L=3.14* Lingkaran.r* Lingkaran.r
Penyusun: Carwoto ([email protected])
MENGGUNAKAN STRUKTUR (RECORD)
21
PRINT "Keliling Lingkaran: ", Lingkaran.K PRINT "Luas Lingkaran : ", Lingkaran.L
Latihan 5.b Contoh program berikut hampir sama dengan program pada Latihan 5.a, hanya saja dipakai untuk menghitung keliling dan luas tiga buah lingkaran. Ketik kode program tersebut lalu lakukan kompilasi. Simpan file program dengan nama Lingkar3. Bahasa C: #include main() { struct{ float r; float K; double L; } Lingkaran[3]; int I; for(I=0;I<3;I++) { cout << "Jari-jari Lingkaran-" << I+1 << endl; cin >> Lingkaran[I].r; Lingkaran[I].K=2*3.14*Lingkaran[I].r; Lingkaran[I].L=3.14* Lingkaran[I].r* Lingkaran[I].r; } for(I=0;I<3;I++) { cout << "Lingkaran-" << I+1 << endl; cout << "Keliling : " << Lingkaran[I].K << endl; cout << "Luas : " << Lingkaran[I].L << endl; } }
Bahasa Pascal: Program Lingkar3; Uses WinCrt; Type Lingkar = record R : real; K : real; L : double; End; Var Lingkaran :array[0..2] of Lingkar;
Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
22
I : integer; Begin For I:=0 to 2 do begin write(‘Jari-jari Lingkaran-‘,I+1); readln(Lingkaran[I].r); Lingkaran[I].K:=2*3.14*Lingkaran[I].r; Lingkaran[I].L:=3.14* Lingkaran[I].r* Lingkaran[I].r; End; For I:=0 to 2 do begin writeln(‘Lingkaran-‘,I+1); writeln(‘Keliling : ‘,Lingkaran[I].K); writeln(‘Luas : ‘,Lingkaran[I].L); end; End.
Bahasa Basic: TYPE Lingkar R As Single K As Single L As Double END TYPE DIM Lingkaran(3) As Lingkar DIM I AS Integer FOR I=1 to 3 PRINT "Jari-jari lingkaran ", I INPUT Lingkaran[I].r Lingkaran[I].K=2*3.14*Lingkaran[I].r Lingkaran[I].L=3.14* Lingkaran[I].r* Lingkaran.r NEXT FOR I=1 TO 2 PRINT "Keliling Lingkaran: ",I, Lingkaran[I].K PRINT "Luas Lingkaran : ",I, Lingkaran[I].L NEXT
E. TUGAS PRAKTIKUM Buatlah program menggunakan struktur yang berfungsi untuk memasukkan data NIM, Nama, dan IPK lima (5) orang mahasiswa, kemudian menampilkan kembali data tersebut beserta hasil perhitungan rata-rata IPK-nya.
Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
MODUL 6 MEMBUAT FUNGSI A. TUJUAN Setelah menyelesaikan materi ini, Anda diharapkan dapat: 1. Mendefinisikan dan mendeklarasikan fungsi dan prototipe fungsi. 2. Menetapkan hasil balik dan cara pengiriman variabel pada deklarasi fungsi.
B. PERALATAN
float TempCel; cout << "Masukkan temperature dalam Fahrenheit: "; cin >> TempFer; TempCel = KonverSh(TempFer); cout << "\nBesar temperatur tersebut dalam Celsius : "; cout << TempCel << endl; return 0; } float KonverSh(float TempFer) { float TempCel; TempCel = ((TempFer - 32) * 5) / 9; return TempCel; }
Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Borland C++, Turbo Pascal, dan Turbo Basic.
Bahasa Pascal:
C. SKENARIO
Function KonverSh(TempFer : real):real; Var TempCel : real; begin TempCel := ((TempFer - 32) * 5) / 9; result TempCel; end;
Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.
D. LATIHAN Berikut merupakan contoh program yang menggunakan fungsi bernama KonverSh. Fungsi ini berguna untuk mengkonversi nilai Fahrenheit menjadi nilai Celcius. Ketik kode program tersebut lalu lakukan kompilasi dan pengujian. Simpan file program dengan nama UbahSuhu.
24
Program KonversiSuhu; Uses WinCrt; Var TempFer,TempCel : Real;
//Program utama Begin Write(‘Masukkan temperature dalam Fahrenheit: ‘); Readln(TempFer); TempCel := KonverSh(TempFer); Write(‘Besar temperatur tersebut dalam Celsius : ‘); Writeln(TempCel); End.
Bahasa Basic:
Bahasa C: #include float KonverSh(float); int main() { float TempFer;
DEF FNKonverSh(TempFer) TempCel = ((TempFer - 32) * 5) / 9 FNKonverSh=TempCel END DEF
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
MEMBUAT FUNGSI
25
PRINT "Masukkan temperature dalam Fahrenheit: "; :INPUT TempFer TempCel = KonverSh(TempFer) PRINT “Besar temperatur tersebut dalam Celsius : "; TempCel
MODUL 7 MEMBUAT PROSEDUR
E. TUGAS PRAKTIKUM 1. Tulislah fungsi bernama Perimeter, yang mengasilkan nilai bertipe long integer dan memiliki dua parameter yang keduanya bertipe short integer. Kedua parameter menyatakan panjang dan lebar bangun segi empat. Fungsi tersebut menghasilkan perimeter segi empat (dua kali Panjang dan dua kali Lebar). Gunakan fungsi tersebut dalam program. 2. Tulislah program yang berisi fungsi untuk memasukkan dua argumen integer short dan menghasikan pembagian bilangan pertama dengan bilangan kedua. Fungsi tidak melakukan pembagian apabila bilangan kedua nol, tetapi hasilnya –1. Gunakan fungsi tersebut dalam program. 3. Buatlah fungsi untuk menghitung hasil A pangkat N (AN). Rumus perpangkatan tersebut adalah sebagai berikut: AN = exp ( ln (A)* N). Gunakan fungsi tersebut pada program aplikasi untuk menghitung pangkat sejumlah bilangan.
A. TUJUAN Setelah menyelesaikan materi ini, Anda diharapkan dapat: 1. Mendefinisikan dan mendeklarasikan prosedur. 2. Menetapkan cara pengiriman variabel pada deklarasi prosedur. 3. Melakukan pemanggilan prosedur.
B. PERALATAN Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Turbo Pascal dan Turbo Basic.
C. SKENARIO Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.
D. LATIHAN Berikut merupakan contoh program yang menggunakan prosedur bernama PLingkar. Prosedur ini berguna untuk menghitung keliling dan luas lingkaran. Ketik kode program tersebut lalu lakukan kompilasi dan pengujian. Simpan file program dengan nama HLingkar. Bahasa Pascal: Program Lingkaran; Uses WinCrt; Var
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
MEMBUAT PROSEDUR
27
Modul Praktikum Algoritma dan Dasar Pemrograman
28
JarD, JarB : real;
E. TUGAS PRAKTIKUM
Procedure PLingkar(r : real); Const phi =3.14; Var K, L : real; Begin K:=2*phi*r; L:=phi* sqr(r); Writeln(‘Keliling : ‘,K); writeln(‘Luas : ‘,L); End;
1. Buatlah prosedur untuk menghitung luas, volume, dan panjang rusuk balok yang memliki panjang p, lebar l, dan tinggi t. Gunakan prosedur tersebut dalam program. 2. Buatlah prosedur untuk menghitung gaji bulanan pegawai, dengan ketentuan sebagai berikut:
{===Program utama===} Begin Write(‘Jari-Jari Roda Depan : ‘); Readln(JarD); Write(‘Jari-Jari Roda Belakang : ‘); Readln(JarB); Writeln; writeln(‘HASIL PERHITUNGAN‘); Writeln(‘RODA DEPAN: ‘); PLingkar(JarD); Writeln(‘RODA BELAKANG: ‘); PLingkar(JarB); End.
Gaji Pokok = Jumlah jam masuk X Rp 25.000,00 Gaji Lembur = (Jumlah jam masuk – 300) X Rp 10.000,00 Tunjangan anak sebesar Rp 50.000,00 per anak. Tunjangan Kesehatan sebesar Rp 100.000,00 Gaji diterima merupakan jumlah dari Gaji Pokok, Gaji Lembur, Tunjangan Anak, dan Tunjangan Kesehatan.
Gunakan prosedur tersebut dalam program perhitungan gaji sejumlah karywawan.
Bahasa Basic: SUB PLingkar(r) K=2*3.14*r L=3.14* sqr(r) PRINT ‘Keliling : ‘; K PRINT ‘Luas : ‘; L END SUB ‘===Program utama=== PRINT ‘Jari-Jari Roda Depan : ‘; :INPUT JarD PRINT ‘Jari-Jari Roda Belakang : ‘); :INPUT JarB PRINT ‘’ PRINT ‘HASIL PERHITUNGAN‘ PRINT ‘RODA DEPAN: ‘ CALL PLingkar(JarD) PRINT ‘RODA BELAKANG: ‘ CALL PLingkar(JarB)
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
30
MODUL 8 MENGGUNAKAN POINTER A. TUJUAN Setelah menyelesaikan materi ini, diharapkan Anda dapat: 1. Mendeklarasikan pointer. 2. Menggunakan berbagai operator pointer. 3. Membuat program yang melibatkan operasi pointer.
B. PERALATAN Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Borland C++dan Turbo Pascal.
C. SKENARIO Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur. Tugas Praktikum dikerjakan menggunakan salah satu Bahasa Pemrograman pilihan Praktikan.
D. LATIHAN Latihan 4.a Berikut ini adalah contoh program C yang mendemonstrasikan alamat operator dan alamat variabel lokal. Ketik kode program tersebut lalu lakukan kompilasi.
long sVar = -65535; cout << "shortVar:\t" << shortVar; cout << " Alamat variabel shortVar:\t"; cout << &shortVar _<< "\n"; cout << "longVar:\t" << longVar; cout << " Alamat variabel longVar:\t" ; cout << &longVar _<< "\n"; cout << "sVar:\t" << sVar; cout << " Alamat variable sVar:\t" ; cout << &sVar _<< "\n"; return 0; }
Latihan 4.b Program C berikut merupakan contoh program yang menggunakan pointer. Ketik kode program tersebut lalu lakukan kompilasi. Bahasa C: #include typedef unsigned short int USHORT; int main() { USHORT myAge; // variable USHORT * pAge = 0; // pointer myAge = 5; cout << "myAge: " << myAge << "\n"; pAge = &myAge; // menetapkan alamat myAge ke pAge cout << "*pAge: " << *pAge << "\n\n"; cout << "*pAge = 7\n"; *pAge = 7; // set myAge menjadi 7 cout << "*pAge: " << *pAge << "\n"; cout << "myAge: " << myAge << "\n\n"; cout << "myAge = 9\n"; myAge = 9; cout << "myAge: " << myAge << "\n"; cout << "*pAge: " << *pAge << "\n"; return 0; }
#include int main() { unsigned short shortVar=5; unsigned long longVar=65535;
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
MENGGUNAKAN POINTER
31
Modul Praktikum Algoritma dan Dasar Pemrograman
32
Latihan 4.c Program Pascal berikut merupakan contoh program untuk mengalokasian dan menghapus pointer. Ketik kode program tersebut lalu lakukan kompilasi. PROGRAM ContohPointer(OUTPUT); Uses WinCrt; TYPE intptr = ^INTEGER; realptr = ^REAL;
E. TUGAS PRAKTIKUM 1. Jika Anda memiliki variabel dengan nama Usia, tuliskan kode program menggunakan pointer untuk memanipulasi Usia. Tetapkan nilai 25 pada variabel Usia yang Anda deklarasikan, menggunakan pointer. 2. Buatlah program kecil yang mendeklarasikan sebuah integer dan pointer untuk integer tersebut. Tempatkan alamat integer pada pointer. Gunakan pointer untuk mengeset nilai di variabel integer.
VAR MyIntegerPointer, AnotherIntPointer:intptr; MyRealPointer :realptr;
3. Buatlah program melibatkan pointer untuk menghitung total nilai dari nilai-nilai yang dimasukkan pemakai secara dinamis (tidak dibatasi jumlah datanya).
BEGIN NEW(MyIntegerPointer); NEW(MyRealPointer); NEW(AnotherIntPointer); MyRealPointer^:= 2.25; MyIntegerPointer^:= 500; AnotherIntPointer^:= 400; MyRealPointer^:= MyIntegerPointer^; MyIntegerPointer:= AnotherIntPointer; WRITELN('MyRealPointer menunjuk ke: ', MyRealPointer^:2:2); WRITELN; IF (MyIntegerPointer = AnotherIntPointer) THEN WRITELN('Ya, Kedua pointer menunjuj ke lokasi yang sama.'); WRITELN('MyIntegerPointer menunjuk ke: ', MyIntegerPointer^); WRITELN('AnotherIntPointer menunjuk ke: ', AnotherIntPointer^); WRITELN; DISPOSE(MyIntegerPointer); DISPOSE(MyRealPointer); WRITELN('Tekan sembarang tombol untuk melanjutkan...'); READLN END.
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
Modul Praktikum Algoritma dan Dasar Pemrograman
34
MODUL 9 int nilai;
PEMROGRAMAN BERORIENTASI OBJEK A. TUJUAN Setelah menyelesaikan materi ini, diharapkan Anda dapat: 1. Mendeklarasikan kelas, objek, konstruktor, destructor dalam pemrograman. 2. Menerapkan teknik enkapsulasi, inheritance, dan polimorphisme. 3. Membuat program berorientasi objek.
yang
menerapkan
teknik
pemrograman
B. PERALATAN Untuk mengerjakan praktikum ini, dibutuhkan peralatan: 1. Personal komputer dengan sistem operasi Windows 95 atau yang lebih baru. 2. Perangkat lunak Turbo C++
C. SKENARIO Praktikan membuat program dengan bahasa pemrograman yang sesuai pada kasus di Latihan dengan bimbingan Instruktur. Setelah itu, praktikan mengerjakan Tugas Praktikum tanpa bimbingan Instruktur.
D. LATIHAN Latihan 9.a Berikut ini adalah contoh program C++ yang menerapkan teknik pembuatan kelas. Ketik kode program tersebut lalu lakukan kompilasi
public: Mahasiswa(); void setMahasiswa(int nim, char nm[], int nl); int getnomorinduk(); char *getnama(); int getnilai(); ~Mahasiswa(); }; int main() { Mahasiswa mhs; mhs.setMahasiswa(1015,"Budiono",93); cout<<"Data Siswa: "<
#include #include class Mahasiswa { int nomorinduk; char nama[20];
int Mahasiswa::getnilai()
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])
DASAR PEMROGRAMAN BERORIENTASI OBJEK { return(nilai); }
35
Mahasiswa::~Mahasiswa() { cout<<"Kelas siswa dengan nomor= "<
Latihan 9.b Program C berikut merupakan contoh program C++ yang menerapkan teknik pewarisan. Ketik kode program tersebut lalu lakukan kompilasi.
Modul Praktikum Algoritma dan Dasar Pemrograman
36
return(0); } void Kendaraan::Mengangkut() { cout<<"Mengangkut penumpang untuk dipindahkan"<
bantuan
orang
atau
#include class Kendaraan { public: void Mengangkut(); };
void MobilBalap::MelajuKencang() { cout<<"Malaju cepat sesuai keinginan pengemudinya"<
class Otomotif : public Kendaraan { public: void BerjalanSendiri(); };
Program C berikut merupakan contoh program C++ yang menerapkan teknik polimorfisme. Ketik kode program tersebut lalu lakukan kompilasi.
Latihan 9.c
class MobilBalap : public Otomotif { public: void MelajuKencang(); }; int main() { Kendaraan knd; Otomotif oto; MobilBalap mb; cout<
Penyusun: Carwoto ([email protected])
#include class HewanDarat { public: void virtual BergerakDiDarat() { cout<<"Berpindah tempat di atas tanah daratan"<
Penyusun: Carwoto ([email protected])
DASAR PEMROGRAMAN BERORIENTASI OBJEK 37 { public: void BergerakDiDarat() { cout<<"Berjalan-jalan di daratan kering atau berlumpur"<BergerakDiDarat(); delete phd; phd = new HewanAmpibi; cout<BergerakDiDarat(); HewanAir *pha; pha= new HewanAir; cout<Berenang(); delete pha; pha = new HewanAmpibi; cout<Berenang(); return(0); }
DAFTAR PUSTAKA 1. ITLESL. Programming and Problem Solving Through ‘C’ Language. Delhi: MacMillan India Ltd. 2. Jogiyanto H.M. (1989). Teori dan Aplikasi Program Komputer Bahasa Pascal. Yogyakarta: Andi Offset. 3. Kristanto, A. Algoritma dan Pemrograman dengan C++. Yogyakarta: Graha Ilmu. 4. Pamungkas. (1995). Tuntunan Praktis Pemrograman TURBO BASIC. Jakarta: Elexmedia Komputindo.
hewan darat : "<
5. Soesianto, Eko Nugroho, & P. Insap Satosa (1985). Pemrograman BASIC. Yogyakarta: Andi OFFSET. 6. Sutedjo, B. dan Michael AN. (1997). Algoritma dan Teknik Pemrograman: Konsep, Implementasi dan Aplikasi. Yogyakarta: Penerbit Andi.
hewan ampibi: "<
hewan air : "<
ampibi : "<
E. TUGAS PRAKTIKUM Buatlah untuk menampilkan komponen dan kemampuan Telepon, HP, dan PDA-Phone menggunakakan teknik OOP.
7. Wagito. (2003). Pemrograman Berorientasi Objek: Teori dan Aplikasi dengan C++ Berbasis Windows dan Linux. Yogyakarta: GavaMedia.
Tentang Penyusun Carwoto adalah seorang yang berkecimpung di bidang pendidikan. Alumni Teknik Elektro Fakultas Teknik UNDIP ini berpengalaman mengajar sebagai dosen di program studi Teknik Elektronika di Universitas Wahid Hasyim Semarang dan program Studi Teknik Informatika Sekolah Tinggi Manajemen dan Informatika (STMIK) ProVisi di Semarang. Saat ini bekerja sebagai konsultan bidang pendidikan Education Development Center (EDC), Inc. sebagai ICT Coordinator projek DBE 2 di provinsi Jawa Tengah. Dalam pekerjaannya saat ini, kegiatannya adalah melatih dan mendampingi sejumlah guru dan dosen dalam pengembangan pembelajaran berbasis TIK, pembelajaran di kelas dengan satu komputer, pengembangan professional guru dan perkuliahan jarak jauh (PJJ). Terkait bidang profesinya sebagai fasilitator atau pelatih, penulis adalah Master Trainer (MT) Intel Teach GS Course, Fasilitator Online Course Design (OCD) Course di EdTech Leader’s Online (ETLO), Instruktur di Cisco Networking Academy, serta Asisten Asesor di LSP Telematika.
Penyusun: Carwoto ([email protected])
Penyusun: Carwoto ([email protected])