Advertisement

 

 

Advertisement
loading...

 

 

MATERI PELATIHAN BERBASIS KOMPETENSI

SEKTOR TELEMATIKA

SUB SEKTOR PROGRAMMER KOMPUTER

 

 

MEMBUAT ALGORITMA

PEMROGRAMAN LANJUT

TIK.PR02.002.01

 

 

 

BUKU INFORMASI

 

 

 

 

 

 

DEPARTEMEN TENAGA KERJA DAN TRANSMIGRASI R.I.

DIREKTORAT JENDERAL PEMBINAAN PELATIHAN DAN PRODUKTIVITAS

Jl. Jend. Gatot Subroto Kav.51 Lt.7.B Jakarta Selatan

 

DAFTAR ISI

 

 

 

Daftar Isi……………………………………………………………………………………………. 2

 

BAB I    PENGANTAR ……………………………………………………………………………. 4

 

1.1.       Konsep Dasar Pelatihan Berbasis Kompetensi …………………………… 4

1.2.       Penjelasan Modul………………………………………………………………. 4

1.3.       Pengakuan Kompetensi Terkini (RCC)……………………………………… 7

1.4.       Pengertian-pengertian Istilah……………………………………………….. 8

 

BAB II   STANDAR KOMPETENSI………………………………………………………………. 10

 

2.1.       Peta Paket Pelatihan …………………………………………………………. 10

2.2.       Pengertian Unit Standar …………………………………………………….. 10

2.3.       Unit Kompetensi yang Dipelajari …………………………………………… 11

2.3.1.      Judul Unit ………………………………………………………….. 11

2.3.2.      Kode Unit ………………………………………………………….. 11

2.3.3.      Deskripsi Unit …………………………………………………….. 11

2.3.4.      Elemen Kompetensi ……………………………………………… 11

2.3.5.      Kriteria Unjuk Kerja ……………………………………………… 11

2.3.6.      Batasan Variabel ………………………………………………….. 13

2.3.7.      Panduan Penilaian ……………………………………………….. 13

2.3.8.      Kompetensi Kunci ………………………………………………… 15

 

BAB III  STRATEGI DAN METODE PELATIHAN …………………………………………….. 17

 

3.1.           Strategi Pelatihan……………………………………………………………. 17

3.2.           Metode Pelatihan ……………………………………………………………. 17

BAB IV  MATERI UNIT KOMPETENSI …………………………………………………………. 18

 

4.1 Tujuan Instruksional Umum ……………………………………………………… 18

4.2  Tujuan Instruksional Khuisus ……………………………………………………. 18

4.3  Penggunaan Array Multi Dimensi……………………………………………….. 19

4.3.1  Pengenalan array multi dimensi ………………………………………… 19

4.3.2  Array 2 dimensi (Matriks) …………………………………………………      19

4.3.2.1  Deklarasi matriks 2 dimensi …………………………………… .. 20

4.3.2.2 Memberikan dan membaca nilai dari matriks 2 dimensi ……  20

4.3.2.3 Mengubah isi dari matriks n dimensi…………………………….. 22

4.3.2.4 Penerapan matriks 2 dimensi ……………………………………. 23

4.3.2.5 Penjumlahan matriks 2 dimensi ………………………………….  23

4.3.2.6 Pengurangan matriks 2 dimensi…………………………………. 24

4.3.3 Array matriks 3 dimensi……………………………………………………       25

4.3.3.1 Deklarasi array 3 dimensi …………………………………………       25

4.3.3.2 Memberikan dan membaca nilai dari matriks 3 dimensi …..    27

4.3.3.3 Melakukan inisialisasi matriks 3 dimensi ………………………   27

4.3.3.4 Memberikan nilai secara langsung ……………………………..    27

4.3.3.5 Mengubah isi dari matriks 3 dimensi …………………………..   29

4.4 Penggunaan Prosedur dan Fungsi …………………………………………….   33

4.4.1 Apa itu file library …………………………………………………………… 34

4.4.1.1 Fungsi operasi string ………………………………………………. 34

4.4.1.2 Fungsi operasi karakter …………………………………………….      35

4.4.1.3 Fungsi operasi matematika ……………………………………….. 36

4.4.2  Membuat fungsi sendiri ……………………………………………………. 38

4.4.3  Parameter formal dan parameter aktual ………………………………..      40

4.4.4  Cara melewatkan parameter ………………………………………………      41

4.4.5  Variabel Lokal …………………………………………………………………     42

4.4.5.1 Sifat – sifat variabel lokal …………………………………………….    42

4.4.6  Variabel Global …………………………………………………………………   42

4.4.6.1 Sifat – sifat variabel global ……………………………………………   42

4.4.7  Variabel Statis ………………………………………………………………….   43

4.4.7.1 Sifat – sifat variabel statis ……………………………………………    43

4.4.8  Variabel Register ………………………………………………………………   43

4.4.8.1 Sifat – sifat variabel register ………………………………………….    43

4.5  Pemrograman Grafik ………………………………………………………………    46

4.5.1 Fungsi – fungsi pada proses inisialisasi modus grafis …………………. 47

4.5.2 Fungsi – fungsi penting dalam memanipulasi obyek grafis ………….. 50

4.5.3 Fungsi – fungsi penting untuk membuat obyek 2 dimensi …………… 52

4.5.4 Contoh – contoh program : ………………………………………………….    56

4.6  Pengenalan Obyek 3 Dimensi ……………………………………………………    63

4.7  Pengenalan Terhadap Obyek Open GL ………………………………………..     64

4.7.1  Pengelompokkan fungsi ……………………………………………………..    65

4.7.2  Proses inisialisasi Open GL ………………………………………………….    66

4.7.3  Fungsi dasar obyek Open GL ……………………………………………….    67

4.7.4  Proses kompilasi program Open GL ………………………………………     68

4.7.5  Algoritma animasi sederhana ………………………………………………     68

BAB V   SUMBER-SUMBER YANG DIPERLUKAN UNTUK PENCAPAIAN KOMPETENSI        72

 

5.1.       Sumber Daya Manusia ………………………………………………………………. 72

5.2.       Sumber-sumber Perpustakaan …………………………………………………….. 72

5.3.       Daftar Peralatan/Mesin dan Bahan ……………………………………………….. 73

 

DAFTAR PUSTAKA……………………………………………………………………………. 74

 

 

 

 

 

   BAB I

PENGANTAR

 

1.1.      Konsep Dasar Pelatihan Berbasis Kompetensi

  • Apakah pelatihan berdasarkan kompetensi?

Pelatihan berdasarkan kompetensi adalah pelatihan yang memperhatikan pengetahuan, keterampilan dan sikap yang diperlukan di tempat kerja agar dapat melakukan pekerjaan dengan kompeten. Standar Kompetensi dijelaskan oleh Kriteria Unjuk Kerja.

 

  • Apakah artinya menjadi kompeten ditempat kerja?

Jika Anda kompeten dalam pekerjaan tertentu, Anda memiliki seluruh keterampilan, pengetahuan dan sikap yang perlu untuk ditampilkan secara efektif ditempat kerja, sesuai dengan standar yang telah disetujui.

 

1.2. Penjelasan Modul

Modul ini dikonsep agar dapat digunakan pada proses Pelatihan Konvensional/Klasikal dan Pelatihan Individual/Mandiri. Yang dimaksud dengan Pelatihan Konvensional/Klasikal, yaitu pelatihan yang dilakukan dengan melibatkan bantuan seorang pembimbing atau guru seperti proses belajar mengajar sebagaimana biasanya dimana materi hampir sepenuhnya dijelaskan dan disampaikan pelatih/pembimbing yang bersangkutan.

Sedangkan yang dimaksud dengan Pelatihan Mandiri/Individual adalah pelatihan yang dilakukan secara mandiri oleh peserta sendiri berdasarkan materi dan sumber-sumber informasi dan pengetahuan yang bersangkutan. Pelatihan mandiri cenderung lebih menekankan pada kemauan belajar peserta itu sendiri. Singkatnya pelatihan ini dilaksanakan peserta dengan menambahkan unsur-unsur atau sumber-sumber yang diperlukan baik dengan usahanya sendiri maupun melalui bantuan dari pelatih.

 

1.2.1    Desain Modul

Modul ini didisain untuk dapat digunakan pada Pelatihan Klasikal dan Pelatihan Individual/mandiri :

  • Pelatihan klasikal adalah pelatihan yang disampaiakan oleh seorang pelatih.
  • Pelatihan individual/mandiri adalah pelatihan yang dilaksanakan oleh peserta dengan menambahkan unsur-unsur/sumber-sumber yang diperlukan dengan bantuan dari pelatih.

 

1.2.2. Isi Modul

Modul ini terdiri dari 3 bagian, antara lain sebagai berikut:

a.       Buku Informasi

Buku informasi ini adalah sumber pelatihan untuk pelatih maupun peserta pelatihan.

b.       Buku Kerja

Buku kerja ini harus digunakan oleh peserta pelatihan untuk mencatat setiap pertanyaan dan kegiatan praktik baik dalam Pelatihan Klasikal maupun Pelatihan Individual / mandiri.

Buku ini diberikan kepada peserta pelatihan dan berisi :

Kegiatan-kegiatan yang akan membantu peserta pelatihan untuk mempelajari dan memahami informasi.

  • Kegiatan pemeriksaan yang digunakan untuk memonitor pencapaian keterampilan peserta pelatihan.
  • Kegiatan penilaian untuk menilai kemampuan peserta pelatihan dalam melaksanakan praktik kerja.

c.       Buku Penilaian

Buku penilaian ini digunakan oleh pelatih untuk menilai jawaban dan tanggapan peserta pelatihan pada Buku Kerja dan berisi :

  • Kegiatan-kegiatan yang dilakukan oleh peserta pelatihan sebagai pernyataan keterampilan.
  • Metode-metode yang disarankan dalam proses penilaian keterampilan peserta pelatihan.
  • Sumber-sumber yang digunakan oleh peserta pelatihan untuk mencapai keterampilan.
  • Semua jawaban pada setiap pertanyaan yang diisikan pada Buku Kerja.
  • Petunjuk bagi pelatih untuk menilai setiap kegiatan praktik.
  • Catatan pencapaian keterampilan peserta pelatihan.

 

1.2.3.   Pelaksanaan Modul

Pada pelatihan klasikal, pelatih akan :

  • Menyediakan Buku Informasi yang dapat digunakan peserta pelatihan sebagai sumber pelatihan.
  • Menyediakan salinan Buku Kerja kepada setiap peserta pelatihan.
  • Menggunakan Buku Informasi sebagai sumber utama dalam penyelenggaraan pelatihan.
  • Memastikan setiap peserta pelatihan memberikan jawaban / tanggapan dan menuliskan hasil tugas praktiknya pada Buku Kerja.

 

Pada Pelatihan individual / mandiri, peserta pelatihan akan :

  • Menggunakan Buku Informasi sebagai sumber utama pelatihan.
  • Menyelesaikan setiap kegiatan yang terdapat pada buku Kerja.
  • Memberikan jawaban pada Buku Kerja.
  • Mengisikan hasil tugas praktik pada Buku Kerja.
  • Memiliki tanggapan-tanggapan dan hasil penilaian oleh pelatih.

 

1.3    Pengakuan Kompetensi Terkini (RCC)

  • Apakah Pengakuan Kompetensi Terkini (Recognition of Current Competency).

Jika Anda telah memiliki pengetahuan dan keterampilan yang diperlukan untuk elemen unit kompetensi tertentu, Anda dapat mengajukan pengakuan kompetensi terkini (RCC). Berarti Anda tidak akan dipersyaratkan untuk belajar kembali.

  • Anda mungkin sudah memiliki pengetahuan dan keterampilan, karena Anda telah :
  1. Bekerja dalam suatu pekerjaan yang memerlukan suatu pengetahuan dan keterampilan yang sama atau
  2. Berpartisipasi dalam pelatihan yang mempelajari kompetensi yang sama atau
  3. Mempunyai pengalaman lainnya yang mengajarkan pengetahuan dan keterampilan yang sama.

 

1.4    Pengertian-pengertian Istilah

Profesi

Profesi adalah suatu bidang pekerjaan yang menuntut sikap, pengetahuan serta keterampilan/keahlian kerja tertentu yang diperoleh dari proses pendidikan, pelatihan serta pengalaman kerja atau penguasaan sekumpulan kompetensi tertentu yang dituntut oleh suatu pekerjaan/jabatan.

 

Standardisasi

Standardisasi adalah proses merumuskan, menetapkan serta menerapkan suatu standar tertentu.

 

Penilaian / Uji Kompetensi

