Advertisement
loading...

 

MATERI PELATIHAN BERBASIS KOMPETENSI

Advertisement

SEKTOR TELEMATIKA

SUB SEKTOR PROGRAMMER KOMPUTER

 

 

 

MEMBUAT STRUKTUR DATA

TIK.PR02.003.01

 

 

 

 

 

BUKU PENILAIAN

 

 

 

 

 

 

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……………………………………………………………………………………………. 1

 

BAB I    KONSEP PENILAIAN…………………………………………………………………… 2

1.1.           Bagaimana Instruktur akan Menilai ……………………………………… 2

1.2.           Tipe Penilaian ……………………………………………………………….. 3

 

BAB II   PELAKSANAAN PENILAIAN ………………………………………………………….. 4

2.1.           Kunci Jawaban Tugas-tugas Teori ……………………………………….. 4

2.2.           Daftar Check Unjuk Kerja (Praktek) …………………………………….. 10

2.3.           Check List Teori dan  Praktek …………………………………………….. 19

 

LEMBAR PENILAIAN……………………………………………………………………………… 21

 

 

 

 

 

 

 

 

BAB I

KONSEP PENILAIAN

 

1.1.          Bagaimana Instruktur akan Menilai

 

Dalam sistem berdasarkan Kompetensi, penilai akan mengumpulkan bukti dan membuat pertimbangan mengenai pengetahuan, pemahaman dan unjuk kerja tugas-tugas Anda dan sikap Anda terhadap pekerjaan. Anda akan dinilai untuk menentukan apakah Anda telah mencapai kompetensi sesuai dengan standar yang dijelaskan dalam Kriteria Unjuk Kerja.

 

Pada pelatihan berdasarkan kompetensi, pendekatan yang banyak digunakan untuk penilaian adalah “Penilaian berdasarkan criteria/Criterion-Referenced Assessment”. Pendekatan ini mengukur unjuk kerja Anda terhadap sejumlah standar. Standar yang digunakan dijelaskan dalam Kriteria Unjuk Kerja.

 

Penilaian dapat dilaksanakan dengan tujuan sebagai bantuan dan dukungan belajar. Tipe penilaian ini adalah formatif dan merupakan proses yang sedang berjalan.

 

Penilaian juga dapat dilaksanakan untuk menentukan apakah Anda telah mencapai hasil program belajar (contohnya pencapaian kompetensi dalam Unit). Tipe penilaian ini adalah sumatif dan merupakan penilaian akhir.

 

Penilaian dapat dilaksanakan di industri (ditempat kerja) atau dilembaga pelatihan (diluar tempat kerja). Jika memungkinkan, sebaiknya penilaian dilaksanakan ditempat kerja sehingga penilai dapat mengamati Anda melakukan kegiatan normal ditempat kerja.

 

 

1.2.          Tipe Penilaian  

 

Test Tertulis

Test tertulis akan menilai pengetahuan Anda dan pemahaman konsep dan prinsip yang merupakan dasar unjuk kerja tugas-tugas Anda. Test tertulis biasanya berupa seri pertanyaan pilihan ganda atau beberapa bentuk test tertulis obyektif lainnya, yaitu tes dimana setiap pertanyaan memiliki satu jawaban benar.

 

Test Unjuk Kerja

Test unjuk kerja akan menilai kompetensi Anda dalam menampilkan tugas-tugas elemen terhadap standar yang dijelaskan dalam Kriteria Unjuk Kerja. Oleh sebab itu Anda akan menerapkan pengetahuan dan pemahaman Anda terhadap unjuk kerja tugas-tugas.

Penilai biasanya menggunakan daftar cek analisis elemen sebagai pedoman untuk menentukan kompetensi Anda dan akan memberikan umpan balik mengenai unjuk kerja dan jika perlu, merencanakan pelatihan lanjutan jika Anda belum mencapai kompetensi pada usaha/kesempatan pertama.


BAB II

PELAKSANAAN PENILAIAN

 

2.1    Kunci Jawaban Tugas-tugas Teori

  1. Suatu tipe data terstruktur yang berupa sejumlah data sejenis (bertipe data sama) yang jumlahnya bisa statis ataupun dinamis dan diberi suatu nama tertentu adalah pengertian dari …

Jawaban: B. Array

 

  1. Ciri algoritma program yang baik menurut Donald E. Knuth adalah, kecuali

Jawaban: D. Infinite

 

  1. char huruf[9];

int umur[10];

int kondisi[2] = {0,1}

int arr_dinamis[] = {1,2,3}

Dari penggalan program diatas, maksud dari int arr_dinamis[] adalah …

Jawaban: D. Berarti mendeklarasikan array dengan ukuran maksimum array tidak diketahui, namun ukuran tersebut diketahui berdasarkan inisialisasi yaitu sebanyak 3 elemen, yang isinya 1,2, dan 3.

 

  1. Pada gambar dibawah ini angka 1, 2 dan 3 yang ditunjuk panah, berurutan adalah …

 

