Upload
anidia-wulan-sari
View
300
Download
3
Embed Size (px)
DESCRIPTION
LAPORAN DPK MODUL 6
Citation preview
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
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 :
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:
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
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 :
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])
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]);
}
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 :
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
[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
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.
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();
}
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.
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.
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);
}
}
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
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");
}
}
Output Program :
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.
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 :
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.
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();
}
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
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();}
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.
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.
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();
}
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 .
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.
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>)