laporan dpk modul 6

39
LAPORAN PRAKTIKUM VI ARRAY (LARIK) Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++ Dibimbing oleh Bapak Wahyu Sakti Gunawan Irianto Oleh: Anidia Wulan Sari 150533601651 S1 PTI’15 OFF A UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK

Upload: anidia-wulan-sari

Post on 04-Jan-2016

294 views

Category:

Documents


3 download

DESCRIPTION

LAPORAN DPK MODUL 6

TRANSCRIPT

Page 1: LAPORAN DPK MODUL 6

LAPORAN PRAKTIKUM VI

ARRAY (LARIK)

Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++

Dibimbing oleh Bapak Wahyu Sakti Gunawan Irianto

Oleh:

Anidia Wulan Sari

150533601651

S1 PTI’15 OFF A

UNIVERSITAS NEGERI MALANG

FAKULTAS TEKNIK

JURUSAN TEKNIK ELEKTRO

PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA

Oktober 2015

Page 2: LAPORAN DPK MODUL 6

ARRAY (LARIK)

Tujuan

Setelah mempelajari bab ini di harapkan mahasiswa akan mampu : 1. Mengenal dan memahami penggunaan array dalam listing program. 2. Membuat program sederhana dengan menerapkan konsep array

DASAR TEORI

ARRAY Array adalah kumpulan dari nilai-nilai data bertipe sama dalam urutan tertentu yang

menggunakan sebuah nama yang sama. Nilai-nilai data di suatu array disebut dengan elemen-

elemen array. Letak urutan dari elemen-elemen array di tunjukkan oleh suatu subscript atau

indeks.

1. ARRAY DIMENSI SATU a. Setiap elemen array dapat di akses melalui indeks b. Indeks array secara default di mulai dari 0. c. Deklarasi array dalam bentuk umum : Tipe_array nama_array[ukuran]; Contoh :int Nilai [4]

2. ARRAY DIMENSI DUA Array dua dimensi merupakan array yang terdiri dari m buah baris dan n buah kolom. Bentuknya dapat berupa matriks atau tabel. Bentuk Umum :

Page 3: LAPORAN DPK MODUL 6

Untuk mengisi dan menampilkan isi elemen array ada dua cara yaitu :

a. Row Major Order (secara baris per baris) b. Column Major Order (secara kolom per kolom)

Inisialisasi :

3. ARRAY DIMENSI BANYAK Array multi-dimensi merupakan array yang mempunyai ukuran lebih dari dua. Bentuk pendeklarasian array sama saja dengan array dimensi satu maupun array dimensi dua. Bentuk Umum :

Contoh:

Inisialisasi:

Page 4: LAPORAN DPK MODUL 6

Selain ketiga jenis array di atas, terdapat array tak beraturan (ukuran array tidak di tuliskan). Contoh inisialisasi:

Array juga bisa di gunakan sebagai parameter :

Latihan Praktikum I

Page 5: LAPORAN DPK MODUL 6

Pemrograman C++

Nama Program : Nilai Mahasiswa Dengan Array 1 Dimensi

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <iostream.h>

#include <stdio.h>

#include <conio.h>

int main ()

{

int index, nilai [10];

system("cls");

//input nilai mahasiswa

printf("input nilai 10 mahasiswa: \n");

for (index=0; index<10; index++)

{

printf ("Mahasiswa %i:", index+1);

scanf ("%i", &nilai [index]);

}

//tampilan nilai mahasiswa

printf("Nilai mahasiswa yang telah di input: \n");

for (index=0; index<10; index++)

{

printf("%5.0i", nilai [index]);

}

getch ();

}

Identifikasi kesalahan :

Page 6: LAPORAN DPK MODUL 6

Penulisan header tidak menggunakan tanda petik dua tetapi yang benar adalah

menggunakan tanda <…….>

Judul fungsi void main berarti kosong sehingga void harus dihapus.

clrscr(); ini merupakan fungsi untuk menghapus layar sehingga ouputan kosong bila

menggunakan fungsi clrscr.

Penulisan index+ pada statement for yang pertama juga salah,seharusnya index++

Selanjutnya adalah output dan input dari statement tersebut seharusnya memanggil

data bertipe interger sehingga menggunakan symbol %i, bukan % c ( untuk

memanggil data bertipe char)

Output Program :

Penjelasan Program :

Program di atas merupakan program sederhana yang digunakan untuk menampilkan nilai