Jawaban: B. indeks, value, alamat.

 

 

Penggalan program ini untuk soal no. 5 dan 6

void main()

{

int vint = 55;   // i

int *pint;                  // ii

clrscr();

printf(”vint semula : ”, &vint);

pint = &vint;   // iii

*pint = 77;               // iv

printf(”\nvint sekarang : ”, &vint);

}

 

  1. Hasil output dari penggalan program diatas adalah …

Jawaban: C. vint semula : 77

      vint sekarang : 55

 

  1. Pointer menunjuk ke vint, ditunjukkan oleh huruf …

Jawaban: C. iii

 

  1. Pernyataan yang bukan  mengenai pointer adalah …

Jawaban: C. Bersifat statis

 

  1. Salah satu bentuk struktur data, berisi kumpulan data (node) yang tersusun secara sekuensial, saling sambung menyambung, dinamis dan terbatas adalah pengertian dari …

Jawaban: D. Linked-List

 

 

 

  1. Kata dibawah ini yang benar dan berhubungan dengan karakteristik Linked-List adalah …

Jawaban: A. Sequential access

 

  1. void tampil(){

TNode *bantu;

bantu = head;

if(isEmpty()==0){

while(bantu!=NULL){

cout<<bantu->data<<” “;

bantu=bantu->next;

}

cout<<endl;

} else cout<<”Masih kosong\n”;

}

Function diatas adalah untuk menampilkan isi dari …

Jawaban: B. Single Linked-List Non Circular

 

  1. Gambar dibawah ini adalah ilustrasi dari …

 

Jawaban: A. Single Linked-List Circular

 

  1. Double Linked List Circular adalah linked list dengan menggunakan pointer, dimana setiap node memiliki 3 field yaitu …

Jawaban: D. 1 field pointer yang menunjuk pointer berikutnya (next), 1 field menunjuk pointer sebelumnya (prev), serta sebuah field yang berisi data untuk node tersebut.

 

 

  1. Untuk mengambil elemen teratas dari Stack, menggunakan fungsi …

Jawaban: A. Pop

 

  1. void TampilStack(){

for(int i=tumpuk.top;i>=0;i–) {

printf(“Data : %s\n”,tumpuk.data[i]);

}

}

Jawaban: C. Fungsi Print

 

  1. Untuk menambahkan elemen ke dalam Antrian (Queue), penambahan elemen selalu ditambahkan di elemen paling belakang, merupakan operasi dari queue yaitu …

Jawaban: Enqueue()

 

  1. Gambar dibawah ini adalah ilustrasi operasi queue yang mana?

 

Jawaban: B. isEmpty()

 

  1. Pada gambar tree dibawah ini Ancestor, Descendant, Parent dan Sibling ditunjukkan secara berurutan oleh huruf …

 

 

Jawaban: B. C&A, F&G, B, G

 

  1. Tree dapat dibuat menggunakan Linked-List secara recursif. Linked-List yang digunakan adalah …

Jawaban: A. Double Linked-List

 

  1. Perhatikan gambar dibawah ini:

 

Hasil kunjungan InOrder (notasi infiks) dari gambar diatas adalah:

Jawaban: D. DGBAHEICF

 

  1. Dibawah ini pernyataan yang benar mengenai PreOrder adalah …

Jawaban: C. Cetak node yang dikunjungi, kunjungi left, kunjungi right.

 

  1. Fungsi dari Hash Table adalah …

Jawaban: D. a & b benar.

 

  1. Sebelum file digunakan/diproses harus dibuka terlebih dahulu. Kita perlu mendefinisikan obyek file. Salah satu bentuk pernyataannya yang benar, adalah …

Jawaban: C. ofstream nama_variabel_file;

 nama_variabel_file_output.open(“nama_file.txt”);

Function ini untuk soal no. 23 dan 24

#include <iostream.h>

#include <fstream.h>

void main(){

ofstream f;

f.open(“c:\\coba.txt”,ios::app);

cout<<”Penulisan dimulai…”<<endl;

f<<”hallo2″<<endl;

f<<”anton2″<<endl;

cout<<”Penulisan selesai.”<<endl;

f.close();

}

 

  1. Function diatas menghasilkan file dengan nama …

Jawaban: A. coba.txt

 

  1. Function diatas akan menghasilkan sebuah file  .txt dengan isi …

Jawaban: A.  hallo

                      anton

                      hallo2

                      anton2

 

  1. Untuk menulis format  dalam file tertentu adalah …

Jawaban: B. int fprintf(fp, “Testing…\n”);

 

 

 

 

 

 

 

2.2    Daftar Check Unjuk Kerja (Praktek)

 