Penilaian atau Uji Kompetensi adalah proses pengumpulan bukti melalui perencanaan, pelaksanaan dan peninjauan ulang (review) penilaian serta keputusan mengenai apakah kompetensi sudah tercapai dengan membandingkan bukti-bukti yang dikumpulkan terhadap standar yang

dipersyaratkan.

 

Pelatihan

Pelatihan adalah proses pembelajaran yang dilaksanakan untuk mencapai suatu kompetensi tertentu dimana materi, metode dan fasilitas pelatihan serta lingkungan belajar yang ada terfokus kepada pencapaian unjuk kerja pada kompetensi yang dipelajari.

 

Kompetensi

Kompetensi adalah kemampuan seseorang untuk menunjukkan aspek sikap, pengetahuan dan keterampilan serta penerapan dari ketiga aspek tersebut ditempat kerja untuk mwncapai unjuk kerja yang ditetapkan.

 

Standar Kompetensi

Standar kompetensi adalah standar yang ditampilkan dalam istilah-istilah hasil

serta memiliki format standar yang terdiri dari judul unit, deskripsi unit, elemen kompetensi, kriteria unjuk kerja, ruang lingkup serta pedoman bukti.

 

Sertifikat Kompetensi

Adalah pengakuan tertulis atas penguasaan suatu kompetensi tertentu kepada seseorang yang dinyatakan kompeten yang diberikan oleh Lembaga Sertifikasi Profesi.

 

Sertifikasi Kompetensi

Adalah proses penerbitan sertifikat kompetensi melalui proses penilaian / uji kompetensi.

 

 

BAB II

         STANDAR KOMPETENSI

 

2.1.      Peta Paket Pelatihan

Modul yang sedang Anda pelajari ini adalah untuk mencapai satu unit kompetensi, yang termasuk dalam satu paket pelatihan, yang terdiri atas unit-unit kompetensi berikut:

2.1.1.      TIK.OP02.002.01       Membuat Algoritma Pemrograman Lanjut.

2.1.2.      TIK.OP02.003.01A  Mengoperasikan Sistem Operasi Microsoft Windows.

2.1.3.      TIK.OP02.001.01       Mengoperasikan komputer personal yang berdiri    sendiri ( PC Stand Alone )

 

2.2.      Pengertian Unit Standar Kompetensi

Apakah Standar Kompetensi?

Setiap Standar Kompetensi menentukan :

  1. Pengetahuan dan keterampilan yang diperlukan untuk mencapai kompetensi.
  2. Standar yang diperlukan untuk mendemonstrasikan kompetensi.
  3. Kondisi dimana kompetensi dicapai.

Apa yang akan Anda pelajari dari Unit Kompetensi ini?

Anda akan mempelajari tentang Algoritma Pemrograman lanjut.

Berapa lama Unit Kompetensi ini dapat diselesaikan?

Pada sistem pelatihan berdasarkan kompetensi, fokusnya ada pada pencapaian kompetensi, bukan pada lamanya waktu. Namun diharapkan pelatihan ini dapat dilaksanakan dalam jangka waktu tiga sampai tujuh hari. Pelatihan ini dijutukan bagi semua user terutama yang tugasnya berkaitan dengan programming, seperti operator, programmer, staff support, dan staff admin.

 

Berapa banyak/kesempatan yang Anda miliki untuk mencapai kompetensi?

Jika Anda belum mencapai kompetensi pada usaha/kesempatan pertama, Pelatih Anda akan mengatur rencana pelatihan dengan Anda. Rencana ini

akan memberikan Anda kesempatan kembali untuk meningkatkan level kompetensi Anda sesuai dengan level yang diperlukan.

Jumlah maksimum usaha/kesempatan yang disarankan adalah 3 (tiga) kali.

 

2.3.      Unit Kompetensi yang Dipelajari

Dalam sistem pelatihan, Standar Kompetensi diharapkan menjadi panduan bagi peserta pelatihan  untuk dapat :

  • mengidentifikasikan apa yang harus dikerjakan peserta pelatihan.
  • memeriksa kemajuan peserta pelatihan.
    • menyakinkan bahwa semua elemen (sub-kompetensi) dan criteria unjuk   kerja telah dimasukkan dalam pelatihan dan penilaian.

 

    KODE UNIT                  : TIK.PR02.002.01

                                           

                                           JUDUL UNIT    : Membuat Algoritma Pemrograman Lanjut

                                                                

                                                            DESKRIPSI UNIT :

 

Unit ini menentukan kompetensi yang diperlukan untuk mempelajari algoritma yang akan diterapkan pada program, tidak tergantung bahasa pemrograman yang akan digunakan. Algoritma pemrograman merupakan materi dasar yang harus dikuasai oleh setiap programer. Untuk tingkat lanjut ini ditekankan kepada penguasaan array multi dimensi, pemakaian prosedur dan fungsi serta pemanfaatan grafik.

 

 

 

 

 

 

ELEMEN KOMPETENSI

 

KRITERIA UNJUK KERJA
01     Menggunakan Array Multi Dimensi

 

 

 

 

 

 

 

 

1.1 Algoritma array multi dimensi dibuat dan dijelaskan.

 

1.2 Matrik 2D, 3D dibuat dalam bentuk penjumlahan, pengurangan, perkalian dsb.

 

1.3 Algoritma pembacaan, pengisian, pengubahan dan penghapusan data dalam array multi dimensi dibuat dan ditunjukkan.

 

 

02     Menggunakan prosedur dan fungsi  

2.1  Algoritma program dibuat dengan prosedur

 

2.2  Algoritma program dibuat dengan fungsi.

 

2.3   Algoritma program dibuat dengan prosedur dan fungsi.

 

03     Menggunakan library pemrograman grafik 3.1   Algoritma program dibuat dengan library berbasis grafik.

 

3.2   Algoritma pemrograman dengan grafik (gambar sederhana) berbentuk 2D dan 3D dibuat.

3.3   Algoritma pemrograman animasi dibuat dengan grafik (gambar sederhana).

 

 

 BATASAN VARIABEL

 

  1. Unit ini berlaku untuk seluruh sektor teknologi informasi dan komunikasi.
  2. Menjaga etika bersifat internal pada bidang teknologi informasi dan komunikasi.

 

 PANDUAN PENILAIAN

 

  1. 1.           Pengetahuan dan keterampilan penunjang untuk mendemontrasikan kompetensi, memerlukan bukti keterampilan dan pengetahuan di bidang berikut ini :

 

1.1                   Pengetahuan dasar :

1.1.1   Matematika dasar dan matematika logika

1.1.2   Flowchart dan dasar pemrograman

1.2                   Keterampilan dasar

 

Mengoperasikan sistem komputer

 

  1. 2.           Konteks penilaian

Kompetensi harus diujikan di tempat kerja atau di tempat lain secara teori dengan kondisi kerja sesuai dengan keadaan normal.

 

 

 

 

  1. Aspek penting penilaian

Aspek yang harus diperhatikan:

3.1     Kemampuan mengidentifikasi varian dan invarian yang berlaku umum pada pemrograman.

3.2     Kemampuan mengidentifikasi alur logika pemrograman sekuensial dan membuat algoritma.

3.3     Kemampuan mengidentifikasi pengelolaan array pada program.

3.4     Kemampuan menyimpan program ke dalam media penyimpanan.

3.5     Kemampuan membuat program membaca dan menulis data ke dalam file secara sekuensial dan indeks.

 

4.     Kaitan dengan unit-unit lainnya

4.1     Unit ini didukung oleh pengetahuan dan keterampilan dalam unit-unit kompetensi yang berkaitan dengan dasar-dasar teknologi informasi.

4.1.1    Mengoperasikan PC dan system informasi

4.1.2    TIK.PR02.001.01  Membuat Algoritma Pemrograman Dasar

4.2         Pengembangan pelatihan untuk memenuhi persyaratan dalam unit ini perlu dilakukan dengan hati-hati. Untuk pelatihan pra kejuruan umum, institusi harus menyediakan pelatihan yang mempertimbangkan serangkaian konteks industri seutuhnya tanpa bias terhadap sektor

tertentu. Batasan variabel akan membantu dalam hal ini. Untuk sektor tertentu/khusus, pelatihan harus disesuaikan untuk memenuhi kebutuhan sektor tersebut.

 

 

 

 

 

 

 

Kompetensi Kunci

 

No Kompetensi Kunci Dalam Unit ini Tingkat
1 Mengumpulkan, mengorganisir dan menganalisa informasi 1
2 Mengkomunikasikan ide-ide dan informasi 1
3 Merencanakan dan mengorganisir aktivitas-aktivitas 1
4 Bekerja dengan orang lain dan kelompok 1
5 Menggunakan ide-ide dan teknik matematika 2
6 Memecahkan masalah 1
7 Menggunakan teknologi 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BAB III

STRATEGI DAN METODE PELATIHAN

 

3.1.      Strategi Pelatihan        

Belajar dalam suatu sistem Berdasarkan Kompetensi berbeda dengan yang sedang “diajarkan” di kelas oleh Pelatih. Pada sistem ini Anda akan bertanggung jawab terhadap belajar Anda sendiri, artinya bahwa Anda perlu merencanakan belajar Anda dengan Pelatih dan kemudian melaksanakannya dengan tekun sesuai dengan rencana yang telah dibuat.

 

Persiapan/perencanaan

  1. Membaca bahan/materi yang telah diidentifikasi dalam setiap tahap belajar dengan tujuan mendapatkan tinjauan umum mengenai isi proses belajar Anda.
  2. Membuat catatan terhadap apa yang telah dibaca.
  3. Memikirkan bagaimana pengetahuan baru yang diperoleh berhubungan dengan pengetahuan dan pengalaman yang telah Anda miliki.
  4. Merencanakan aplikasi praktik pengetahuan dan keterampilan Anda.

 

Permulaan dari proses pembelajaran

  1. Mencoba mengerjakan seluruh pertanyaan dan tugas praktik yang terdapat pada tahap belajar.
  2. Merevisi dan meninjau materi belajar agar dapat menggabungkan pengetahuan Anda.

 

Pengamatan terhadap tugas praktik

  1. Mengamati keterampilan praktik yang didemonstrasikan oleh Pelatih atau orang yang telah berpengalaman lainnya.
  2. Mengajukan pertanyaan kepada Pelatih tentang konsep sulit yang Anda temukan.

 

 

Implementasi

  1. Menerapkan pelatihan kerja yang aman.
  2. Mengamati indicator kemajuan personal melalui kegiatan praktik.
  3. Mempraktikkan keterampilan baru yang telah Anda peroleh.

 

Penilaian

Melaksanakan tugas penilaian untuk penyelesaian belajar Anda.

 

3.2.          Metode Pelatihan      

Terdapat tiga prinsip metode belajar yang dapat digunakan. Dalam beberapa kasus, kombinasi metode belajar mungkin dapat digunakan.

 

Belajar secara mandiri

Belajar secara mandiri membolehkan Anda untuk belajar secara individual, sesuai dengan kecepatan belajarnya masing-masing. Meskipun proses belajar dilaksanakan secara bebas, Anda disarankan untuk menemui Pelatih setiap saat untuk mengkonfirmasikan kemajuan dan mengatasi kesulitan belajar.

 

Belajar Berkelompok

Belajar berkelompok memungkinkan peserta untuk dating bersama secara teratur dan berpartisipasi dalam sesi belajar berkelompok. Walaupun proses belajar memiliki prinsip sesuai dengan kecepatan belajar masing-masing, sesi kelompok memberikan interaksi antar peserta, Pelatih dan pakar/ahli dari tempat kerja.

 

Belajar terstruktur

Belajar terstruktur meliputi sesi pertemuan kelas secara formal yang dilaksanakan oleh Pelatih atau ahli lainnya. Sesi belajar ini umumnya mencakup topic tertentu.

 

 

 

 

BAB IV

MATERI UNIT KOMPETENSI

MEMBUAT ALGORITMA PEMROGRAMAN LANJUT

4.1 Tujuan Instruksional Umum

  • Siswa mampu mempelajari lanjutan dari Algoritma dan Pemrograman dasar
  • Siswa mampu memahami tentang array lebih lanjut
  • Siswa mampu menguasai tentang prosedur dan fungsi
  • Siswa mampu mengetahui fungsi – fungsi matematika, pengolahan kalimat dan grafik.
  • Siswa dapat mengetahui dasar – dasar dalam pemrograman grafis.
  • Siswa dapat mengetahui pemrograman tingkat lanjut menggunakan Open GL.
  • Siswa dapat mengetahui seberapa pentingnya Algoritma Pemrograman lanjut dalam mempelajari pemrograman.
  • Siswa dapat mengetahui tentang array multidimensi.
  • Siswa dapat dapat mengetahui tentang operasi matrik.
  • Siswa dapat mengetahui tentang bagaimana membuat prosedur dan fungsi sendiri.
  • Siswa dapat mengetahui fungsi – fungsi yang penting dalam matematika, pengolahan kalimat dan grafis.
  • Siswa dapat menguasai dasar – dasar dalam pemrograman grafis.
  • Siswa dapat mengetahui dasar dan penerapan program Open GL dalam pengelolaan grafis tingkat lanjut.