mahasiswa dengan menggunakan array dimensi satu. Beberapa penjelasan mengenai program

diatas adalah sebagai berikut :

Array nilai dengan elemen [10] didalam array dengan menggunakan tipe data interger

Menginput nilai mahasiswa melalui perulangan for(index=0;index<10;index++)

index awal=0. Perulangan akan terjadi 10 kali hingga index>10 karena pernyataan

index<10 menjadi salah. Dan setiap kali perulangan nilai index akan bertambah.

Mahasiswa %i berarti akan memanggil data bertipe interger yaitu varibel index yang

diproses dalam looping.

Nilai yang diinputkan juga akan masuk ke dalam array (nilai [index])

Page 7: LAPORAN DPK MODUL 6

Setelah nilai 10 mahasiswa masuk selanjutnya adalah menampilkan yang sudah

diinputkan menggunakan statement for(index=0; index<10; index++) dengan output

("%5.0i",nilai[index]) memanggil data bertipe interger yaitu array nilai[index]

dengan 5.0 (spasi untuk memisahkan setiap nilai index).

Latihan Praktikum II

Pemrograman C++

Nama Program : Menampilkan Matriks

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <stdio.h>

#include <conio.h>

int main()

{

int baris, kolom, matriks[5][4];

//Input Elemen Secara Row Major Order

printf("|========================|\n");

printf("| Masukkan Nilai Matriks |\n");

printf("|========================|\n\n");

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

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

{

printf("Matriks[%i][%i]: ",baris+1,kolom+1);

scanf("%i", &matriks[baris][kolom]);

}

printf("\n");

}

//Tampilan Elemen Array secara Row Major Order

printf("|========================|\n");

printf("| Isi Array 5x4 |\n");

printf("|========================|\n\n");

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

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

{

printf("%5.0i", matriks[baris][kolom]);

}

Page 8: LAPORAN DPK MODUL 6

printf("\n");

}

getch();

}

Identifikasi kesalahan :

Penulisan header tidak menggunakan tanda petik dua tetapi yang benar adalah

menggunakan tanda <…….>

Judul fungsi void main berarti kosong sehingga void harus dihapus.

Definisi array matriks elemennya seharusnya adalah matriks [5][4] karena isi array

adalah 5 x 4

clrscr(); ini merupakan fungsi untuk menghapus layar sehingga ouputan kosong bila

menggunakan fungsi clrscr.

Pada statement for yang kedua pernyataan bahwa baris<3 salah, yang benar adalah

baris<5 karena jumlah baris pada array adalah 5 baris

Kesalahan lain adalah pada outputan dari kondisi yang kedua seharusnya yang benar

adalah printf("%5.0i", matriks[baris][kolom]); pada array matriks tidak diberi

operator &. Selain itu untuk membedakan nilai matriks maka harus diberi jarak.

Output Program :

Page 9: LAPORAN DPK MODUL 6

Penjelasan Program :

Program input nilai matriks ini menggunakan array dimensi dua serta menginput dan

menampilkan isi elemen array secara Row Major Order. Beberapa penjelasan program diatas,

sebagai berikut :

Array “matriks” dengan elemen [5][4] di dalamnya. 5 baris dan 4 kolom yang akan

diisi dan ditampilakan nilainya.

Dengan Row Major Order menginput isi elemen baris dan kolom

for(baris=0;baris<5;baris++) dan for(kolom=0;kolom<4;kolom++ ) baris kurang

dari 5 dan kolom kurang kurang dari 4. Apabila pernyataan tersebut bernilai False maka

perulangan akan selesai.

Output kondisi diatas adalah("matriks[%i][%i] :", baris+1,kolom+1))

matriks baris[1-5] dan kolom[1-4].

Menampilkan isi elemen array (nilai matriks) secara Row Major Order dengan

bentuk statement perulangan yang sama tetapi outputnya adalah ("%5.0i",matriks

Page 10: LAPORAN DPK MODUL 6

[baris][kolom]) yang berarti memanggil data bertipe interger yaitu array matriks[baris]

[kolom].

Setelah pernyataan pada perulangan diatas bernilai FALSE maka program berakhir.

Latihan Praktikum III

Pemrograman C++

Nama Program : Menghitung Karakter

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <stdio.h>

#include <stdlib.h>

int main ()

{

char kalimat[]=" saya adalah anak UM Teknik Elektro PTI 2015";

int hitung=0,i;

system("cls");

for (i=0;kalimat[i]!='\0';i++)

{

hitung++;

}

printf("kalimat %s mempunyai %i huruf", kalimat,hitung);

printf("dan simpan dalam %i bytes \n",hitung+1);

}

Identifikasi kesalahan :

Penulisan header tidak menggunakan tanda petik dua tetapi yang benar adalah

menggunakan tanda <…….>

clrscr(); ini merupakan fungsi untuk menghapus layar sehingga ouputan kosong bila

menggunakan fungsi clrscr

Pada output Printf("Kalimat %i mempunyai %s huruf", kalimat, hitung);

Tipe data yang dipanggil salah, seharusnya yang benar adalah

variable kalimat dengan tipe data string dipanggil dengan

Page 11: LAPORAN DPK MODUL 6

menggunakan symbol %s, sedangkan hitung dengan tipe data

interger dipanggil dengan menggunakan symbol %i .

Begitu pula dengan variable hitung+1 di bawahnya. Menggunakan

symbol %i bukan %s.

Output Program :

Penjelasan Program :

program menghitung jumlah karakter diatas, karakternya ditentukan terlebih dahulu atau

arraynya telah didefinisikan. Beberapa penjelasan mengenai program tersebut, sebagai

berikut:

Definisi array char kalimat[]="Saya adalah anak UM Teknik Elektro PTI 2015"

Deklarasi varibel “i” dan “varibel” hitung yang telah didefinisikan hitung=0.

Proses perulangan menggunakan statement for (i=0; kalimat[i] !='\0';i++) mengandung

arti bahwa i=0 dan array kalimat dengan elemen [i] tidak sama dengan nol. Dan jika

benar maka i++.

Apabila kondisi diatas benar maka variabel hitung yang semula didefinisikan hitung=0

akan bertambah nilainya yaitu “hitung++”. Dan diulang sampai kondisi bernilai false.

Outputnya adalah menampilkan kalimat dan jumlah karakter dalam angka dan bytes

dengan memanggil kembali varibel kalimat dengan simbol %s dan varibel hitung dan

hitung+1 dengan simbol %i.

Page 12: LAPORAN DPK MODUL 6

Latihan Praktikum IV

Pemrograman C++

Nama Program : Program pembagian klub dalam beberapa grub

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <stdio.h>

#include <conio.h>

int main ()

{

int i,s;

char h=64;

char*nama[5][4] =

{

{"AC Milan","Barcelona","porto","monaco"},

{"Liverpool","Real Madrid","CSK Moskow","PSG"},

{"inter Milan","Arsenal","AtlenticoMadrid","Ajax"},

{"As Roma","Manchester United","Dortmund","Valencia"},

{"Manchester City","Bayern Munich","Napoli","Vilareal"}

};

printf("Liga Champions : \n\n");

for(i=0; i<5; i++)

{

++h;

printf("Grup %c \n",h);

for(int s=0; s<4; s++)

{

printf("%d. %s \n", s+1, nama [i][s]);

}

printf("\n");

}

getch();

}

Page 13: LAPORAN DPK MODUL 6

Identifikasi kesalahan :

Kesalahan pertama terletak pada elemen array yang dimasukkan yaitu [0][0][0].

Selanjutnya pada inisialisasi array,penggunaan tanda buka dan tutup kurung pada

awal dan akhir baris.

Selain itu pada operasi perulangan terdapat variable yang tidak dideklrasikan

sebelumnya yaitu variable i dan s

Output Program :

Penjelasan Program :

Program diatas merupakan program sederhana yang ditujukan untuk membuat program

pembagian klub sepak bola dalam beberapa grub dengan menggunakan array yang

diinisialisasikan dan juga menggunakan perulangan. Beberapa penjelasan terkait program

diatas, sebagai berikut :

Menggunakan header <stdio.h> untuk objek printf dan scanf.

Page 14: LAPORAN DPK MODUL 6

Deklarasi vaiabel i,s. variable yang digunakan untuk proses perulangan. Menggunakan tipe

data interger.

Selanjutnya adalah varibel h yang sudah didefinisikan nilainya, h=64.

Deklarasi array “nama” dengan elemen [5][4] di dalam array dan inisialisasi array yang

berisi nama-nama klub yang akan di kelompok-kelompokkan.

Statemen for(i=0; i<5; i++) merupakan perulangan untuk memampilkan grub (a/b/c/d/e)

sehingga menggunakan symbol %c untuk memanggil data bertipe char. Yaitu varibel h yang

sebelumnya sudah didefinisikan nilainya.

Jika kondisi pertama bernilai benar maka akan berlanjut pada kondisi yang kedua yaitu

statement for(s=0;s<4;s++) s<4 4 merupakan jumlah klub dalam setiap grub,sesuai

dengan jumlah elemen kolom pada array yang sudah didefinisikan.

Perulangan akan terus berlanjut sampai kedua kondisi bernilai FALSE dan program akan

selesai.

Page 15: LAPORAN DPK MODUL 6

Tugas Praktikum IPemrograman C++

Nama Program : Membalik Nama

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <stdio.h>

#include <string.h>

char a[100];//varible a dengan input maksimum 100 karakter

int b,c;

int main()

{

printf("|=====================================================|\n");

printf("| Pembalik Kata& Kalimat |\n");

printf("|=====================================================|\n");

printf(" Masukkan Kata & Kalimat yang akan dibalik = ");

gets(a);//input ke variable a

b=strlen(a);//mencari jumlah kata

printf(" Hasil Pembalikkan Kata & Kalimat = ");

for(int c=b; c>=1; c--) //perulangan dari jumlah kata

//yang paling akhir ke paling awal

{

char d=a[c-1];//ingat bahwa elemen array dimulai dari 0

printf("%c",d);

}

}

Page 16: LAPORAN DPK MODUL 6

Output Program :

Penjelasan Program :

Program di atas merupakan program sederhana yng di tujukan untuk membalik kata dari

inputan kata yang kita masukkan. Penjelasannya sebagai berikut :

Program ini menggunakan header <stdio.h> karena objek yang digunakan dalam program

diatas adalah printf .

Deklarasi array char a[100] berarti kata yang diinputkan mempunyai batasan hingga 100

karakter.

gets(a) berarti inputan kata yang kita masukkan akan diproses masuk.

Selanjunya b=strlen(a), varibel a yang mempunyai tipe data char(karakter) diubah menjadi

tipe data int(interger) menggunakan strlen sehingga sama dengan variable b yang mempunyai tipe

data interger. Dan agar selanjutnya dapat dilakukan proses perulangan(looping)

Proses perulangan menggunakan statement for (int c=b; c>=0 ; c--). Variable c=b berarti nilai

c sama dengan b(jumlah kata yang diinputkan) dan c>=1 berarti jumlah kata inputan lebih besar l

maka c- - (dikurangi) .

printf("%c",d);,maka akan menampilkan outputan berupa array a dengan elemen i yang sudah

di proses sebelumnya menggunakan perulangan (looping).

Pernyataan akan terus diulangi hingga nilai c>=0 bernilai salah.

Dan setelah itu program berakhir.

Tugas Praktikum II

Page 17: LAPORAN DPK MODUL 6

Pemrograman C++

Nama Program : Daftar harga fotocopy dari

1 – 100 lembar

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <iostream.h>

#include <conio.h>

int main()

{

int i,

lembar[100]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,

21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,

41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,

61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,

81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100};

printf("|===============================|\n");

printf("| DAFTAR HARGA |\n");

printf("|===============================|\n");

printf("| Jumlah (lbr.) | Harga(Rp.)\t|\n");

printf("|===============================|\n");

for(i=0;i<100;i++)

{

cout<<"|";

cout<<"\t"<<lembar[i];

cout<<"\t|";

cout<<"\t"<<lembar[i]*80;

cout<<"\t|";

cout<<endl;

printf("---------------------------------\n");

}

}

Page 18: LAPORAN DPK MODUL 6

Output Program :

Page 19: LAPORAN DPK MODUL 6
Page 20: LAPORAN DPK MODUL 6

Penjelasan Program :

Program diatas menggunakan array dimensi banyak (Multi dimensi). Dimana array didefinisi

dan dinisialisasikan terlebih dahulu. Beberapa penjelasannya sebagai berikut :

Definisi array lembar[100] dan inisialisasi array adalah angka 1 sampai dengan 100 =

{1,2,3,………,100};

\t merupakan simbol untuk tab horizontal berfungsi agar nilai yang ditampilkan nanti

terlihat rapi.

Statement for(i=1;i<=100;i++) berarti bahwa i=1( jumlah lembar dimulai dari 1),

1<100 (batasan nilai yang di masukkan adalah hingga angka 100) dan i++ maka nilai I akan

terus bertambah hingga batasan yan sudah ditentukan dan statement bernilai salah.

Output dari perulangan diatas adalah “i” yaitu jumlah lembar dan harga = i*80

(karena harga per lembar fotocopy adalah 80 rupiah).

Setelah kondisi bernilai salah maka perulangan akan berhenti dan program selesai.

Page 21: LAPORAN DPK MODUL 6

Tugas Praktikum IIIPemrograman C++

Nama Program : Program Operasi logika dan bitwise dengan menggunakan

looping

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include<stdio.h>#include<conio.h>main(){

int p,q, tabel[2]={0,1};

printf("__________________________________________________\n");printf("P\tQ\tP or Q\tP andQ\tNot P\tP xor Q\n");printf("_________________________________________________\n");

for (p=1;p>=0;p--){

for(q=1;q>=0;q--){printf("%i\t%i\t%i\t%i\t%i\t%i\n",tabel[p],tabel[q],tabel[p]||tabel[q],tabel[p]&&tabel[q],!tabel[p],tabel[p]^tabel[q]);}

}getch();

}

Output Program :

Page 22: LAPORAN DPK MODUL 6

Penjelasan Program :

Program diatas merupakan program yang digunakan untuk membuat operasi logika dan

bitwise dengan menggunakan looping dan array. Penjelasannya sebagai berikut :

Array table [2]={0,1} berarti table p dan q hanya akan diisi oleh angak 0 dan 1

Pada statement for p dan q didefinisikan lebih besar sama dengan nol. Sehingga p dan

q “ - -“ agar perulangan suatu saat bernilai salah dan akan berhenti.

Nilai p dan q akan dip roses denagn operator logika dan bitwise.

Sampai statement bernilai false program akan terus berulang. Jika nilai statement false

maka program berakhir.

Page 23: LAPORAN DPK MODUL 6

Tugas Rumah IPemrograman C++

Nama Program : Analisa Karakter Vokal

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <iostream.h> #include <conio.h>main() { char kata[50]; int b, voc=0, nvoc=0;cout<<"\n PROGRAM PENGHITUNG JUMLAH HURUF VOKAL DANNONVOKAL\n";cout<<"====================================================\n";

cout<<"Masukkan kata : "; cin.getline(kata, sizeof(kata)); b=strlen(kata);

for(int i=1;i<=b;i++) { if(kata[i]=='a' || kata[i]=='i' ||

kata[i]=='u'|| kata[i]=='e' || kata[i]=='o' ||

kata[i]=='A' || kata[i]=='I' || kata[i]=='U'|| kata[i]=='E' ||

kata[i]=='O') {

voc=voc + 1; } else {

nvoc=nvoc + 1; }

} cout

<<"===================================================\n";cout <<"Jumlah Huruf = "<<b<<endl;cout <<"Jumlah Huruf Vokal =

"<<voc<<endl; cout <<"Jumlah Huruf Non Vokal / Kosonan

= "<<nvoc; getch();

}

Page 24: LAPORAN DPK MODUL 6

Output Program :

Penjelasan Program :

Program ini merupakan program sederhana yang ditujukan untuk dapat menghitung

jumlah huruf vokal dan nonvokal dari kata yang kita inputkan. Dalam program ini

menggunakan array agar dapat menemukan huruf vokal dari inputan kata. Selain itu juga

menggunakan perulangan atau looping serta operasi kondisi if-ele. Untuk lebih jelasnya

terdapat beberapa penjelasan sebagai berikut :

Definisi array kata [50] berarti huruf yang dapat diinputkan mempunyai batasan hingga 50

huruf.

Selain itu variable voc dan nvoc juga terlebih dahulu didefinisikan nilainya yaitu voc=0 dan

nvoc=0

cin.getline berfungsi agar kata yang diinputkan dapat masuk ke computer dan selanjutnya

dapat diproses.

b=strlen (kata) berarti variabel kata yang awalnya merupakan tipe data char (karakter)

diubah ke dalam tipe data interger menggunakan strlen sehingga sama dengan variabel b

yang mempunyai tipe data interger.

Proses perulangan for(int i=1;i<=b;i++) berarti bahwa variable i<= b(jumlah inputan kata

dimasukkan),sehingga i++ dan akan diulang hingga statement bernilai false.

Didalam statement terdapat operasi kondisi if-else untuk menentukan jumlah huruf vocal

dan non vocal. Jika kondisi bernilai benar maka voc+1 dan jika kondisi bernilai salah maka

nvoc+1.

Output nya adalah Jumlah huruf = b

Jumlah huruf vokal = voc

Jumlah hurf nonvokal =nvoc

Page 25: LAPORAN DPK MODUL 6

Tugas Rumah II

Pemrograman C++

Nama Program : Bilangan Fibonaci

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <iostream.h>#include <conio.h>main (){

char c;int a=0, b=1, n, deret;cout<<"------------------------------------------"<<endl;cout<<" BILANGAN FIBONACCI\n";cout<<"------------------------------------------"<<endl;cout<<"\n";cout<<"Masukan Jumlah Bilangan Fibonacci: ";cin>>deret;cout<<"\n";cout<<"------------------------------------------"<<endl;cout<<"Hasil Bilangan Fibonacci : ";

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

if(i==1)cout<<b<<" ";

else if(i==0)cout<<a<<" ";

else{

n = b + a;a = b;b = n;cout<<n<<" ";

}}cout<<endl;cout<<"\n";cout<<" Ulangi lagi ?? Tekan y untuk iya ";cin>>c;

getch();}

Page 26: LAPORAN DPK MODUL 6

Output Program :

Penjelasan Program :

Bilangan fibonacci adalah barisan yang didefinisikan secara rekursif, barisan ini berawal dari

0 dan 1,kemudian angka berikutnya didapatkan dengan cara menambah kedua bilangan

yang berurutan sebelumnya. Beberapa penjelasan mengenai program diatas, sebagai

berikut ;

Untuk membuat program tersebut dengan menggunakan operasi kondisi dimana varaiabel a

dan b terlebih dahulu di definisikan. a=0 dan b=1 yang akan digunakan sebagai nilai barisan

awal.

Pada proses perulangan for(int i=0; i<=deret; i++) i=0 dan i kurang dari sam dengan jumlah

bilangan yang diinputkan. Maka i++.

Di dalam proses perulangan terdapat operasi kondisi dimana jika i==1 maka output b=1.

Jika i==0 maka output a=0. Jika tidak keduanya maka n= b+a, a=b dan b=n

Setelah statement bernilai salah maka perulangan akan berhenti.

Page 27: LAPORAN DPK MODUL 6

Tugas Rumah IIIPemrograman C++

Nama Program : Program sederhana untuk mencari Determinan dari sebuah

Matriks

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

Output Program :

Penjelasan Program :

Program diatas adalah program sederhana untuk mencari determinan. Beberapa penjelasan

program diatas, sebagai berikut :

Array “matriks” dengan elemen [2][2] di dalamnya. 2 baris dan 2 kolom yang akan

diisi dan ditampilakan nilainya.

Dengan Row Major Order menginput isi elemen baris dan kolom

for(baris=0;baris<2;baris++) dan for(kolom=0;kolom<2;kolom++ ) baris kurang

dari 2 dan kolom kurang kurang dari 2. Apabila pernyataan tersebut bernilai False maka

perulangan akan selesai.