TUGAS – TUGAS YANG DITAMPILKAN KOMPETEN BELUM

KOMPETEN

TANGGAL
1 Menentukan keluaran/output dan cara mendapatkan output      
2 Menuliskan output/tampilan dari program selection sort      
3
  1. Membuat function untuk menampilkan isi single linked-list non circular
  2. Membuat function menghapus semua elemen
  3. Mengetahui kosong tidaknya Linked-List
     
4 Membuat gambar proses penghapusan dan membuat function untuk menghapus barang dengan kode tertentu pada Linkrd-List      
5
  1. Membuat function untuk membaca dari file dalam format field tertentu
  2. Membuat function menulis karakter ke file teks
  3. Menentukan output/keluaran dari tampilan progam
     

 

 

 

 

  1. Perhatikan program bahasa C berikut, tentukan keluaran/output dan cara mendapatkan output tersebut!

#include <stdio.h>

#include <conio.h>

int a,b,p;

void ulang(int a,int *b){

p = a + *b;

*b = a;

a = p;

}

 

void alik(int *a,int b){

int p;

p = *a – b;

*a = b;

b = p;

}

 

void main(){

a = 5;

b = 17;

p = 10;

ulang(b,&a);

printf(“a = %d, b = %d, p = %d\n”,a,b,p);

alik(&a,b);

printf(“a = %d, b = %d, p = %d”,a,b,p);

}

Jawaban:

Kondisi pertama: a=5, b=17, c=10.

ulang(b,&a) => ulang(17,5)

Di dalam ulang(17,5)

a = 17, b = 5

p = a + *b => 17 + 5 = 22, p didapat dari variabel global.

*b = a => b = 17

a = p => a = 22

Di dalam main()

Nilai b berubah di main menjadi 17 karena parameter by reference

printf(“a = %d, b = %d, p = %d\n”,a,b,p);

Yang ditampilkan : a = 17, b = 17, p = 22, nilai p didapat dari variabel global.

alik(&a,b) => alik(17,17)

a=17, b=17

p = *a – b => p = 0, p didapat dari variabel local

*a = b => a = 17

b = p => b = 0

Di dalam main()

printf(“a = %d, b = %d, p = %d”,a,b,p);