4.2 Tujuan Instruksional Khusus

 

 

 

Apa itu Algoritma Pemrograman Lanjut ?

Algoritma Pemrograman lanjut merupakan pembahasan – pembahasan lanjutan mengenai dasar – dasar pemrograman dan memperkenalkan pembaca kepada topik – topik lanjutan yang belum dibahas pada Algortma Pemrograman dasar. Topik – topik itu meliputi : Penggunaan array multi dimensi, penggunaan prosedur dan fungsi dan dasar – dasar pemrograman grafik. Seluruh contoh dan pembahasan ini akan menggunakan bahasap pemrograman Turbo C.

 

4.3        Penggunaan Array Multi Dimensi.

 

4.3.1      Pengenalan Array Multi Dimensi

Array multi dimensi pada dasarnya merupakan sebuah struktur data array biasa, seperti halnya struktur array 1 dimensi. Perbedaannya terletak pada kemampuan menyimpan elemen data yang lebih banyak daripada array 1 dimensi. Semakin besar jumlah dimensi yang terkandug, semakin banyak data yang dapat disimpan dalam struktur array tersebut. Pemilihan penggunaa array 1 dimensi atau array muti dimensi hendaknya disesuaikan dengan permasalahan yang ada, karena tidak semua permasalahan dapat diselesaikan dengan array 1 dimensi dan begitu pula sebaliknya.

 

4.3.2      Array 2 Dimensi (Matriks)

Array 2 dimensi atau biasa disebut juga sebagai matriks merupakan sekumpulan informasi yang setiap elemennya diacu dengan menggunakan 2 buah indeks ( yang biasanya dinotasikan dengan baris dan kolom).

Karakteristik array 2 dimensi secara umum adalah :

-       Kumpulan elemen bertipe sama.

-       Setiap elemen dapat diakses secara acak, jika indeks (baris dan kolomnya) sudah diketahui.

-       Merupakan struktur data statis, jika jumlah elemenya terlah ditentukan di awalnya maka tidak dapat dirubah selama pelaksanaan program.

 

4.3.2.1   Deklarasi Matriks 2 Dimensi

Tipe_data nama_matriks[elemen_baris][elemen_kolom]

 

Contoh :

int jumlah_lulusan[2][2];

  0 1
0 Jumlah_lulusa[0][0] Jumlah_lulusa[0][1]
1 Jumlah_lulusa[1][0] Jumlah_lulusa[1][1]

 

 

Tipe data struktur array 2 dimensi dapat berupa integer, float, booelan, dll.

Penamaan matriks harus memperhatikan ketentuan penamaan variabel.

Elemen baris menyatakan maksimal elemen baris matriks.

Elemen kolom menyatakan maksimlam elemen kolom matriks.

 

4.3.2.2   Memberikan dan membaca nilai dari matriks n dimensi.

Metode yang digunakan untuk memberikan nilai pada matriks 2 dimensi atau n dimensi memiliki kesamaan, terdapat 2 cara yang dapat digunakan yaitu :

 

    • Melakukan inisialisasi matrriks

Inisialisasi matriks berarti memberikan nilai pada setiap elemen ketika matriks tersebut dideklarasikan. Metode ini hanya bisa dilakukan ketika kita sudah

mengetahui nilai yang hendak dimasukkan kedalam setiap elemen data dari matriks.

Contoh :

Int a[2][3] = { {1,2,3} , {4,5,6}}

 

Tanda kurva pertama menunjukkan baris pertama dimana didalamnya terdapat 3 elemen (1,2,3) dan kurva kedua menunjukkan baris kedua dimana terdapat 3 elemen juga (4,5,6).

 

    • Memberikan nilai secara langsung (assignment)

Memberikan nilai secara langsung kepada matriks sama dengan memberikan nilai secara langsung kepda sebuah variabel, yang membedakan adalah dalam memberikan nilai kepada sebuah matriks kita harus mengetahui secara pasti indeks baris dan kolomnya terlebih dahulu.

 

Contoh :

Jumlah_lulusan[0][0] = 100; // memberikan data pada elemen baris ke 0, kolom ke 0.

Hal yang harus diperhatikan dalam pemberian nilai ke dalam sebuah matriks adalah indeks, kesalahan dalam pemberian indeks akan mengakibatkan pemberian data pada elemen yang salah ataupun akan mengakibatkan program error ( ini terjadi apabila indeks yang dituju lebih dari indeks maksimal yang telah ditetapkan sebelumnya).

 

Contoh :

int a[2][2]; // mendeklarasikan matriks array 2 dimensi, sebanyak 4 elemen.

 

a[1][1] = 100; // benar. Akan memasukkan data ke elemen baris ke 1 dan kolom ke 1.

A[3][2] = 20; // akan meberikan error pada program, karena elemen baris ke 3 tidak pernah didefinisikan sebelumnya.

 

    • Melalui piranti masukan (keyboard ataupun file)

Memberikan nilai kepada matriks array dapat dilakukan juga melalui keyboard secara langsung ataupun dengan membaca isi dari sebuah file. Metode yang digunakan pada setiap bahasa pemrograman berbeda – beda.

Contoh :

Program akan mengisi matriks 2 dimensi dengan menginput langsung dari

keyboard dan langsung menampilkan ke standar output (layar monitor).

 

#include <stdio.h>

 

void main(){

int a[2][2];

int baris, kolom;

 

// meminta inputan matriks melalui keyboard.

for(baris=0; baris< 2; baris++){

for (kolom=0;kolom < 2; kolom++){

scanf(“%d”,&a[baris][kolom]); // meminta inputan dari keyboard dan langsung memasukkan ke dalam tiap elemen matriks.

}}

// menampilkan isi dari elemen matriks ke layar.

for(baris=0; baris< 2; baris++){

for (kolom=0;kolom < 2; kolom++){

printf(“%d”,a[baris][kolo]);

// menampilkan setiap elemen matriks ke layar.

}}}

 

4.3.2.3  Mengubah isi dari matriks 2 Dimensi

Pada dasarnya matriks n dimensi dapat kita lakukan manipulasi pada setiap elemen datanya, tapi kita tidak dapat menghapus isi dari elemen matriks

 

tersebut. Metode yang digunakan untuk melakukan manipulasi / pengubahan isi dari elemen matriks tersebut sama dengan cara untuk memberikan nilai secara langsung (assignment). Elemen matriks yang telah didefinisikan pada deklarasi

awal tidak dapat dirubah ataupun dihapus saat program berjalan (ingat karakteristik bahwa array bersifat statis).

 

Contoh :

int a[2][2]; // deklarasi matriks dengan 4 elemen.

a[0][0] = 100; // memberi nilai 100 pada elemen (0,0).

A[0][0] = 150; // merubah isi dari elemen (0,0) menjadi 150.

 

4.3.2.4   Penerapan Matriks 2 Dimensi.

Penerapan matriks 2 dimensi sangat banyak, biasanya digunakan untuk perhitungan matematika ataupun sebagai dasar pemrograman linier. Berikut akan diberikan contoh operasi matematika berupa penjumlahan dan pengurangan matriks 2 dimensi.

 

4.3.2.5   Penjumlahan Matriks 2 Dimensi

Menjumlahkan 2 buah matriks A + B akan menghasilkan matriks baru C. Operasi penjumlahan baru dapat dilakukan apabila ukuran dari matriks A dan B sama dan seluruh elemen telah terisi nilai tertentu.

 

C[i,j] = A [i,j] + B[i,j] untuk setiap i dan j tertentu.

 

A = [ [2,2], [3,3] ]

B = [ [3,3] , [2,2] ]

C = A + B

C = [ [5,5], [5,5] ]

Pada dasarnya setiap elemen pada baris dan kolom tertentu akan dijumlahkan pada matriks lain pada elemen baris dan kolom tertentu.

Contoh program :

#include <stdio.h>

 

void main(){

int a[2][2] = { {1,2}, {3,4}};

int b[2][2] = {{5,6}, {7,8}};

int c[2][2];

int baris, kolom;

 

for(baris = 0; baris <2; baris++){

for(kolom = 0; kolom <2; kolom++){

c[baris][kolom] = a[baris][kolom] + b[baris][kolom];} // menjumlahkan matriks.

}

for(baris = 0; baris <2; baris++){

for(kolom = 0; kolom <2; kolom++){

printf(“%d”,c[baris][kolom]); // menampilkan matriks hasil penjumlahan.

}}}

 

4.3.2.6   Pengurangan Matriks 2 Dimensi

Mengurangkan 2 buah matriks A + B akan menghasilkan matriks baru C. Operasi penjumlahan baru dapat dilakukan apabila ukuran dari matriks A dan B sama dan seluruh elemen telah terisi nilai tertentu.

 

C[i,j] = A [i,j] – B[i,j] untuk setiap i dan j tertentu.

 

A = [ [5,5], [6,6] ]

B = [ [3,3] , [2,2] ]

C = A – B

C = [ [2,2], [4,4] ]

Pada dasarnya setiap elemen pada baris dan kolom tertentu akan dikurangkan pada matriks lain pada elemen baris dan kolom tertentu.

 

Contoh program :

#include <stdio.h>

 