Output kondisi diatas adalah ("Masukkan elemen baris ke-%i kolom ke-%i:

",baris+1,kolom+1); matriks baris[1-2] dan kolom[1-2].

Menampilkan nilai matriks secara Row Major Order dengan bentuk statement

perulangan yang sama tetapi outputnya adalah ("%9.0i",matriks [baris][kolom]) yang

berarti memanggil data bertipe interger yaitu array matriks[baris][kolom].

Setelah pernyataan pada perulangan diatas bernilai FALSE maka program berakhir.

Page 28: LAPORAN DPK MODUL 6

Tugas Rumah IVPemrograman C++

Nama Program : Penghitung Nilai Remidi

Bahasa Pemrogramam : C++

Compiler : MinGW Developer Studio

Script program :

#include <iostream.h>#include <stdio.h>#include <conio.h>

main(){

int n, a, kkm, r=0,t=0, nilai[10];cout<<"----------------------------------------------\n";cout<<" PROGRAM PENGHITUNG NILAI REMIDI\n";cout<<"----------------------------------------------\n";cout<<"Input Jumlah Siswa : ";cin>>n;cout<<"----------------------------------------------\n";

for(a=0;a<n;a++){

printf("\tNilai siswa ke - %i:", a+1);scanf("%i",&nilai [a]);

}cout<<"\n----------------------------------------------\n";printf("Semua nilai siswa yang telah diinput : \n");for(a=0;a<n;a++){

printf("%3.0i",nilai[a]);}cout<<"\n----------------------------------------------";cout<<" \nMasukkan nilai KKM : ";cin>>kkm;cout<<"\n----------------------------------------------\n";for(a=0;a<n;a++){if ("%i",nilai[a]<kkm){

r=r+1;}else{

t=t+1;}}cout<<"Jumlah siswa yang remidi sebanyak : "<<r<<endl;cout<<"Jumlah siswa yang tidak remidi sebanyak : "<<t<<endl;cout<<"\n----------------------------------------------\n";getch();

}

Page 29: LAPORAN DPK MODUL 6

Output Program :

Penjelasan Program :

Program di atas merupakan program untuk menghitung nilai remidi dari jumlah dan nilai

siswa yang diinputkan sebelumnya. Beberapa penjelasan mengenai program penghitung nilai

remidi,adalah sebagai berikut :

Beberapa variabel didefinisikan terlebih dahulu seperti variabel r dan t. varibel

tersebut digunakan untuk menampilkan jumlah siswa yang remidi dan siswa yang tidak

remidi.

Difinisi array juga dilakukan yaitu array nilai [10], untuk memberi batasan pada

elemen array.

Setelah jumlah siswa diinput (n) maka akan dimasukkan kedalam proses perulangan

yang pertama untuk menginputkan nilai setiap siswa.

Pada proses perulangan kedua statement sama dengan statement pada perulangan

yang pertama. Tetapi pada perulangan kedua menampilakan output data nilai yang

sudahdiinputkan pada perulangan pertama printf("%3.0i",nilai[a]);

Selanjunya adalah menginput nilai KKM .

Page 30: LAPORAN DPK MODUL 6

Setelah nilai KKM masuk akan diproses pada perulangan yang ketiga masih

menggunakan statement yang sama dan terdapat operasi kondisi if else di dalamnya untuk

mengetahui jumlah siswa yang remidi if ("%i",nilai[a]<kkm). Jika kondisi tersebut bernilai

benar maka r=r+1 dan apabila kondisi else maka t=t+1.

Setelah perulangan berakhir program akan menampilkan jumlah siswa yang remidi

dan siswa yang tidak remidi (r dan t). Sehingga program berakhir.

Page 31: LAPORAN DPK MODUL 6

KESIMPULAN

Pada praktikum yang ke enam ini bab yang di pelajari adalah array. Setelah mempelajari bab

ini saya dapat menarik beberapa kesimpulan bahwa ;

1. Array adalah kumpulan dari nilai-nilai data bertipe sama dalam urutan tertentu yang

menggunakan sebuah nama yang sama. Nilai-nilai data di suatu array disebut dengan

elemen-elemen array. Letak urutan dari elemen-elemen array ditunjukkan oleh suatu

subscript atau indeks

2. Saat kita membuat program dengan menggunakan array kita harus memastikan bahwa

tidak terjadi pengaksesan elemen array diluar jumlah elemen yang didefinisikan.

Karena program tidak akan memberikan pesan kesalahan apabila terjadi pengaksesan

dengan nilai subscript yang berada diluar nilai yang sudah didefinisikan.

3. Jika suatu array tidak didefinisikan maka secara otomatis akan member nilai awal nol

terhadap array.

4. Array berfungsi untuk melakukan beberapa operasi seperti memperoleh bilangan

terbesar/terkecil,mengurutkan data, menampilkan kembali data inputan,mengurutkan

data,mengelompokkan data,dst.

DAFTAR RUJUKAN

1. Tim Asisten Dosen. 2015. Modul 6 Array. Malang: Universitas Negeri Malang.

2. http://blog.uad.ac.id/latif_ilkom/2008/11/02/program-pembalik-kata-c/

(21-10-2015<22.22>)

3. http://setiawanandrianto0.blogspot.com/2013/12/laporan-pemrograman-dasar-tipe-

array.html (22-10-2015<22.46>)

4. Kadir Abdul.C++. Yogyakarta : Andi

5. http://foxtrod07.blogspot.com/2011/12/laporan-program-menggunakan-fungsi-array.html

(22-10-2015<22.50>)