Yang ditampilkan a = 17, b = 17 (nilai b tetap 17 karena parameter by value), p = 22 (karena p yang diubah menjadi 0 di dalam fungsi alik tidak berpengaruh pada variabel p yang di main, karena p di alik menggunakan variabel lokal sendiri.

 

Jadi hasil tampilan:

a = 17, b = 17, p = 22

a = 17, b = 17, p = 22

 

2.  Perhatikan program bahasa C untuk algoritma selection sort berikut ini:

#include <stdio.h>

#include <conio.h>

void main(){

int a[] = {3, 21, 4, 7, 11, 23};

int n = 6;

 

int i, j, k, p, t;

 

printf(“p = 0, data = “);

for(k=0;k<n;k++)

printf(“%d “,a[k]);

printf(“\n”);

 

for(i=0;i<n-1;i++){

p = i;

for(j=i+1;j<n;j++){

if(a[j] > a[p]) p = j;

}

printf(“p = %d, data = “,p);

if(p != i){

t = a[p];

a[p] = a[i];

a[i] = t;

}

for(k=0;k<n;k++)

printf(“%d “,a[k]);

printf(“\n”);

}

}

Tuliskan output / tampilan dari program tersebut?

Jawaban:

 

 

3.  Buatlah function untuk : (KUK 4.1) (KUK 4.2) (KUK 4.3) (KUK 4.4)

a.  Menampilkan isi single linked list non circular

b.  Menghapus semua elemen

c.  Mengetahui kosong tidaknya LinkedList

Jawaban:

a. void tampil(){

TNode *bantu;

bantu = head;

 

if(isEmpty()==0){

while(bantu!=NULL){

cout<<bantu->data<<” “;

bantu=bantu->next;

}

cout<<endl;

 

} else cout<<”Masih kosong\n”;

}

 

b. void clear(){

TNode *bantu,*hapus;

bantu = head;

while(bantu!=NULL){

hapus = bantu;

bantu = bantu->next;

delete hapus;

}

head = NULL;

}

 

 

c.  int isEmpty(){

if(head == NULL) return 1;

else return 0;

}

 

4.  Diketahui deklarasi tipe data struct sebagai berikut:

typedef struct Barang{

int kode;

int harga;

float berat;

Barang *lanjut;

};

Barang* br;

Gambarkan proses penghapusan dan buatlah function untuk menghapus barang dengan kode tertentu (misalkan nama variabelnya “kd”) pada tipe linked list di atas!

Jawaban:

Gambar: (misal yang dihapus adalah C)

 

Function:

void hapusKode(int kd){

TNode *hapus,*bantu;

int d;

if (isEmpty()==0){

if(head->next != NULL){

bantu = head;

while(bantu->next->kode!=kd && bantu->next!=NULL){

bantu = bantu->next;

}

if(bantu->next==NULL) cout<<“Tidak ketemu!\n”;

else{

hapus = bantu->next;

d = hapus->kode;

cout<<d<<” terhapus\n”;

bantu->next = hapus->next;

delete hapus;

}

}

else {

if(head->kode==kd)

head = NULL;

}

} else cout<<”Masih kosong\n”;

}

 

5.  a. Tuliskan function untuk membaca dari file dalam format field  tertentu!

b. Tuliskan function untuk menulis karakter ke file teks!

c. Tuliskan output / tampilan dari program dibawah ini?

 

 

#include <stdio.h>

#include <stdlib.h>

void main(){

FILE *fp;

if((fp=fopen(“C:\\anton.txt”,”w”))==NULL){

printf(“error!”);

exit(1);

}

fputs(“ABCDE\n”,fp);

printf(“alamat file : %p\n”,fp->buffer);

printf(“ukuran file : %d byte \n”,fp->bsize);

printf(“posisi file : %p\n”,fp->curp);

printf(“isi file :”);

for(int i=0;i<=4;i++){

printf(“%c”,*(fp->buffer+i));

}

printf(“\n”);

printf(“no pengenal file : %d\n”,fp->fd);

printf(“status file :\n”);

if((fp->flags & 1)==1) printf(“readonly\n”);

if((fp->flags & 2)==2) printf(“writeonly\n”);

if((fp->flags & 3)==3) printf(“read/write\n”);

if((fp->flags & 8)==8) printf(“file line\n”);

if((fp->flags & 16)==16) printf(“error\n”);

if((fp->flags & 32)==32) printf(“akhir file\n”);

if((fp->flags & 64)==64) printf(“file biner\n”); else printf(“file teks\n”);

if((fp->flags & 128)==128) printf(“data dari file\n”);

if((fp->flags & 256)==256) printf(“data ke file\n”);

if((fp->flags & 512)==512) printf(“file ada diterminal\n”); else printf(“file di disk”);

 

fclose(fp);

}

Jawaban:

a. int fscanf(fp, “Testing…\n”);

jika berhasil akan dikembalikan jumlah field yang dibaca sedangkan jika gagal dikembalikan EOF

b. int fputc( int c, FILE *fp );

jika berhasil akan dikembalikan karakter c sedangkan jika gagal dikembalikan EOF

c.

 

2.3 Check List Teori dan Praktek

 

Semua kesalahan harus diperbaiki terlebih dahulu sebelum ditandatangani

Penguasaan Bahan

Ya

Apakah semua petunjuk kerja diikuti ?  
Apakah peserta pelatihan menguasai konsep struktur data dengan benar?  
Apakah peserta pelatihan mampu menerapkan array dan record ?  
Apakah peserta pelatihan mampu membuat algoritma program dengan array dan record  ?  
Apakah peserta pelatihan mampu membuat algoritma program dengan tipe data pointer ?  
Apakah peserta pelatihan mampu membuat manipulasi program dengan tipe data pointer ?  
Apakah peserta pelatihan menguasai bermacam-macam Linked-List ?  
Apakah peserta pelatihan mampu membuat algoritma program bertipe data pointer dan array dengan Linked-List ?  
Apakah peserta pelatihan mampu membuat algoritma program Linked-List dalam Stack, Queue,  Graph, Tree dan Hash Table ?  
Apakah peserta pelatihan mampu membuat dan mengoperasikan algoritma program dalam pencarian file?  
Apakah peserta pelatihan sudah memberikan ide dan informasi yang tepat sesuai dengan  standart  yang dibutuhkan  
Apakah peserta pelatihan telah merencanakan dan menyusun kegiatan-kegiatan yang tujuannya telah  diperiksa oleh pelatih  
Apakah peserta pelatihan menggunakan sumber-sumber yang menguntungkan untuk mendapatkan informasi yang dibutuhkan untuk mencapai tujuan  

LEMBAR PENILAIAN

 

Tanggal : ……………………………….

 

Peserta pelatihan telah dinilai

 

 

KOMPETEN                                                   BELUM KOMPETEN

 

 

 

Nama Peserta Pelatihan                                   Nama Penilai

 

 

 

……………………………..                                 ……………………………..

Tanda Tangan                                                Tanda Tangan

 

 

Komentar / Saran

 

…………………………………………………………………………………………………………..

 

…………………………………………………………………………………………………………..

 

……………………………………………………………………………………………………………

 

…………………………………………………………………………………………………………..

 

……………………………………………………………………………………………………………

Testimoni

Filed under : blog, tags:
SLIDESERAGAMBATIK