void main(){

int a[2][2] = { {1,2}, {3,4}};

int b[2][2] = {{5,6}, {7,8}};

int c[2][2];

int baris, kolom;

for(baris = 0; baris <2; baris++){

for(kolom = 0; kolom <2; kolom++){

c[baris][kolom] = b[baris][kolom] – a[baris][kolom];}

// mengurangkan matriks. }

for(baris = 0; baris <2; baris++){

for(kolom = 0; kolom <2; kolom++){

printf(“%d”,c[baris][kolom]); // menampilkan matriks hasil penjumlahan.

}}}

 

4.3.3      Array Matriks 3 Dimensi

Pada dasarnya matriks array 3 dimensi memiliki kesamaan dalam hal karakteristik dan aturan – aturan pemberian nilai, pengubahan nilai. Hal yang harus diperhatikan adalah gambaran dari sebuah matriks array 3 dimensi yang berbeda dengan array 1 dimensi ataupun matriks array 2 dimensi. Matriks array 3 dimensi bisa digambarkan seperti gambar 3 dimensi dan memang lebih banyak dipergunakan sebagai dasar perhitungan matematika pemrograman grafis yang menggunakan bentuk 3 dimensi.

 

4.3.3.1        Deklarasi Array 3 Dimensi

 

Tipe_data nama_matriks [elemen baris][elemen kolom][elemen detil_kolom];

 

Tipe data dapat berupa integer, float, boolean atau tipe data dasar lainnya.

Nama matriks disesuaikan dengan aturan penamaan variabel.

Elemen baris menunjukkan maksimal elemen baris matriks.

Elemen kolom menunjukkan maksimal elemen kolom matriks.

Elemen detil kolom menunjukkan maksimal elemen detil dari setiap kolom matriks.

 

 

Contoh :

Int a[2][2][2];

Baris/ Kolom 0 1
0 Lihat tabel 1.1 Lihat tabel 1.2
1 Lihat tabel 1.3 Lihat tabel 1.4

 

Pada matriks 3 dimensi memungkinkan untuk menyimpan elemen data pada setiap kolom dari matriks. Sehingga bentuknya menjadi seperti ini.

 

Tabel 1.1

Pada matriks (0,0)

Indeks = 0

Nilai = 10

Indeks = 1

Nilai = 20

 

Tabel 1.2

Pada matriks (0,1)

Indeks = 0

Nilai = 30

Indeks = 1

Nilai = 40

 

Tabel 1.3

Pada matriks (1,0)

Indeks = 0

Nilai = 50

Indeks = 1

Nilai = 60

 

Tabel 1.4

Pada matriks (1,1)

Indeks = 0

Nlai = 70

Indeks = 1

Nilai = 80

 

Pada tabel – tabel diatas terlihat jelas bahwa penyimpanan data dilakukan pada elemen detil dari setiap elemen baris dan kolom.

 

4.3.3.2        Memberikan dan membaca nilai dari matriks n dimensi.

Metode yang digunakan untuk memberikan nilai pada matriks 3 dimensi memiliki kesamaan dengan matriks 2 dimensi ataupun dengan array 1 dimensi. Terdapat 3 metode yang dapat digunakan, antara lain :

 

4.3.3.3        Melakukan Inisialisasi Matriks 3 Dimensi

Inisialisasi matriks berarti memberikan nilai pada setiap elemen ketika matriks tersebut dideklarasikan. Metode ini hanya bisa dilakukan ketika kita sudah mengetahui nilai yang hendak dimasukkan kedalam setiap elemen data dari matriks.

 

Contoh :

Int a[2][2][2] = {

{ à baris pertama

{1,2}, à elemen baris pertama, kolom pertama

{3,4} à elemen baris pertama, kolom kedua

},

{ à baris kedua

{5,6}, à elemen baris kedua, kolom pertama

{7,8} à elemen baris kedua, kolom kedua

}}

Pada contoh diatas dijabarkan keberadaan nilai pada setiap indeks baris dan kolom tertentu.

 

4.3.3.4      Memberikan nilai secara langsung (assignment)

Memberikan nilai secara langsung kepada matriks sama dengan memberikan nilai secara langsung kepda sebuah variabel, yang membedakan adalah dalam

 

memberikan nilai kepada sebuah matriks kita harus mengetahui secara pasti indeks baris dan kolomnya terlebih dahulu.

 

Contoh :

Int a[2][2][2];

A[0[0][0] = 100; // memberikan nilai pada detil kolom dari indeks baris pertama dan kolom pertama.

 

Hal yang harus diperhatikan dalam pemberian nilai ke dalam sebuah matriks adalah indeks, kesalahan dalam pemberian indeks akan mengakibatkan pemberian data pada elemen yang salah ataupun akan mengakibatkan program error ( ini terjadi apabila indeks yang dituju lebih dari indeks maksimal yang telah ditetapkan sebelumnya).

 

Contoh :

int a[2][2][2]; // mendeklarasikan matriks array 2 dimensi, sebanyak 4 elemen.

a[1][1][1] = 100; // benar. Akan memasukkan data ke elemen baris ke 1 dan kolom ke 1.

A[3][2][1] = 20; // akan meberikan error pada program, karena elemen baris ke 3 tidak pernah didefinisikan sebelumnya.

 

    • Melalui piranti masukan (keyboard ataupun file)

Memberikan nilai kepada matriks array dapat dilakukan juga melalui keyboard secara langsung ataupun dengan membaca isi dari sebuah file. Metode yang digunakan pada setiap bahasa pemrograman berbeda – beda.

 

Contoh :

Program akan mengisi matriks 3 dimensi dengan menginput langsung dari keyboard dan langsung menampilkan ke standar output (layar monitor).

 

 

#include <stdio.h>

 

void main(){

int a[2][2][2];

int baris, kolom,detil_kolom;

// meminta inputan matriks melalui keyboard.

for(baris=0; baris< 2; baris++){

for (kolom=0;kolom < 2; kolom++){

for(detil_kolom=0; detil_kolom <2; detil_kolom++){

scanf(“%d”,&a[baris][kolom][detil_kolom]); // meminta inputan dari keyboard dan langsung memasukkan ke dalam tiap elemen matriks.

}}}

// menampilkan isi dari elemen matriks ke layar.

for(baris=0; baris< 2; baris++){

for (kolom=0;kolom < 2; kolom++){

for(detil_kolom=0; detil_kolom <2; detil_kolom++){

printf(“%d”,a[baris][kolom][detil_kolom]);

// menampilkan setiap elemen matriks ke layar.

}}}}

 

4.3.3.5         Mengubah isi dari matriks 3 Dimensi

Pada dasarnya matriks n dimensi dapat kita lakukan manipulasi pada setiap elemen datanya, tapi kita tidak dapat menghapus isi dari elemen matriks tersebut. Metode yang digunakan untuk melakukan manipulasi / pengubahan isi dari elemen matriks tersebut sama dengan cara untuk memberikan nilai secara langsung (assignment). Elemen matriks yang telah didefinisikan pada deklarasi awal tidak dapat dirubah ataupun dihapus saat program berjalan (ingat karakteristik bahwa array bersifat statis).

 

 

 

Contoh :

int a[2][2][2]; // deklarasi matriks dengan 4 elemen.

a[0][0][0] = 100; // memberi nilai 100 pada elemen (0,0).

A[0][0][0] = 150; // merubah isi dari elemen (0,0) menjadi 150.

 

    • Penerapan Matriks 3 Dimensi.

Penerapan matriks 3 dimensi biasanya digunakan sebagai dasar perhitungan pemrograman grafis 3 dimensi, karena dari struktur datanya memang memenuhi kapasitas untuk menyimpan elemen data yang lebih besar daripada matriks 2 dimensi. Berikut akan diberikan contoh operasi penjumlahan dan pengurangan dari matriks 3 dimensi.

 

    • Penjumlahan Matriks 3 Dimensi

Menjumlahkan 3 buah matriks A + B akan menghasilkan matriks baru C. Operasi penjumlahan baru dapat dilakukan apabila ukuran dari matriks A dan B sama dan seluruh elemen telah terisi nilai tertentu.

 

C[i,j,k] = A [i,,kj] + B[i,j,k] untuk setiap i, j dan k tertentu.

 

A = [ [ [2,2], [3,3] ] , [ [4,4],[5,5] ] ]

B = [ [ [3,3], [2,2] ] , [ [5,5],[4,4] ] ]

C = A + B

C = [ [ [5,5], [5,5] ] , [ [9,9],[9,9] ] ]

 

Pada dasarnya setiap detil elemen pada baris dan kolom tertentu akan dijumlahkan dengan detil elemen baris dan kolom tertentu dari matriks lain.

 

Contoh program :

#include <stdio.h>

 

 

void main(){

int a[2][2][2] = {

{{1,2}, {3,4}} ,

{{5,6}, {7,8}} ,

};

int b[2][2][2] = {

{{1,2}, {3,4}} ,

{{5,6}, {7,8}} ,

};

int c[2][2[2]];

int baris, kolom, detil_kolom;

 

for(baris = 0; baris <2; baris++){

for(kolom = 0; kolom <2; kolom++){

for(detil_kolom = 0; detil_kolom <2; detil_kolom++){

c[baris][kolom][detil_kolom] = a[baris][kolom][detil_kolom] + b[baris][kolom][detil_kolom];

// menjumlahkan matriks.

}}}

// menampilkan hasil penjumlahan ke layar.

for(baris = 0; baris <2; baris++){

for(kolom = 0; kolom <2; kolom++){

for(detil_kolom = 0; detil_kolom <2; detil_kolom++){

printf(“%d”,c[baris][kolom][detil_kolom]);

// menampilkan matriks hasil penjumlahan.

}}}

// akhir program.

}

 

 

 

    • Pengurangan Matriks 3 Dimensi

Mengurangkan 2 buah matriks A + B akan menghasilkan matriks baru C. Operasi penjumlahan baru dapat dilakukan apabila ukuran dari matriks A dan B

sama dan seluruh elemen telah terisi nilai tertentu.

C[i,j,k] = A [i,,kj] + B[i,j,k] untuk setiap i, j dan k tertentu.

 

A = [ [ [5,5], [6,6] ] , [ [7,7],[8,8] ] ]

B = [ [ [3,3], [2,2] ] , [ [5,5],[4,4] ] ]

C = A – B

C = [ [ [2,2], [4,4] ] , [ [2,2],[4,4] ] ]

 

Pada dasarnya setiap detil elemen pada baris dan kolom tertentu akan dikurangkan dengan detil elemen baris dan kolom tertentu dari matriks lain.

 

Contoh program :

#include <stdio.h>

 

void main(){

int a[2][2][2] = {

{{8,8}, {9,9}} ,

{{7,7}, {20,12}} ,

};

int b[2][2][2] = {

{{1,2}, {3,4}} ,

{{5,6}, {7,8}} ,

};

int c[2][2[2]];

int baris, kolom, detil_kolom;

for(baris = 0; baris <2; baris++){

for(kolom = 0; kolom <2; kolom++){

for(detil_kolom = 0; detil_kolom <2; detil_kolom++){

c[baris][kolom][detil_kolom] = a[baris][kolom][detil_kolom] – b[baris][kolom][detil_kolom];

// mengurangkan matriks.

}}}

// menampilkan hasil pengurangan ke layar.

for(baris = 0; baris <2; baris++){

for(kolom = 0; kolom <2; kolom++){

for(detil_kolom = 0; detil_kolom <2; detil_kolom++){

printf(“%d”,c[baris][kolom][detil_kolom]);

// menampilkan matriks hasil pengurangan.

}}}

// akhir program.

}

 

4.4          Penggunaan Prosedur dan Fungsi.

Fungsi merupakan suatu bagian dari program yang dimaksudkan untuk mengerjakan suatu tugas tertentu dan letaknya terpisah dari program yang

memanggilnya. Fungsi merupakan elemen utama dalam bahasa C karena bahasa C sendiri terbentuk dari kumpulan fungsi-fungsi. Dalam setiap program bahasa C, minimal terdapat satu fungsi yaitu fungsi main(). Fungsi banyak diterapkan

dalam program-program C yang terstruktur. Keuntungan penggunaan fungsi dalam program yaitu program akan memiliki struktur yang jelas (mempunyai readability yang tinggi) dan juga akan menghindari penulisan bagian program yang sama. Dalam bahasa C fungsi dapat dibagi menjadi dua, yaitu fungsi pustaka atau fungsi yang telah tersedia dalam bahasa C dan fungsi yang didefinisikan atau dibuat oleh programmer. Sebelum mengenal lebih lanjut mengenai fungsi , ada baikinya kita mempelajari sedikit tentang file library.

 

 

 

 

4.4.1  Apa itu File Library ?

File library adalah file yang telah disediakan pada masing – masing bahasa pemrograman yang didalamnya memuat fungsi – fungsi yang dapat digunakan untuk membantu pemrogram dalam menyusun kode program. Dalam setiap

bahasa pemrograman biasanya menyediakan file library lebih dari satu. Pengetahuan terhadap fle library ini sangat penting,  karena biasanya setiap bahasa pemrograman mengelompokkan fungsi – fungsi tersebut ke dalam file library tertentu berdasarkan fungsionalitasnya.

 

Contoh :

File library stiring.h pada bahasa C, didalamnya terdapat fungsi – fungsi yang digunakan untuk melakukan manipulasi string.

File library math.h pada bahasa C, didalamnya terdapat fungsi – fungsi yang digunakan untuk melakukan operasi matematika.

Dan banyak lagi file – file library, tergantung dari bahasa pemrograman yang digunakan.

 

4.4.1.1  Fungsi Operasi String (tersimpan dalam header file “string.h”)

. strcpy()

Berfungsi untuk menyalin suatu string asal ke variable string tujuan.

Bentuk umum : strcpy(var_tujuan, string_asal);

 

. strlen()

berfungsi untuk memperoleh jumlah karakter dari suatu string.

Bentuk umum : strlen(string);

 

. strcat()

Digunakan untuk menambahkan string sumber ke bagian akhir dari string

tujuan.

Bentuk umum : strcat(tujuan, sumber);

. strupr()

Digunakan untuk mengubah setiap huruf dari suatu string menjadi huruf

capital.

Bentuk umum : strupr(string);

 

strlwr()

Digunakan untuk mengubah setiap huruf dari suatu string menjadi huruf

kecil semua.

Bentuk umum : strlwr(string);

 

. strcmp()

Digunakan untuk membandingkan dua buah string.

Hasil dari fungsi ini bertipe integer dengan nilai :

(a) Negative, jika string pertama kurang dari string kedua.

(b) Nol, jika string pertama sama dengan string kedua

(c) Positif, jika string pertama lebih besar dari string kedua.

Bentuk umum : strcmp(string1, string2);

 

 

4.4.1.2  Fungsi Operasi Karakter (tersimpan dalam header “ctype.h”)

 

. islower()

Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter

merupakan huruf kecil.

Bentuk umum : islower(char);

 

. isupper()

Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter

merupakan huruf kapital.

Bentuk umum : isupper(char);

. isdigit()

Fungsi akan menghasilkan nilai benar (bukan nol) jika karakter

merupakan sebuah digit.

Bentuk umum : isdigit(char);

 

. tolower()

Fungsi akan mengubah huruf capital menjadi huruf kecil.

Bentuk umum : tolower(char);

 

. toupper()

Fungsi akan mengubah huruf kecil menjadi huruf kapital.

Bentuk umum : toupper(char);

 

4.4.1.3 Fungsi Operasi Matematik (tersimpan dalam header “math.h” dan “stdlib.h”)

 

. sqrt()

Digunakan untuk menghitung akar dari sebuah bilangan.

Bentuk umum : sqrt(bilangan);

 

. pow()

Digunakan untuk menghitung pemangkatan suatu bilangan.

Bentuk umum : pow(bilangan, pangkat);

 

. sin(), cos(), tan()

Masing-masing digunakan untuk menghitung nilai sinus, cosinus dan

tangens dari suatu sudut.

Bentuk umum :

sin(sudut);

cos(sudut);

tan(sudut);

. atof()

Digunakan untuk mengkonversi nilai string menjadi bilangan bertipe

double.

Bentuk umum : atof(char x);

 

. atoi()

Digunakan untuk mengkonversi nilai string menjadi bilangan bertipe

integer.

Bentuk umum : atoi(char x);

 

. div()

Digunakan untuk menghitung hasil pembagian dan sisa pembagian.

Bentuk umum : div_t div(int x, int y)

 

Strukturnya :

typedef struct

{ int qout; // hasil pembagian

int rem // sisa pembagian

} div_t;

 

. max()

Digunakan untuk menentukan nilai maksimal dari dua buah bilangan.

Bentuk umum : max(bilangan1, bilangan2);

 

. min()

Digunakan untuk menentukan bilangan terkecil dari dua buah bilangan.

Bentuk umum : min(bilangan1, bilangan2);

 

 

 

 

4.4.2 Membuat fungsi sendiri

Meskipun hampit setiap bahasa pemrograman telah menyediakan berbagai macam fungsi sesuai dengan kegunaannya, pada implementasinya pemrogram harus memiliki kemampuan untuk mendefisinikan fungsi sendiri. Berikut akan

dijelaskan keuntungan yang diperoleh dengan memecah bagian kode program ke dalam fungsi – fungsi kecil.

 

-       Sebuah program berisikan sekumpulan instruksi logis yang dieksekusi berdasarkan urutan, dalam penulisan program yang besar ada kemungkinan baris – baris kode program yang berulang. Dengan menggunakan fungsi, maka perulangan kode ini tidak perlu terjadi.

-       Pemakaian fungsi dapat menyederhanakan penulisan kode program dan mempengaruhi terhadap ukuran file dari program yang dihasilkan.

-       Pemakaina fungsi dapat memudahkan proses debug (pemeriksaan) ketika terjadi kesalahan pada kode program.

-       Pemakaian fungsi dapat memudahkan pemrogram ketika mengembangkan program yang lain, dan tidak perlu menuliskan kode program untuk sebuah masalah yang sama.

-       Pemakaian fungsi dapat meningkatkan efisiensi waktu pengembangan program.

 

Pada dasarnya fungsi dibagi menjadi 2, yaitu :

-       Fungsi

Fungsi adalah sebuah modul yang berisi sekumpulan kode program yang disusun untuk sebuah tujuan tertentu. Fungsi akan mengembalikan sebuah nilai tertentu kepada pemanggilnya.

 

Deklarasi Fungsi

Sebelum digunakan (dipanggil), suatu fungsi harus dideklarasikan dan

didefinisikan terlebih dahulu. Bentuk umum pendeklarasian fungsi adalah :

 

tipe_fungsi nama_fungsi(parameter_fungsi);

 

Sedangkan bentuk umum pendefinisian fungsi adalah :

 

Tipe_fungsi nama_fungsi(parameter_fungsi)

{

statement

statement

…………

…………

return nilai_tertentu

}

 

Hal-hal yang perlu diperhatikan dalam penggunaan fungsi :

 

1. Kalau tipe fungsi tidak disebutkan, maka akan dianggap sebagai fungsi

dengan nilai keluaran bertipe integer.

2. Untuk fungsi yang memiliki keluaran bertipe bukan integer, maka

diperlukan pendefinisian penentu tipe fungsi.

3. Untuk fungsi yang tidak mempunyai nilai keluaran maka dimasukkan ke

dalam tipe void

4. Pernyataan yang diberikan untuk memberikan nilai akhir fungsi berupa

pernyataan return.

5. Suatu fungsi dapat menghasilkan nilai balik bagi fungsi pemanggilnya.

 

-       Prosedur

Pada dasarnya sebuah modul juga berisi sekumpulan kode program yang disusun untuk sebuah tujuan tertentu, yang membedakan dengan fungsi adalah prosedur tidak mengembalikan nilai kepada pemanggilnya. Prosedur hanya menjalankan sekumpulan instruksi tanpa mengembalikan nilai apapun.

 

Deklarasi Prosedur

Sebelum digunakan (dipanggil), suatu prosedur harus dideklarasikan dan

didefinisikan terlebih dahulu. Bentuk umum pendeklarasian prosedur adalah :

 

void nama_prosedur(parameter_prosedur);

 

Pada pendeklarasian prosedur ditambahkan kata kunci void, yang berarti tidak mengembalikan nilai apapun kepada pemanggilnya.

Sedangkan bentuk umum pendefinisian prosedur adalah :

 

void nama_prosedur(parameter_prosedur)

{

statement

statement

…………

…………

}

 

4.4.3    Parameter Formal dan Parameter Aktual

 

1. Parameter Formal adalah variabel yang ada pada daftar parameter dalam

definisi fungsi.

2. Parameter Aktual adalah variabel (parameter) yang dipakai dalam

pemanggilan fungsi.

 

 

 

 

 

 

4.4.4  Cara Melewatkan Parameter

Cara melewatkan suatu parameter dalam Bahasa C ada dua cara yaitu :

 

1. Pemanggilan Secara Nilai (Call by Value)

    • Call by value akan menyalin nilai dari parameter aktual ke parameter                          formal
    • Yang dikirimkan ke fungsi / prosedur adalah nilai dari datanya, bukan alamat

memori letak dari datanya.

  • Fungsi / prosedur yang menerima kiriman nilai akan menyimpannya alamat terpisah dari nilai aslinya yang digunakan oleh bagian program yang memanggil fungsi / prosedur.
  • Perubahan nilai di fungsi / prosedur (parameter formal) tidak akan merubah nilai asli di bagian program yang memanggilnya.
    • Pengiriman parameter secara nilai adalah pengiriman searah, yaitu

dari bagian program yang memanggil fungsi / prosedur ke fungsi / prosedur yang dipanggil.

  • Pengiriman suatu nilai dapat dilakukan untuk suatu ungkapan, tidak

hanya untuk sebuah variabel, elemen array atau konstanta saja.

 

2. Secara Referensi (Call by Reference)

  • Pemanggilan secara Referensi merupakan upaya untuk melewatkan

alamat dari suatu variabel ke dalam fungsi / prosedur.

  • Yang dikirimkan ke fungsi / prosedur adalah alamat letak dari nilai datanya, bukan nilai datanya.
  • Fungsi / prosedur yang menerima kiriman alamat ini makan menggunakan alamat yang sama untuk mendapatkan nilai datanya.
  • Perubahan nilai di fungsi / prosedur akan merubah nilai asli di bagian program yang memanggil fungsi / prosedur.
    • Pengiriman parameter secara referensi adalah pengiriman dua arah,

yaitu dari fungsi / prosedur pemanggil ke fungsi / proisedur yang dipanggil dan juga sebaliknya.

  • Pengiriman secara acuan tidak dapat bdilakukan untuk suatu

ungkapan.

 

Penggolongan Variabel berdasarkan Kelas Penyimpanan (Storage Class)

Ketika mempelajari tentang metode untuk melewatkan parameter ke dalam fungsi / prosedur, hendaknya kita juga mengetahui jenis – jenis variabel dengan ruang lingkupnya masing – masing.

 

4.4.5  Variabel lokal

Variabel lokal adalah variabel yang dideklarasikan di dalam fungsi / prosedur tertentu dan hanya berlaku pada fungsi / prosedur tersebut..

 

4.4.5.1     Sifat-sifat variabel lokal :

  • Secara otomatis akan diciptakan ketika fungsi dipanggil dan akan

lenyap ketika proses eksekusi terhadap fungsi berakhir.

  • Hanya dikenal oleh fungsi tempat variabel dideklarasikan.
  • Tidak ada inisialisasi secara otomatis (saat variabel diciptakan

nilainya random).

  • Dideklarasikan dengan menambahkan kata auto (opsional).

 

4.4.6  Variabel global (eksternal)

Variabel global (eksternal) adalah variabel yang dideklarasikan di luar

fungsi.

 

4.4.6.1  Sifat-sifat variabel global :

  • Dikenal (dapat diakses) oleh semua fungsi.
  • Jika tidak diberi nilai awal secara otomatis berisi nilai nol.
  • Dideklarasikan dengan menambahkan kata extern (opsional).

4.4.7  Variabel Statis

Variabel statis adalah variabel yang nilainya tetap dan bisa berupa variabel

lokal (internal) dan variabel global (eksternal).

 

4.4.7.1     Sifat-sifat variabel statis :

  • Jika bersifat internal (lokal), maka variabel hanya dikenal oleh fungsi

tempat variabel dideklarasikan.

  • Jika bersifat eksternal (global), maka variabel dapat dipergunakan

oleh semua fungsi yang terletak pada program yang sama.

  • Nilai variabel statis tidak akan hilang walau eksekusi terhadap fungsi

telah berakhir.

  • Inisialisasi hanya perlu dilakukan sekali saja, yaitu pada saat fungsi

dipanggil pertama kali.

  • Jika tidak diberi nilai awal secara otomatis berisi nilai nol.
  • Dideklarasikan dengan menambahkan kata static.

 

4.4.8  Variabel Register

Variabel Register adalah variabel yang nilainya disimpan dalam resister dan

bukan dalam memori RAM.

 

4.4.8.1   Sifat-sifat variabel register :

  • Hanya dapat diterapkan pada variabel lokal yang bertipe int dan

char.

  • Digunakan untuk mengendalikan proses perulangan (looping).
  • Proses perulangan akan lebih cepat karena variabel register memiliki

kecepatan yang lebih tinggi dibandingkan variabel biasa.

  • Dideklarasikan dengan menambahkan kata register”.

 

 

 

 

Contoh 1.1

Program akan mendefinisikan sebuah fungsi untuk menghitung nilai akhir ujian berdasarkan rumus perhitungan : Nilai akhir = (nilai ujian * 3) / 4. Hasil perhitungan akan ditampilkan pada fungsi pemanggilnya.

 

#include <stdio.h>

 

int hitung_nilai(int nilai){

int n_akhir;

n_akhir = (nilai*3)/4;

return n_akhir;

}

void main(){

int nilai, n_akhir;

scanf(“%d”,&nilai); // meminta inputan nilai akhir dari keyboard.

n_akhir = hitung_nilai(nilai);

// memanggil fungsi hitung nilai dan menampung hasil kembaliannya.

printf(“Nilai akhir adalah : %d”,  n_akhir); // mencetak hasil ke layer monitor.

}

 

Hal yang harus diperhatikan adalah antara variabel n_akhir pada void main dengan variabel n_akhir dari fungsi hitung nilai memang memiliki kesamaan, namun secara pengalokasian di dalam memori sudah berbeda. Variabel n_akhir menjadi variabel lokal pada fungsi nya masing – masing.

 

Contoh 1.2

Program akan mendefisinikan sebuah prosedur untuk menuliskan hasil inputan array dari keyboard ke layer. Prosedur akan melewatkan paramter by value.

 

#include <stdio.h>

 

void tampil(int data[]){

for(int baris=0; baris < 5; baris++){

printf(“%d”,data[baris]);

}}

void main(){

int data[5];

 

for(int baris = 0; baris < 5; baris++){

scanf(“%d”, &data[baris]);

}

tampil(data);

 

// mengirimkan nilai dari variabel array data ke prosedur tampil.

// tidak menerima nilai kembalian dari prosedur tampil.

}

Hal yang harus diperhatikan, meskipun pada void main mengrimkan paramerer bernama data ke dalam prosedur tampil yang diterima oleh sebuah variabel bernama data juga, pada prinsipnya kedua pihak memiliki alokasi yang berbeda di memori computer meskipun memiliki nama yang sama. Nama variabel pengirim dan penerima tidak harus sama, penyamaan nama hanya digunakan untuk mempermudah penulisan kode program saja.

 

Contoh 1.3

Program akan melewatkan parameter by reference, dimana akan merubah nilai sebuah variabel dari prosedur lain.

 

#include <stdio.h>

void ubah_nilai(int &nilai){

nilai = 100; // mengubah nilai dari pointer nilai menjadi 100.

}

 

void main(){

int a = 10;

printf(“Nilai a adalah : %d”,a);

// sebelum dirubah nilainya dalam prosedur ubah nilai.

Ubah_nilai(a);

// mengirimkan alamat dari variabel a ke prosedur ubah nilai.

printf(“Nilai a sekarang : %d”, a);

// nilai a sekarang sudah berubah menjadi 100.

}

 

4.5                  Pemrograman Grafik.

Grafik komputer adalah gambar atau grafik yang dihasilkan oleh komputer. Teknik-teknik yang dipelajari dalam grafik komputer adalah teknik-teknik bagaimana membuat atau menciptakan gambar menggunakan komputer. Ada perbedaan yang sangat mendasar antara foto dan gambar, yaitu pada foto

semua detail  obyek terlihat sedangkan pada gambar (baik itu gambar manusia atau gambar komputer) tidak dapat memperlihatkan semua detail yang ada tetapi hanya detail-detail yang dianggap penting dalam menunjukkan pola suatu gambar. Grafik komputer merupakan perangkat (tool) dasar yang digunakan untuk  membuat gambar  dengan komputer. Dengan menggunakan perangkat ini, penciptaan gambar dapat dilakukan bahkan dimudahkan dengan menggunakan komputer

Program atau tool yang digunakan untuk menciptakan atau memanipulasi gambar / foto sudah sangat banyak, mulai dari Adobe Photoshop, Corel Draw, Adobe Image Ready, dll.  Pada pembahasan ini tidak akan membahas mengenai program atau tool tersebut, melainkan akan membahas mengenai dasar pemrograman grafik menggunakan bahasa pemrograman Turbo C.

 

File library yang digunakan

Fle library yang memuat fungsi – fungsi dalam operasi pemgrograman grafik di kompiler turbo C adalah : graphics.h. 

File tersebut harus dimuat terlebih dahulu pada tubuh program ketika hendak memulai menulis program. Berikut akan dijelaskan beberapa fungsi – fungsi yang penting dalam pemrograman grafik di Turbo C.

 

4.5.1    Fungsi – fungsi penting pada proses inisialisasi modus grafis.

 

-       void initgraph (int far * graphdriver, int far * graphmode, char far * pathtodriver)

Untuk menjalankan sistem kepada modus grafik, prosedur initgraph harus dipanggil terlebih dahulu. Prosedur ini akan memanggil driver grafik dari

tempat penyimpanan tertentu ataupun menvalidasi dari driver yang telah diregister di dalam sistem dan kemudian menjalankan sistem pada modus grafik. Selain itu, initgraph juga melakukan pengaturan ulang terhadap pengaturan grafik kembali ke pengaturan awal.

Berikut adalah kegunaan dari setiap parameter pada prosedur initgraph :

 

  • int far *graphdriver, ini akan mendeskripsikan driver grafis yang akan digunakan ke dalam sistem nantinya.
  • int far *graphmode, ini akan mendeskripsikan modus grafik yang digunakan. Apabila nilai dari graphmode = DETECT, maka akan membawa sistem kepada resolusi maksimal yang memungkinkan.

(Disarankan untuk memberikan nilai DETECT pada parameter graphmode, dimaksudkan agar sistem langsung menyesuaikan diri dengan kondisi resolusi maksimal).

  • char far *pathtodriver, ini akan mendeskripsikan jalur dari driver yang akan dimuat ke dalam sistem. File driver yang akan dicari berkestensi (.BGI), dan apabila nilainya kosong maka pencarian akan dilakukan pada direktori yang aktif saat ini.

 

 

 

-       void far closegraph(void)

Prosedur ini digunakan untuk mengembalikan modus grafik kepada kondisi sebelum pemanggilan prosedut initgraph(), dan seluruh alokasi memori yang diakibatkan penggunaan modus grafik tersebut akan dilepaskan dan modus sistem kembali ke modus teks.

 

-       void far detechgraph(int far * graphdriver, int far * graphmode)

Prosedur ini digunakan untuk mendeteksi adaptor grafik yang terinstall pada sistem kita, apabila tidak ada adaptor grafik yang terinstall pada komputer kita maka akan menampilkan pesan kesalahan. Prosedur ini berfungsi untuk melihat kapasitas maksimal yang dimiliki oleh sistem grafis kita.

 

-       int registerbgidriver(void (*driver)(void))

Fungsi ini digunakan untuk melakukan registrasi terhadap driver grafis yang akan digunakan. File driver dapat secara langsung dimuat dari media penyimpanan ataupun dilakukan koversi terlebih dahulu ke dalam file (.OBJ) menggunakan (BINOBJ.exe). Apabila proses registrasi berhasil, maka akan mengembalikan nilai positif dan apabila gagal maka akan mengembalikan nilai

negatif. Setelah proses registrasi berhasil, maka initgraph dapat memanggil sebagai driver yang teregister di dalam sistem.

 

-       int fat graphresult(void)

Fungsi ini akan mengembalikan nilai yang dihasilkan dari setiap operasi grafikyang dilakukan. Fungsi ini hanya akan berisi 2 kemungkinan, pertama adalah operasi grafis berhasil dilakukan dan kedua adalah operasi grafis gagal dilakukan. Nilai kesalaahan yang dimuat mulai dari -18 hingga 0, dimana pada setiap nilai tersebut memiliki jenis kesalahan sendiri – sendiri.

 

 

 

Kode Konstanta Pesan Kesalahan
0 grOk Tidak ada kesalahan
-1 grNoInitGraph (BGI) driver tidak terinstall
-2 grNoDetected Perangkat grafis tidak ada
-3 grFileNotFound File driver tidak ditemukan
-4 grInvalidDriver File driver tidak valid
-5 grNoLoadMem Memori tidak cukup
-6 grNoScanMem Memori tidak cukup untuk scan fill
-7 grNoFloodMem Memori tidak cukup untuk flood fill
-8 grFontNofFound File huruf tidak ada
-9 grNoFontMem Memori tidak cukup load huruf
-10

 

 

grInvalidMode Modus grafis tidak valid
-11 grError Grafis error
-12 grIOError Grafis I/O error
-13 grInvalidFont File huruf tidak valid
-14

 

 

grInvalidFontNum Nomor huruf tidak valid
-15 grInvalidDeviceNum Nomor devicde tidak valid
-18 grInvalidVersion Versi tidak valid

 

Pada implementasinya fungsi – fungsi yang digunakan untuk melakukan inisialisasi modus grafis cukup banyak, beberapa contoh prosedur diatas adalah prosedur yang paling sering digunakan dan sudah mampu untuk melakukan manipulasi grafis atapun merubah sistem dari modus teks ke dalam modus grafis. Untuk lebih jelasnya, silahkan melihat tutorial atau dokumentaso setiap bahasa pemrograman.

4.5.2    Fungsi – fungsi penting dalam memanipulasi obyek grafis.

 

-       void far setcolor(int color)

Prosedur yang digunakan untuk melakukan editing terhadap warna dari sistem grafis yang dipakai. Warna yang dirubah hanya warna tulisan ataupun obyek saja.

 

-       int far getcolor(void)

Fungsi yang digunakan untuk memperoleh warna yang aktif saat ini. Nilai yang dihasilkan berupa nilai integer, dimana setiap nilai intereger tersebut memiliki arti warna tertentu.

 

-       void far setbkcolor(int color)

Prosedur yang digunakan untuk melakukan manipulasi warna backround dari sebuah obyek atau tulisan.

 

-       int far getbkcolo(void)

Fungsi yang digunakan untuk memperoleh warna background dari sebuah obyek atau tulisan.

 

-       int far getmaxcolor(void)

Fungsi yang digunakan untuk memperoleh maksimal warna yang dapat digunakan / dilewatkan oleh prosedur setcolor atau setbkcolor. Setiap driver grafis tertentu memiliki kapasitas yang berbeda – beda. Sebagai contoh :

Pada driver 256K EGA memiliki maksimal warna 15, yang berarti setcolor dapat melewatkan parameter nilai dari 0 sampai 15, sedangkan pada driver CGA (Hercules Monochrome Adapter) akan mengembalikan nilai 1.

 

-       int far getmaxx(void)

Fungsi ini mengembalikan nilai maksimum dari kordinat x dari sistem. Nilai maksimum dari kordinat ini tergantung dari driver dan modus grafik system.

-       int far getmaxy(void)

Fungsi ini mengembalikan nilai maksimum dari kordinat y dari sistem. Nilai maksimum dari kordinat ini tergantung dari driver dan modus grafik sistem.

 

-       int far getx(void)

Fungsi ini akan mengembalikan nilai kordinat x berdasarkan posisi relative kursor saat itu.

 

-       int far gety(void)

Fungsi ini akan mengembalikan nilai kordinat y berdasarkan posisi relative kursor saat itu.

 

-       void far setlinestyle(int linestyle, unsigned upattern, int thickness)

Prosedur ini digunakan untuk melakukan pengaturan terhadap bentuk, jenis dan ketebalan dari garis lurus. Garis ini seringkali digunakan dalam membuat

bentuk 2 dimensi seperti : garis lurus, rectangle, busur, lingkaran dan bentuk polygon. Terdapat 3 buah parameter, antara lain :

  • int linestyle, mendeskripsikan jenis dari garis.
  • unsigned upattern, mendeskripsikan bentuk dari garis.
  • int thickness, mendeskripsikan ketebalan dari garis.

 

-       void settextjustify (int horiz, int vertz)

Prosedur ini digunakan untuk meletakkan sebuah string / kalimat berada pada posisi relatif terhadap batas horisontal (batas kiri layar) dan vertikal (batas atas layar).

Pada implementasinya, kita dapat melakukan pengesetan ulang terhadap posisi relatif terhadap layar, seperti halnya posisi horisontal (LEFT_TEXT, CENTER_TEXT, RIGHT_TEXT) dan vertikal (BOTTOM_TEXT, CENTER_TEXT, TOP_TEXT). Prosedur ini hanya bekerja pada modus grafis dan tidak bekerja pada modus teks.

 

-       void outtextxy(int x, int y, char * text)

Prosedut outtextxy digunakan untuk menuliskan kalimat pada kordinat tertentu menggunakan modus grafis. Terdapat 3 parameter, antara lain :

  • int x, akan mendeskripsikan nilai kordinat x.
  • int y, akan mendeskripsikan nilai kordinat y.
  • char * teks, berupa kalimat / string yang ingin dituliskan.

 

-       void settextstyle( int font, int direction, int charsize)

Prosedur ini digunakan untuk melakukan pengesetan terhadap ukuran dan jenis huruf yang digunakan pada modus grafis. Prosedur ini hanya berfungsi pada modus grafis saja dan tidak pada modus teks. Terdapat 3 parameter, antara lain :

  • int font, akan mendeskripsikan jenis huruf yang digunakan. Terdapat 5 jenis huruf, yaiut : standar, sans_serif, gothic, triplex dan small font.
  • Int direction, akan mendeskripsikan bagaimana sebuah kalimat aqkan dituliskan ke dalam layar. Terdapat 2 parameter, yaitu : HORIZ_DIR dan VERT_DIR. Dimana HORIZ_DIR akan menuliskan dari kiri ke kanan, dan VERT_DIR akan menuliskan dari bawah ke atas.
  • Int charsize, akan mendeskripsikan ukuran dari sebuah tulisan. Rentang nilai dari 0 hingga 10 kali ukuran huruf biasa.

Pada implementasinya, untuk memanipulasi tampilan obyek atau tulisan pada modus grafis terdapat cukup banyak fungsi – fungsinya. Pembahasan diatas mengacu pada fungsi – fungsi yang sering digunakan dan untuk lebih lengkapnya silahkan melihat tutorial / dokumentasi setiap bahasa pemrograman.

 

4.5.3   Fungsi – fungsi penting untuk membuat obyek 2 Dimensi

 

-       void far line( int x1, int y1, int x2, int y2)

Prosedur ini akan menggabarkan garis linier / lurus dari titik kordinat (x1,y1) hingga titik kordinat (x2,y2) berdasarkan warna yang aktif saat itu.

Pengubahan warna dapat dilakukan dengan menggunakan prosesur setcolor(int color).

 

-       void far linerel(int dx, int dy)

Prosedur ini akan menggambarkan garis linier / lurus dari posisi saat ini hingga jarak relative horisontal yang ditentukan dalam dx dan jarak relative vertikal yang ditentukan dalam dy.

 

-       void far lineto (int x, int y)

Prosedur ini akan menggambarkan garis lurus / linier dari posisi saat ini hingga kordinat yang dituju yang didefinisikan dalam nilai x dan y. Setelah itu posisi kursor akan dipindah ke kordinat (x,y).

 

-       void far ellipse(int x, int y, int stangle, int endangle,int xradius, int yradius)

Prosedur ini digunakan untuk menggambar busur elips berdasarkan warna yang aktif saat itu. Terdapat 6 buah parameter, antara lain :

  • int x, ini sebagai pusat kordinat x penggambaran.
  • int y, ini sebagai pusak kordinat y penggambaran.
  • int stangle, sebagai sudut awal (dalam derajat)
  • int endangle, sebagai sudut akhir (dalam derajat)
  • int xradius, sebagai diameter horizontal dari elips yang digambar.
  • Int yradius,sebagai diameter vertikal dari elips yang digambar.

 

-       void far fillellipse(int x, int y,int xradius, int yradius)

Prosedur ini digunakan untuk menggambar busur elips dan mengisi elips tersebut menggunakan warna dan metode pengisian yang telah diatur sebelumnya menggunakan prosedur setfilltype(). Terdapat 4 buah parameter, antara lain :

  • int x, ini sebagai pusat kordinat x penggambaran.
  • int y, ini sebagai pusak kordinat y penggambaran.
  • int xradius, sebagai diameter horizontal dari elips yang digambar.
  • Int yradius,sebagai diameter vertikal dari elips yang digambar.

 

-       void far arc(int x, int y, int stangle, int endangle, int radius)

Prosedur ini digunakan untuk menggambarkan bentuk busur. Terdapat 5 buah parameter, antara lain :

  • int x, ini sebagai pusat kordinat x penggambaran.
  • int y, ini sebagai pusak kordinat y penggambaran.
  • int stangle, sebagai sudut awal (dalam derajat)
  • int endangle, sebagai sudut akhir (dalam derajat)
  • int radius, sebagai diameter dari busur yang akan digambar.

 

-       void far circle(int x, int y, int radius)

Prosedur ini digunakan untuk menggambarkan bentuk lingkaran. Terdapat 3 buah parameter, antara lain :

  • int x, ini sebagai pusat kordinat x penggambaran.
  • int y, ini sebagai pusak kordinat y penggambaran.
  • int radius, sebagai diameter dari busur yang akan digambar.

 

-       void far rectangle(int left, int top, int right, int bottom)

Prosedur ini digunakan untuk menggambar bentuk rectangle (bentuk bujur sangkar dengan siku berbentuk sedikit elips). Terdapat 4 buah parameter, antara lain :

  • int top, menunjukkan kordinat x dari ujung kiri atas.
  • Int left, menunjukkan kordinat y dari ujung kiri atas.
  • Int right, menunjukkan kordinat x dari ujung kanan bawah.
  • Int bottom, menunjukkan kordinat y dari ujung kanan bawah.

Prosedur akan menggambarkan sesuai dengan warna dan bentuk garis yang telah didefinisikan sebelumnya.

 

 

-       void far drawpoly(int numpoints, int far *polypoints)

Prosedur ini digunakan untuk menggambar bentuk polygon menggunakan bentuk garis dan warna yang telah didefinisikan sebelumnya. Terdapat 2 buah parameter, antara lain :

  • int numpoints, mendeskripsikan jumlah titik yang ada.
  • Int far *polypoints, mendeskripsikan sekumpulan pasangan titik yang digunakan sebagai titik kordinat dari bentuk polygon. Jumlah pasangan titik ini = 2 X jumlah titik (numpoints). Setiap pasang titik medeskripsikan kordinat (x,y) dari bentuk polygon.

 

-       void far fillpoly(int numpoints, int far *polypoints)

Prosedur ini sama persis dengan prosedur drawpoly diatas, perbedaannya adalah prosedur ini akan mengisi bentuk polygon dengan warna dan model

 

pengisian yang telah didefinisikan sebelumnya. Penjelasan mengenai tiap parameter, sama dengan penjelasan pada prosedur drawpoly.

 

-       void far pieslice(int x, int y, int stangle, int endangle, int radius)

Prosedur ini digunakan untuk menggambarkan bentuk diagram pie. Terdapat 5 buah parameter, antara lain :

  • int x, ini sebagai pusat kordinat x penggambaran.
  • int y, ini sebagai pusak kordinat y penggambaran.
  • int stangle, sebagai sudut awal (dalam derajat)
  • int endangle, sebagai sudut akhir (dalam derajat)
  • int radius, sebagai diameter dari busur yang akan digambar.

Perbedaan antara arc dengan pieslice adalah pada bentuk ini akan dilakukan pengisian warna. Warna yang diisikan sesuai pengaturan warna melalui prosedur setfillstyle().

 

 

 

4.5.4        Contoh – contoh program :

 

Contoh 1.1

Program mendaftarkan driver grafis EGAVGA ke dalam sistem.

 

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

 

int main(void)

{

/* request auto detection */

int gdriver = DETECT, gmode, errorcode;

errorcode = registerbgidriver(EGAVGA_driver);

/*apabila registrasi gagal */

if (errorcode < 0)  {

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();

exit(1); /* terminate with an error code */

}

/* initialisasi graphics*/

initgraph(&gdriver, &gmode, “”);

/* memeriksa apakah inisialisasi grafis berhasil*/

errorcode = graphresult();

if (errorcode != grOk)  /* an error occurred */ {

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();

exit(1); /* terminate with an error code */

}

 

Contoh 1.2

Program membuka modus grafis dan menggambarkan garis sederhana kemudian mengembalikan ke modus teks.

 

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

 

int main(void)

{

/* auto detect */

int gdriver = DETECT, gmode, errorcode;

// inisialisasi modus grafis.

initgraph(&gdriver, &gmode, “”);

errorcode = graphresult(); // melihat apakah modus grafis berhasil di load.

if (errorcode != grOk) { // gagal inisialisasi modus grafis.

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();

exit(1);             /* program terminasi dengan ada error */

}

line(0, 0, getmaxx(), getmaxy()); // menggambar garis sederhana.

closegraph(); // mengembalikan ke modus teks.

return 0; // program terminasi tanpa ada error.

}

 

 

 

Contoh 1.3

Program untuk menuliskan teks ke dalam modus grafis pada posisi kordinat (50,50).

 

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

 

int main(void){

/*auto detect */

int gdriver = DETECT, gmode, errorcode;

int midx, midy;

/* inisialisasi modus grafis*/

initgraph(&gdriver, &gmode, “”);

errorcode = graphresult();

// memeriksa apakah berhasil meload modus grafis.

if (errorcode != grOk) { // apabila terjadi kegagalan.

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();

exit(1); /* program di terminasi dengan ada kesalahan */   }

midx =50;

midy = 50;

outtextxy(midx, midy, “Testing Sederhana”);  // menulis pada kordinat (50,50)

closegraph(); // kembali ke modus teks.

return 0; /* program di terminasi tanpa ada kesalahan */

}

 

 

Contoh 1.4

Program untuk menggambar garis lurus dari kordinat (10,20) hingga (30,50)

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

 

int main(void)

{

/* auto detect */

int gdriver = DETECT, gmode, errorcode;

// inisialisasi modus grafis.

initgraph(&gdriver, &gmode, “”);

errorcode = graphresult(); // melihat apakah modus grafis berhasil di load.

if (errorcode != grOk) { // gagal inisialisasi modus grafis.

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

 

 

printf(“Press any key to halt:”);

getch();

exit(1);             /* program terminasi dengan ada error */

}

line(10,20, 30, 50); // menggambar garis sederhana.

closegraph(); // mengembalikan ke modus teks.

return 0; // program terminasi tanpa ada error.

}

 

Contoh 1.5

Program untuk menggambar lingkaran pada kordinat (20,20) dengan radius 50.

 

 

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

 

int main(void){

/* Auto Detect */

int gdriver = DETECT, gmode, errorcode;

int midx, midy;

int radius = 100;

/* inisialisasi ke modus grafis */

initgraph(&gdriver, &gmode, “”)

errorcode = graphresult(); // melihat apakah berhasil meload modus grafis.

if (errorcode != grOk) { // terdapat kegagalan dalam meload modus grafis.

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();

exit(1); /* program di terminasi dengan ada kesalahan */

}

midx = getmaxx() / 2;

midy = getmaxy() / 2;

setcolor(getmaxcolor()); // atur warna sistem.

circle(midx, midy, radius); // mengammbar bentuk lingkaran.

closegraph(); // mengembalikan ke modus teks.

return 0; /* program di terminasi dengan ada kesalahan */

}

Contoh 1.6

Program untuk menggambarkan bentuk rectangle pada kordinat (10,10) dan (50,100).

 

 

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

 

int main(void){

/* Auto Detect */

int gdriver = DETECT, gmode, errorcode;

int midx, midy;

int radius = 100;

/* inisialisasi ke modus grafis */

initgraph(&gdriver, &gmode, “”)

errorcode = graphresult();

// melihat apakah berhasil meload modus grafis.

if (errorcode != grOk) { // terdapat kegagalan dalam meload modus grafis.

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();

exit(1); /* program di terminasi dengan ada kesalahan */

}

 

left = getmaxx() / 2 – 50;

top = getmaxy() / 2 – 50;

right = getmaxx() / 2 + 50;

bottom = getmaxy() / 2 + 50;

rectangle(left,top,right,bottom); // menggambar bentuk rectangle.

closegraph(); // mengembalikan ke modus teks.

return 0; /* program di terminasi dengan ada kesalahan */ }

 

 

 

Contoh 1.7

Program untuk menggambar bentuk poligon dengan 5 titik. Masing – masing titik kordinat akan digambarkan langsung di dalam program.

 

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

 

int main(void)

{

/* auto detect */

int gdriver = DETECT, gmode, errorcode;

int maxx, maxy;

 

/* array verteks dari poligon */

int poly[10];

initgraph(&gdriver, &gmode, “”); // inisialisaasi modus grafis.

errorcode = graphresult(); // melihat apakah modus grafis berhasil di load.

if (errorcode != grOk) { // terjadi kegagalan dama load modus grafis.

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();

exit(1); // program diterminasi dengan ada keslahan.

}

maxx = getmaxx();

maxy = getmaxy();

poly[0] = 20;           /* verteks pertama */

poly[1] = maxy / 2;

poly[2] = maxx – 20; /* kedua */

poly[3] = 20;

poly[4] = maxx – 50; /* ketiga */

poly[5] = maxy – 20;

poly[6] = maxx / 2;  /*keempat */

poly[7] = maxy / 2;

poly[8] = poly[0]; /* kelima = akhir penutur = verteks awal */

poly[9] = poly[1];

drawpoly(5, poly); // menggambar bentuki poligon.

closegraph(); // mengembalikan ke modus teks.

return 0; // program diterminasi tanpa ada kesalahan.

}

 

4.6  Pengenalan Obyek 3 Dimensi

Pemrograman grafis selau tidak pernah dari obyek 3 Dimensi, karena dewasa ini penggunaan obyek 3 dimensi semakin bervariatif. Mulai dari game console,

 

game online, film animasi hingga dunia periklanan. Program dan tool – tool yang digunakan untuk membuat obyek 3 dimensi juga semakin bervariatif, mulai dari openGL, 3D Studio Max, Maya dan lain sebagainya. Pada pembahasan ini kita akan mempelajari dasar – dasar dalam pemrograman obyek 3 Dimensi.

Objek 3 dimensi adalah sebuah model struktur data yang menyatakan suatu gambar 3D dibentuk dan disusun. Objek 3D didefinisikan dengan :

 

  • Objek 3D adalah sekumpulan titik-titik 3D (x,y,z) yang membentuk luasan-luasan (face) yang digabungkan menjadi  satu kesatuan.
  • Face adalah gabungan titik-titik yang membentuk luasan tertentu atau sering dinamakan dengan sisi.  Dari definisi ini, dapat dikatakan bahwa objek 3D merupakan kumpulan titik-titik dan kumpulan face yang merupakan susunan dari titik-titik  yang ditentukan. Seperti gambar kubus, kubus terdiri dari 8 titik dan 6 sisi/face. Dimana face merupakan polygon atau kumpulan titik-titik  yang disusun urutannya. Dalam kubus, facenya semua berupa bujur sangkar dengan 4 titik.

 

Pada dasarnya sebuah obyek 3D terdiri dari elemen – elemen dasar, antara lain :

 

  • Point

Point adalah sebuah titik yang digunakan untuk membangun obyek. Setiap titik dalam obyek 3D memiliki nilai dalam x, y, z .

 

  • Polyline

Polyline adalah sebuah fungsi yang dibentuk dari beberapa garis yang saling berhubungan dan membentuk sebuh kurva yang terbuka

  • Polygon

Polygon adalah suatu fungsi yang mirip dengan polyline hanya saja hasilnya adalah kurva tertutup, sedangkan polyline hasilnya kurva terbuka.

 

  • Filled Polygon (Face)

Filled Polygon adalah sebuah polygon yang bagian dalamnya diwarnai atau dipenuhi dengan sebuah warna tertentu. Filled polygon biasanya digunakan sebagai face dari pembentukan obyek 3D.

 

  • Gradate Polygon

Gradate polygon adalah sebuah polygon yang bagian dalamnya memiliki warna – warna yang bergradasi dari satu warna ke warna yang lain.

 

4.7  Pengenalan Terhadap Program OpenGL

Pada pembuatan obyek 3D, kita tidak dapat membuat dengan metode yang kita gunakan untuk membuat obyek 2D. Meski pada dasarnya sebuah obyek 3D adalah sekumpulan titik – titik (point) yang terhubung satu sama lain. Untuk menghasilkan sebuah obyek 3D yang baik maka kita akan mempelajari tentang dasar – dasar penerapan program openGL.

OpenGL adalah software (perangkat lunak) interface perangkat keras grafik. Interface ini terdiri dari sekitar 150 command atau perintah yang berbeda yang bisa digunakan untuk menentukan objek dan operasi yang dibutuhkan untuk menghasilkan aplikasi tiga dimensi yang interaktif.  OpenGL didesain untuk memperlancar, diimplementasikan pada  banyak jenis perangkat keras yang berbeda.

OpenGL tidak menyediakan command (perintah) untuk menggambarkan model dari objek tiga dimensi, kita harus membangun model yang diinginkan dari satu set kecil dari geometri seperti titik, garis, dan poligon.

Library yang menyediakan fitur ini tentunya bisa dibuat dengan OpenGL.

 

The OpenGL Utility Library (GLU) menyediakan beberapa fitur modeling, seperti permukaan kuadrik, kurva, dan bentuk-bentuk  lainnya. GLU adalah bagian standar dari setiap implementasi OpenGL. OpenGL memiliki lebih dari 200 fungsi.

 

4.7.1    Fungsi tersebut bisa dikelompokkan menjadi :

 

  • Fungsi primitif, menentukan elemen yang bisa menghasilkan gambar di layar. Fungsi ini terdiri dari 2 jenis, yaitu primitive geometric seperti  polygon (segi banyak) yang bisa dibuatmenjadi dua, tiga, atau empat dimensi, dan primitif gambar  seperti bitmaps.

 

  • Fungsi atribut, mengontrol tampilan dari primitif. Fungsi ini menentukan warna, jenis garis, properti material, sumber cahaya, dan tekstur.
  • Fungsi pandangan, menentukan properti kamera. OpenGL menyediakan sebuah virtual kamera yang bisa diposisikan dan diorientasikan relatif ke obyek yang ditentukan dengan fungsi primitif. Lensa kamera juga bisa dikendalikan sehingga bisa dihasilkan sudut yang lebar dan pandangan telefoto (jarak jauh).
  • Fungsi windowing, fungsi ini mengendalikan windows pada layar dan penggunaan dari mouse dan keyboard.
  • Fungsi kontrol, menghidupkan macam-macam fitur OpenGL.

Fungsi-fungsi OpenGL dimuat didalam 2 library yang disebut dengan gl dan glu (atau GL dan GLU). Library yang pertama, adalah fungsi utama dari OpenGL, berisi semua fungsi OpenGL yang dibutuhkan sedangkan yang kedua, the openGL Utility Llibrary (GLU) memuat fungsi yang ditulis menggunakan fungsi dari library utama dan sangat membantu bagi pengguna. Fungsi utama mempunyai nama yang diawali dengan “gl” seperti “glVertex3f()”, sedangkan fungsi didalam GLU mempunyai nama yang diawali dengan “glu” seperti “gluOrtho2D()”.

 

4.7.2    Proses Instalasi OpenGL

Pada pembahasan kali ini, kita akan menggunakan sistem operasi Linux  Debian sebagai system operasi dasar dimana program OpenGl berjalan. Pembahasan ini tidak menjelaskan secara detil cara untuk melakukan instalasi system operasi Linux (dapat melihat materi instalasi linux). Berikut akan dijelakan bagaimana melakukan instalasi program OpenGL pada sistem operasi linux.

Untuk melakukan kompilasi dari program OpenGL yang dibuat, diharapkan melakukan instalasi terhadap compiler C (gcc) dengan langkah –langkah sebagai berikut :

 

  • Instal kompiler C (gcc) dengan mengetik :

# apt-get install gcc-3.4

 

  • Instal paket library yang dibutuhkan bahasa pemrograman C dan OpenGL

# apt-get install libc6 libc6-dev

# apt-get install freeglut3 freeglut3-dev

# apt-get install libglut3 libglut3-dev

# apt-get install xlibmesa-gl xlibmesa-gl-dev

# apt-get install xlibmesa-glu xlibmesa-glu-dev

 

Untuk menulis program C atau OpenGL di dalam system operasi linux, anda tidak memerlukan editor khusus. Anda bias menggunakan editor biasa semacam kwrite atau editor vi atau vim. Secara teknis sintak – sintak yang digunakan sama dengan bahasa C.

 

4.7.3    Program dasar dari OpenGL terdiri dari 2 fungsi yaitu :

 

  • Fungsi main()

Fungsi main berfungsi untuk inisialisasi OpenGL.

 

  • Fungsi display()

Fungsi display berfungsi untuk menetukan grafik yang akan ditampilkan dalam window.

 

Contoh 1.8

 

Program membuat sebuah kotak putih dengan latar layer kotak hitam.

 

#include<GL/glut.h>

void display(){

glClear(GL_COLOR_BUFFER_BIT);

glBegin(GL_POLYGON);

glVertex2f(-0.5, -0.5);

glVertex2f(-0.5, 0.5);

glVertex2f(0.5, 0.5);

glVertex2f(0.5, -0.5);

glEnd();

glFlush();

}

 

 

int main(int argc, char** argv){

glutInit(&argc, argv);

glutCreateWindow(“simple”);

glutDisplayFunc(display);

glutMainLoop();

}

 

4.7.4    Proses Kompilasi Program OpenGL

Proses kompilasi program OpenGl tergantung pada sistem operasi yang digunakan, karen pada pembahasan ini kita mengasumsikan menggunakan sistem operasi Linux Debian, maka contoh yang diberikan ini berdasarkan sistem operasi linux.

gcc nama_file.c –o nama_file –lglut –lGLU –lGL –lX11 –lm

 

Untuk penjelasan lebih lanjut mengenai fungsi – fungsi yang terkandung dalam program OpenGl, silahkan mencari dokumentasi atau tutorial tentang pemrograman OpenGL lebih lanjut. Pembahasan ini tidak dimaksudkan untuk mengupas program OpenGL dengan detail, namun lebih ditujukan untuk mengenalkan dasar – dasar pemrograman obyek 3D dan pengenalan dasar program OpenGL.

 

4.7.5    Algoritma Animasi Sederhana

Animasi pada dasarnya adalah membuat objek seolah-olah bergerak sehingga terjadi pergerakan yang membuat mata kita memandangnya sebagai sebuah

 

kesatuan utuh. Padahal dibalik itu, animasi dibuat berdasarkan pada bagian -bagian tertentu (terpisah) dan baru kemudian akan disatukan untuk

mendapatkan pergerakan yang sempurna. Pada dasarnya animasi adalah proses sebuah obyek bergerak dari satu posis ke posii yang lain dalam hitungan interval waktu tertentu. Obyek yang digerakkan dapat berupa obyek 2D, obyek 3D atau bahkan sebuah tulisan sederhana. Dewasa ini telah banyak berkembang program – program atau tool yang digunakan untuk membuat program animasi antara lain : Macromedia Flash, Studio 3D Max, Maya, Adobe Image Ready atau bahkan menggunakan program OpenGl yang telah sedikit kita bahas diatas.

Berikut akan diberikan contoh sederhana animasi obyek 2D menggunakan bahasa pemrograman C.

 

Contoh 1.9

Program membuat tulisan dalam modus grafis bergerak ke kanan dengan interval waktu sebanyak 200 mili sekon, dan program akan terus bergerak hingga pengguna menekan tombol apapun dari keyboard. Ketika tulisan mencapai batas kanan dari layar maka tulisan akan kembali ke kordinat awal.

 

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

 

int main(void){

/*auto detect */

int gdriver = DETECT, gmode, errorcode;

int midx, midy;

/* inisialisasi modus grafis*/

initgraph(&gdriver, &gmode, “”);

errorcode = graphresult();

// memeriksa apakah berhasil meload modus grafis.

if (errorcode != grOk) { // apabila terjadi kegagalan.

printf(“Graphics error: %s\n”, grapherrormsg(errorcode));

printf(“Press any key to halt:”);

getch();

exit(1);  } /* program di terminasi dengan ada kesalahan */

midx =50;

midy = 50;

while (!kbhit()){  // lakukan perulangna hingga ada penekanan keyboard.

outtextxy(midx, midy, “Hello”);

delay(200);

 

// menahan selama 200 mili sekon sebelum melanjutkan ke instruksi       selanjutnya

outtextxy(midx, midy, “    “);  // menghapus tulisan yang lama.

midx+=10; // menambah jumlah kordinat x sebanyak 10 titk.

 

// jika sudah mencapai ujung dari layar.

if  (midx == (getmaxx() – 5)){ // karena tulisan hello panjangnya 5.

midx = 50; // kembali ke posisi awal.

}

} // akhir tubuh perulangan.

closegraph(); // kembali ke modus teks.

return 0; /* program di terminasi tanpa ada kesalahan */

}

 

 

 

 

 

 

 

 

 

 

 

BAB V

SUMBER-SUMBER YANG DIPERLUKAN

UNTUK PENCAPAIAN KOMPETENSI

5.1.      Sumber Daya Manusia

 

Pelatih

Pelatih Anda dipilih karena dia telah berpengalaman. Peran Pelatih adalah untuk :

  1. Membantu Anda untuk merencanakan proses belajar.
  2. Membimbing Anda melalui tugas-tugas pelatihan yang dijelaskan dalam tahap belajar.
  3. Membantu Anda untuk memahami konsep dan praktik baru dan untuk menjawab pertanyaan Anda mengenai proses belajar Anda.
  4. Membantu Anda untuk menentukan dan mengakses sumber tambahan lain yang Anda perlukan untuk belajar Anda.
  5. Mengorganisir kegiatan belajar kelompok jika diperlukan.
  6. Merencanakan seorang ahli dari tempat kerja untuk membantu jika diperlukan.

 

Penilai

Penilai Anda melaksanakan program pelatihan terstruktur untuk penilaian di tempat kerja. Penilai akan :

  1. Melaksanakan penilaian apabila Anda telah siap dan merencanakan proses belajar dan penilaian selanjutnya dengan Anda.
  2. Menjelaskan kepada Anda mengenai bagian yang perlu untuk diperbaiki dan merundingkan rencana pelatihan selanjutnya dengan Anda.
  3. Mencatat pencapaian / perolehan Anda.

 

Teman kerja/sesama peserta pelatihan

Teman kerja Anda/sesama peserta pelatihan juga merupakan sumber dukungan dan bantuan. Anda juga dapat mendiskusikan proses belajar dengan mereka. Pendekatan ini akan menjadi suatu yang berharga dalam membangun semangat tim

 

dalam lingkungan belajar/kerja Anda dan dapat meningkatkan pengalaman belajar Anda.

 

5.2.          Sumber-sumber Perpustakaan     

Pengertian sumber-sumber adalah material yang menjadi pendukung proses pembelajaran ketika peserta pelatihan sedang menggunakan Pedoman Belajar ini.

Sumber-sumber tersebut dapat meliputi :

  1. Buku referensi dari perusahan
  2. Lembar kerja
  3. Gambar
  4. Contoh tugas kerja
  5. Rekaman dalam bentuk kaset, video, film dan lain-lain.

 

Ada beberapa sumber yang disebutkan dalam pedoman belajar ini untuk membantu peserta pelatihan mencapai unjuk kerja yang tercakup pada suatu unit kompetensi.

 

Prinsip-prinsip dalam CBT mendorong kefleksibilitasan dari penggunaan sumber-sumber yang terbaik dalam suatu unit kompetensi tertentu, dengan mengijinkan peserta untuk menggunakan sumber-sumber alternative lain yang lebih baik atau jika ternyata sumber-sumber yang direkomendasikan dalam pedoman belajar ini tidak tersedia/tidak ada.

 

 

 

 

 

 

 

 

 

5.3.          Daftar Peralatan/Mesin dan Bahan       

 

  1. Judul/Nama Pelatihan        :    Algoritma dan Pemrograman Lanjut
  2. Kode Program Pelatihan    :    TIK.PR02.002.01

 

NO UNIT

KOMPETENSI

KODE UNIT DAFTAR PERALATAN DAFTAR BAHAN KETERANGAN
1. Algoritma dan Pemrograman Lanjut TIK.PR02.002.01 - Unit PC (Personal Computer) dengan CD drive dan Hard Disk.

- PC dengan sistem operasi Windows XP

- Keyboard dan mouse

- RAM dengan ukuran yang sesuai dengan kebutuhan.

- Program Borland C++ 3.1

 

 

-Program Borland C++ 3.1.

-Buku informasi tentang Algoritma Pemrograman Lanjut, Pemrograman grafis.

 

-

 

 

 

 

 

DAFTAR PUSTAKA

Testimoni

Filed under : blog, tags: