Anda di halaman 1dari 40

LAPORAN PRAKTIKUM

ALGORITMA PEMROGRAMAN 2

Di susun Oleh:

Teknik Informatika D

Dosen pengampuh : Shinta Esabella, M.T.I

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS TEKNOLOGI SUMBAWA

SUMBAWA BESAR

2020
LEMBAR PENGESAHAN

LAPORAN PRAKTIKUM ALGORITMA PEMPROGRMAN 2

Laporan Praktikum Algoritma Pemprograman II ini disusun sebagai sebagai


tugas akhir menyelesaikan Praktikum Algoritma Pemprograman II dan salah satu
syarat lulus mata kuliah Algoritma Pemprograman II.

Sumbawa, 30 Maret 2020

Menyetujui,

Dosen Penanggung Jawab Praktikum Asisten Praktikum

Shinta Esabella, ST., M.TI Miftahul HQ

NIDN : 0814078603
KATA PENGANTAR

Assallamu’alaikum warohmatullahi wabarokatuh

Puji syukur kehadirat ALLAH subhanahu wata’ala yang telah melimpah


kepada kita nikmat iman, islam, serta nikmat kesempatan sehingga kami dapat
menyelesaikan Laporan Praktikum “Algoritma Pemroraman 2” ini. Sholawat serta
salam semoga selalu tercurahkan kepada Baginda Nabi Muhammad Shalallahu
alaihi wasallam yang telah berjuang menyebarkan islam sehingga kita dapat
merasakan nikmat islam. Penulis sangat bersyukur dan berterima kasih kepada
beberapa pihak sehingga Laporan Praktikum “Algoritma Pemrograman 2” ini dapat
selesai tepat waktu.

Demikian yang dapat kami sampaikan, semoga makalah ini dapat


bermanfaat bagi pembaca kritik dan sara membangun sangat diperlukan agar
penulis menjadi lebih baik lagi kedepannya.

Wasallamualaikum warohmatullahi wabarokatuh

Sumbawa, 30 Maret 2020

Penulis
DAFTAR ISI

LEMBAR PENGESAHAN..............................................................................................2
LAPORAN PRAKTIKUM ALGORITMA PEMPROGRMAN 2 ...............................2
KATA PENGANTAR ......................................................................................................3
DAFTAR ISI ....................................................................................................................4
BAB I ................................................................................................................................5
PENDAHULUAN ............................................................................................................5
1. LATAR BELAKANG ..........................................................................................5
2. Rumusan masalah ................................................................................................5
3. Tujuan ...................................................................................................................5
BAB II ...............................................................................................................................6
PEMBAHASAN ...............................................................................................................6
A. Konsep Pemrograman .........................................................................................6
B. Algoritma Sequential ...........................................................................................6
C. Implementasi ......................................................................................................15
D. Modular ..............................................................................................................20
E. FUNGSI ..............................................................................................................22
F. REKURSIF .........................................................................................................23
G. Implementasi ..................................................................................................25
H. Array ...............................................................................................................34
BAB I

PENDAHULUAN

1. LATAR BELAKANG

Di era modern seperti sekarang ini banyak orang yang ingin


mengakses segala hal dengan mudah dan secara otomatis sehingga
permintaan oleh perusahaan terhadap aplikasi sangatlah tinggi sehingga
mentuntut para software developer untuk meninggkatkan kemampuan
dalam hal membuat aplikasi yang cepat dan teliti. Untuk menjawab
tantangan perkembangan teknologi seorang programmer pemula harus
mempelajari algoritma pemrograman.

Algoritma pemrograman adalah dasar pemikiran atau konsep dari


pemrograman itu sendiri. Seorang telah menguasai dasar pemikiran
pemrograman dapat membuat program apapun itu dengan benar dan teliti
dan meminimalisir terjadinya kesalahan dalam hal pemrograman.

2. Rumusan masalah

Adapun yang akan dibahas pada Laporan Praktikum ini antara lain:
a. Algoritma dan pemrograman sequential, braching, rekursif
b. Modular (Procedure dan Function)
c. Array Multidimensi

3. Tujuan

Adapun tujuan dari pembuatan Laporan Praktikum ini antara lain :

a. Melaporkan hasil praktikum tentang Algoritma dan pemrograman


sequential, braching, rekursif
b. Melaporkan hasil praktikum tentang Modular (Procedure dan Function)
c. Melaporkan hasil praktikum tentang Array Multidimensi
BAB II

PEMBAHASAN

A. Konsep Pemrograman

Program = algoritma + struktur data

Algoritma :

a. Sequential / Beruntun
b. Branching /Pencabangan
c. Looping/ Iterasi / Rekursif

Struktur data :

d. Struktur Data Sederhana ; Array, Struct/Record, Searching,


Shorting
e. Struktur Data Majemuk
Linier : Stack, Queue,, Linked List
Non Linier : Tree Binary, Graph,

B. Algoritma Sequential

Pada dasarnya algoritma penyelesaian suatu masalah, betapapun


kompleksnya, dapat dipecah ke dalam tiga struktur dasar algoritma, yaitu ;

1. Algoritma runtunan (sekuensial)

Algoritma runtunan adalah sekumpulan perintah atau pernyataan yang


dikerjakan komputer berdasarkan dengan urutan perintahnya. Jadi, jika
terdapat algoritma dengan urutan perintahnya adalah :

Perintah1

Perintah2

Perintah3

maka perintah yang dieksekusi pertama adalah Perintah1, diikuti kemudian


Perintah2 dan terakhir Perintah3.
Contoh :

Berikut ini adalah algoritma menghitung keliling lingkaran. Secara umum


algoritma tersebut dapat kita nyatakan sebagai berikut.
Judul {Algoritma LuasLingkaran}
Deklarasi
Phi  3.14 , Luas, Jari : float
Deskripsi
1. Scanf(Jari)
2. Luas  Phi*Jari*Jari
3. Printf(Luas)
4. End

Berikut adalah source code nya :

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

using namespace std;

int main()
{

int ksoni,kadi,kanis,kluki;
cout<<"\nAlgoritma menghitung kelereng Adi, Anis, Luki";
cout<<"\ninput kelereng soni : ";
cin>>ksoni;

kadi=ksoni-10;
kanis=2*(ksoni+kadi);
kluki=ksoni+kadi+kanis-5;

cout<<"\n##########################";
cout<<"\n\nkelereng adi = " <<kadi;
cout<<"\nkelereng anis = " <<kanis;
cout<<"\nkelereng luki = " <<kluki;
cout<<"\n\n############################";
return 0;
}
Bias di liat pada gambar di atas dimana yang di eksekusi operasi
1(kadi=ksoni-10;), operasi 2(kanis=2*(ksoni+kadi);) , kemudian operasi
3(kluki=ksoni+kadi+kanis-5;). Kelereng adi didapatkan dari kelereng
kelereng soni (input) – 10 , kemudian kelereng anis di dapatkan dari
kelereng soni+ kelereng adi, dan dikali 2. Dan untuk kelereng luki di
dapatkan dari kelereng soni + kelereng adi + kelereng anis – 5.

2. Algoritma seleksi kondisi atau percabangan (branching)

Merupakan Algoritma yang tidak selamanya akan berjalan dengan


mengikuti struktur berurutan, kadang-kadang perlu merubah urutan
pelaksanaan program dan menghendaki agar pelaksanaan program
meloncat ke baris tertentu.

Pada struktur percabangan, program akan berpindah urutan


pelaksanaan jika suatu kondisi yang disyaratkan dipenuhi.

Contoh :

Sebuah aturan untuk menonton sebuah film tertentu adalah sebagai berikut,
jika usia penonton lebih dari 17 tahun maka penonton diperbolehkan dan
apabila kurang dari 17 tahun maka penonton tidak diperbolehkan nonton.
Buatlah Algoritma untuk permasalahan tersebut.

Judul { Aturan Menonton Film}

Deklarasi Usia : Integer

Deskripsi
1. Scanf(Usia)

2. If Usia > 17 then Printf(Boleh Nonton)

else Printf(Tidak Boleh Nonton)

3. End

Berikut adalah source code nya :

#include <iostream>

#include <stdio.h>

#include <stdlib.h>

using namespace std;

int main()

system("cls");

int umur;

string nama,boleh;

system("cls");

cout<<"Masukan nama anda : ";

cin>>nama;

cout<<"\nMasukan Umur anda : ";

cin>>umur;

if(umur >= 1 && umur <= 17)boleh="Maaf, Anda Tidak dapat


Menonton";

else boleh=" Selamat menonton :D";

cout<<"\n##########################";

cout<<"\n\nHallo " <<nama;

cout<<"\nUmur kamu "<<umur << " tahun, "<< boleh;

cout<<"\n\n############################";
Pada gambar di atas dapat kita lihat dimana syarat umur tidak
terpenuhi dimana saya menginputkan nilai 19 (if(umur >= 1 && umur <=
17)boleh="Maaf, Anda Tidak dapat Menonton";) maka akan
dilaksanakan kondisi yang kedua, yaitu else boleh=" Selamat menonton
:D";

3. Algoritma perulangan (rekursif)

Merupakan Algoritma yang digunakan untuk mengulang satu atau


sekelompok perintah berkali-kali agar memperoleh hasil yang diinginkan.

Ada beberapa struktur perulangan

for

while do

do while

contoh 1 :

for
Menuliskan nama anda sebanyak 100 kali !

Judul {Algoritma untuk mencetak pernyataan sebanyak 100 kali}


Deklarasi banyak : integer
Deskripsi
1. for (banyak=1;banyak<=100;banyak++)
printf(”shinta”)
2.end

Berikut adalah source codenya :


#include <stdio.h>
#include <stdlib.h>

using namespace std;

int main()

int banyak=1;

system("cls");
for(banyak;banyak<=100;banyak++)
{cout<<"\n informatika D " <<banyak;}
return 0;
}

Hasil :
Contoh 2 :
While do

Menuliskan nama anda sebanyak 100 kali !

Judul {Algoritma untuk mencetak pernyataan sebanyak 100 kali}


Deklarasi banyak : integer
Deskripsi
1. banyak = 1;
2. while (banyak<=100) do
printf(”shinta”)
banyak = banyak + 1
3.end

Berikut adalah source codenya :

#include<iostream>

using namespace std;


int main()
{
int banyak=1;

while(banyak<=100)
{cout<<"\nhanu "<< banyak;
banyak=banyak+1;}

return 0;
}

Hasil :
Contoh 3 :

Do while

Menuliskan nama anda sebanyak 100 kali !


Judul {Algoritma untuk mencetak pernyataan sebanyak 100 kali}
Deklarasi banyak : integer
Deskripsi
1. banyak = 1;
2. do
printf(”shinta”)
banyak = banyak + 1
while (banyak<=100)
3.end

Source code :

#include<iostream>

using namespace std;


int main()
{
int banyak=1;
do{
cout<<"\ninformatika D "<< banyak;
banyak=banyak+1;

}while(banyak<=100);
return 0;
}

Hasil :
C. Implementasi

Buatlah program dengan menggunakan struktur penyeleksian kondisi dalam


bahasa C++ !
SOAL
Bank SHINTA dalam perhitungan deposito ditentukan dari golongan dan
jangka waktu (periode/bulan). Dengan ketentuan :
Golongan A jum_awal = 2.000.000
Golongan B jum_awal = 1.750.000
Golongan C jum_awal = 1.250.000
Golongan D jum_awal = 1.000.000
selain itu jum_awal = 750.000

Source code :

#include<iostream>
#include <stdlib.h>

using namespace std;


int main()

{
int periode;
long jum_awal,jum_akhir;
char gol;
float bunga;

system("clear");

cout <<"\n PERHITUNGAN DEPOSITO BANK SHINTA";


cout <<"\n -----------------------";
cout <<"\n Masukkan Golongan : ";
cin >> gol;
cout <<"\n Masukkan Periode : ";
cin >> periode;
switch(gol)
{ case 'A' :
jum_awal = 2000000;
break;
case 'B' :
jum_awal = 1750000;
break;
case 'C' :
jum_awal = 1250000;
break;
case 'D' :
jum_awal = 1000000;
break;
default: jum_awal = 750000;
}

if (periode>=1 && periode<=3) bunga = 0.18;


else if (periode>=4 && periode<=6) bunga = 0.21;
else if (periode>=7 && periode<=12) bunga = 0.24;
else bunga = 0.27;
cout << "\nBunga : " << bunga;
cout << "\nJumlah Uang Awal : " << jum_awal;

jum_akhir=((bunga/periode)*jum_awal)+jum_awal;

cout << "\nJumlah Uang Akhir : " << jum_akhir;

return(0);
}

Hasil :
Buatlah program yang menampilkan :

Source code :

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

using namespace std;

int main()
{

int pilihan_pengobatan,obat;
float diskon;
double biaya,biaya_pengobatan,hasil_diskon,hasil,Jumlah_uang,kembali;
char ulang;
do{
system("cls");

cout<<"\nPerhitungan Biaya Klinik gigi";


cout<<"\n_______________________________";
cout<<"\n\nPilihan Pengobatan :";
cout<<"\n1. Pemeriksaan Gigi 4. Bersikan Kapur Gigi";
cout<<"\n2. Cabut Gigi 5. Pemasangan Kawat Gigi";
cout<<"\n3. Tambal Gigi 6. Operasi Ringan";
cout<<"\n";

cout<<"\nMasukan Kode Pengobatan :";


cin>>pilihan_pengobatan;

switch(pilihan_pengobatan)
{
case 1:
biaya=125000;
break;

case 2:
biaya=150000;
break;

case 3:
biaya=225000;
break;

case 4:
biaya=300000;
break;

case 5:
biaya=3000000;
break;

case 6:
biaya=5000000;
break;
default:
cout<<"MAAF, ANDA SALAH INPUT, INPUT HANYA BERUPA
PILIHAN DI ATAS.";
exit(0);
system("cls");
}

cout<<"\nMasukan Jumlah Obat :";


cin>>obat;

if (obat>=0 && obat<=1)diskon=0.25;


else if (obat>=2 && obat<=3)diskon=0.20;
else diskon=0.15;

hasil_diskon=biaya*diskon;
hasil=biaya-hasil_diskon;

cout<<"\njumlah Biaya Yang Di Bayar : "<<hasil;

cout<<"\nJumlah Uang : ";


cin>>Jumlah_uang;

kembali=Jumlah_uang-hasil;

cout<<"Kembali : "<<kembali;

cout<<"\n";
cout<<"\nApakah anda ingin Mengulang? ";
cout<<"[Y/N] :";
cin>>ulang;
}while(ulang=='Y' || ulang=='y');
cout<<"\nterimakasih sudah mampir";

return 0;
}

Hasil :
D. Modular

Prosedur adalah sebuah blok program tersendiri, yang merupakan


bagian dari program lain yang lebih besar. Adapun alur dari program
prosedur
Contoh Program Prosedur

Disini kami menggunakan text editor sublime text dengan compiler


mingw. Untuk source code program prosedur antara lain:

#include <iostream>
using namespace std;

void info_program();
int main()
{
info_program();
system("pause");
cout << "\n";
info_program();
return 0;
}
void info_program()
{
cout << "Selamat Belajar\n";
cout << "di Universitas Teknologi Sumbawa\n";
}

Di program ini terdapat prosedur pada info_program yang berisikan


tulisan “Selamat Belajar” dan “di Universitas Teknologi Sumbawa” apabila
kit abaca pada source codenya pada program utama prosedur info_program
itu di panggil sebanyak dua kali sehingga menghasilakn output sebagai
berikut:
E. FUNGSI

Adalah sebuah block program tersendiri yang merupakan bagian dari


program lain yang lebih besar sama halnya dengan prosedur hanya saja
fungsi mempunya hasil keluaran adapaun konsep dari fungsi antara lain :

Pada gambar tersebut diilustrasikan bahwa sebuh fungsi memiliki


prosedur untuk meminta data dari inti program sehingga nilai tersebut dapat
di proses pada fungsi yang ada pada program dan dapat menghasilkan nilai
yang akan di tampilkan pada console.
Adapun contoh dari program fungsi antara lain:
#include <iostream>
using namespace std;

int kuadrat(int b);


int main()
{
cout << "kuadrat 2 adalah " << kuadrat(2);
cout << "\nkuadrat 3 adalah " << kuadrat(3);
cout << "\nkuadrat 4 adalah " << kuadrat(4);
return 0;
}
int kuadrat(int b)
{ int z;
z=b*b;
return z;
}

Dari program tersebut kita bisa menganalisis, dalam program tersebut


terdapat fungsi kuadrat yang akan menyimpan nilai pada variable integer b
dan nilai dari fungsi kuadrat tersebut di input melalui program utama.
Sehingga program tersebut menghasilkan sebagai berikut:

F. REKURSIF

Merupakan proses memanggil dirinya sendiri yang biasa dilakukan


oleh fungsi atau prosedur pada pemrograman procedural. Rekursif akan
terus berjalan sampai kondisi berhenti (terpenuhi), mirip seperti
perulangan/looping. Ada beberapa masalah yang akan lebih mudah jika
dipecahkan menggunakan fungsi rekursif. Disamping itu kode program
yang menggunakan fungsi rekursif akan lebih mudah dipahami (lebih
ringkas) dari pada versi iterasinya.
Berikut ada contoh perbandingan antara program iterasi dan rekursif
antara lain:

Iterasi
#include <iostream>
using namespace std;

int main ()
{
int x,a,i,hasil=1;
cout << "Program Iterasi Perpangkatan \n";
cout << "Masukkan nilai x = ";
cin >> x ;
cout << "Masukkan nilai a = "; cin >> a ;
for ( i = 1 ; i <=a ; i++ )
{
hasil = hasil*x;
}
cout<<"Hasil pemangkatan "<<x <<"^" <<a <<" = " <<hasil;
return 0;
}

Dari program tersebut dapat kita lihat bahwa program tersebut hanya
mempunya fungsi main yang menggunakan satu perulangan dimana dimana
variable x akan berisi angka nya dan variable a akan berisi nilai
perpangkatannya. Adapun hasil dari program tersebut antara lain:
G. Implementasi
1. Rekursif
#include <iostream>
using namespace std;

int pangkat (int j, int k);


int main()
{
int x, a, hasil;
cout <<"Pclsrogram Rekursif Perpangkatan \n" ;
cout << "Masukkan nilai x = "; cin >> x ;
cout << "Masukkan nilai a = "; cin >> a ;
cout << "Hasil pemangkatan "<<x <<"^" <<a <<" = " <<pangkat(x,a);
return 0;
}
int pangkat (int j, int k)
{
int i, hasil= 1;
for ( i = 1 ; i <=k ; i++ )
hasil = hasil*j;
return hasil;
}

Sama halnya dengan program iterasi sebelumnya dalam hal


penggunaan perulangannya hanya saja program tersebut menggunakan
konsep pemrograman rekursif sehingga menghasilkan output:
2. menentukan bilangan Faktorial

#include <iostream>
using namespace std;

int fak(int n);


int main()
{
int n;
cout << "Menentukan Nilai Faktorial \n";
cout << " Input Nilai "; cin >> n;
cout << "Faktorial { "<<n<< "!} = " <<fak(n)<< "\n";
return 0;
}
int fak(int n)
{
int i, x=1;
for (i=1;i<=n;i++){
x=x*i;
}
return i;
}
3. KONVERSI SUHU

#include <iostream>
using namespace std;

int fahrenheit(float carifar, float c2);


int reamur(float carirea, float c2);
int kelvin(float carikel, float c2);

int main(){
int c, hasil = 1;
cout << "Masukan Suhu dalam celsius = ";
cin >> c;
fahrenheit(hasil, c);
reamur(hasil, c);
kelvin(hasil, c);
return 0;
}
int fahrenheit(float carifar, float c2){
carifar = c2 * 1.8 + 32;
cout << "Nilai fahrenheinya adalah = " << carifar << endl;
return carifar;
}
int reamur(float carirea, float c2){
carirea = c2 * 0.8;
cout << "Nilai reamurnya adalah = " << carirea << endl;
return carirea;
}
int kelvin(float carikel, float c2){
carikel = c2 + 273.15;
cout << "Nilai kelvinnya adalah = " << carikel << endl;
return carikel;
}

4. Bintang
#include <iostream>
using namespace std;

int bintangatas(int bil);


int bintangbawah(int bil);
int main()
{
int bil;
cout<< "Masukkan jumlah baris bintang: "; cin>>bil;
bintangatas(bil);
bintangbawah(bil);
return 0;
}
int bintangatas(int bil)
{ int a,b;
for(a=1;a<=bil;a++)
{
for(b=bil;b>=a;b--)
cout<<" ";
for(b=a;b<2*a;b++)
{
cout<<"*";
}
for(b=2*(a-1);b>=a;b--)
{ cout<<"*"; }
cout<<"\n";
}
return 0;
}
int bintangbawah(int bil)
{ int a,b;
for(a=bil-1;a>=1;a--)
{
for(b=a;b<=bil;b++)
cout<<" ";
for(b=2*a;b>a;b--)
{
cout<<"*";
}
for(b>a;b<=2*(a-1);b++)
{ cout<<"*"; }
cout<<"\n";
}
return 0;
}

5. Bintang2

#include <iostream>
using namespace std;

int bintang(int bil);


int bintang2(int bil);
int main()
{
int bil;
cout<< "Masukkan jumlah baris bintang: "; cin>>bil;
bintang(bil);
bintang2(bil);
return 0;
}
int bintang(int bil)
{
int a,b;
for(a=1;a<=bil;a++)
{
for(b=1;b<=a;b++)
cout<<"*";
cout<<"\n";
}
return 0;
}
int bintang2(int bil)
{
int a,b;
for(a=1;a<=bil;a++)
{ for(b=bil-1;b>=a;b--)
cout<<"*";
cout<<"\n";
}
return 0;
}

Fibbonaci
Barisan bilangan Fibonacci dapat dinyatakan sebagai berikut:
Fn = (x1n – x2n)/ sqrt(5)
dengan
Fn adalah bilangan Fibonacci ke-n
x1 dan x2 adalah penyelesaian persamaan x2 – x – 1 = 0.
Perbandingan antara Fn+1 dengan Fn hampir selalu sama untuk sebarang
nilai n dan mulai nilai n tertentu, perbandingan ini nilainya tetap.
Dapat juga dengan Logika berikut ;
Angka 1 = 0
Angka ke-2 = 1
Angka ke-3= angka 1+ Angka ke-2
Angka ke-4 = angka 2+ Angka ke-3
dst….

6. menentukan bilangan Fibbonaci


#include <iostream>
using namespace std;

int fibo(int n);


int main()
{
int n;
cout << "Menentukan Nilai Fibbonaci\n";
cout << "Input Nilai "; cin >> n;
cout << "Nilai Fibbonaci dari"<<n<<"bilangan = "<<fibo(n) ;
return 0;
}
int fibo(int n)
{
int i, next, a=0, b=1;
for (i=0;i<n;i++)
{
if (i<=1)
{
next=1;
}
else {
next= a+b;
a=b;
b=next;
}
}

7. Deret Fibonaci

#include <iostream>
using namespace std;

int main()
{
int i, n, a[100];
cout<<"----- Program Deret Fibonacci -----\n\n";
cout<<"Masukkan jumlah deret : ";
cin>>n;
for(i=0; i<n; i++)
{
if(i<2) a[i]=i;
else a[i]=a[i-2]+a[i-1];
}

cout<<"Fibonacci " <<n<< " deret adalah \n";


for(i=0; i<n; i++)
{
cout<<a[i];
}
return 0;
}

H. Array

Array merupakan struktur data yang digunakan untuk menyimpan


sekumpulan data dalam satu tempat. Setiap data dalam Array memiliki
indeks, sehingga kita akan mudah memprosesnya.

Indeks array selalu dimulai dari angka nol (0). Pada teori struktur
data ukuran array akan bergantung dari banyaknya data yang disimpan di
dalamnya.
1. Cara Membuat Array pada C++

Pada C++, array dapat kita buat dengan cara seperti ini.

// membuat array kosong dengan tipe data integer dan panjang 10


int nama_array[10];

// membuat array dengan langsung diisi


int nama_arr[3] = {0, 3, 2}
Cara membaut array hampir sama seperti cara membuat variabel biasa.

Bedanya… pada array kita harus menentukan panjangnya.

2. Cara Mengambil Data dari Array

Seperti yang sudah kita ketahui Array akan menyimpan sekumpulan data
dan memberinya nomer indeks agar mudah diakses.Indeks array selalu
dimauli dari nol 0.Misalkan kita punya array seperti ini:

char huruf[5] = {'a', 'b', 'c', 'd', 'e'};


Bagaimana cara mengambil huruf c?

Jawabannya:

huruf[2];
Mengapa bukan huruf[3]?

Ingat: indeks array selalu dimulai dari nol.

Biar lebih jelas, mari kita coba dalam program. Silahkan buat file
baru dengan nama contoh_array.cpp, kemudian isi dengan kode berikut:

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

void main(){
char huruf[5] = {'a', 'b', 'c', 'd', 'e'};

// mengambil data pada array


cout << "Huruf: " << huruf[2] << endl;

getche();
}
Setelah itu, coba compile dan jalankan.

Maka hasilnya:

3. Mengisi Ulang Data pada Array

Data pada array dapat kita isi ulang dengan cara seperti ini:

huruf[2] = 'z';
Maka isi array huruf pada indeks ke-2 akan bernilai 'z'.

Kalau tidak percaya…

Kamu bisa coba buktikan sendiri.

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

void main(){
// isi awal array
char huruf[5] = {'a', 'b', 'c', 'd', 'e'};

// mengubah isi data array


huruf[2] = 'z';

// mencetak isi array


cout << "Huruf: " << huruf[2] << endl;
getche();
}
Hasil outputnya:

Contoh lain:

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

void main(){
// membuat array kosong
int nilai[5];

// mengisi array
nilai[0] = 32;
nilai[1] = 42;
nilai[2] = 76;
nilai[3] = 31;
nilai[4] = 57;

// mencetak isi array


cout << "Nilai ke-1: " << nilai[0] << endl;
cout << "Nilai ke-2: " << nilai[1] << endl;
cout << "Nilai ke-3: " << nilai[2] << endl;
cout << "Nilai ke-4: " << nilai[3] << endl;
cout << "Nilai ke-5: " << nilai[4] << endl;

getche();
}
Hasilnya:

4. Menggunakan Perulangan dan Array

Pada contoh di atas, kita menggunakan perintah cout secara berulang


untuk mencetak semua isi array.

Contoh:

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

void main()
{
int Baris, Kolom, Garis, Jumlah, Matriks_A[2][4] =
{20,30,40,50,10,20,30,40}, Matriks_B[2][4] = {1,2,3,4,4,3,2,1};
cout << "\n PROGRAM PENJUMLAHAN DUA MATRIKS";
cout << "\n ";
for (Garis = 1; Garis <= 31; Garis++){ cout << "\xc4"; }
cout << "\n\n ---MATRIKS A---\n";
for (Baris = 0; Baris < 2; Baris++)
{
cout << " ";
for (Kolom = 0; Kolom < 4; Kolom++)
{
cout << Matriks_A [Baris] [Kolom] << " ";
}
cout << endl;
}
cout << "\n\n ---MATRIKS B---\n";
for (Baris = 0; Baris < 2; Baris++)
{
cout << " ";
for (Kolom = 0; Kolom < 4; Kolom++)
{
cout << Matriks_B [Baris] [Kolom] << " ";
}
cout << endl;
}
cout << "\n\n ===PENJUMLAHAN MATRIKS===\n";
for (Baris = 0; Baris < 2; Baris++)
{
cout << " ";
for (Kolom = 0; Kolom < 4; Kolom++)
{
Jumlah = Matriks_A [Baris] [Kolom] + Matriks_B
[Baris] [Kolom];
cout << Matriks_A [Baris] [Kolom] << " + " <<
Matriks_B [Baris] [Kolom] << " = " << Jumlah << " ";
}
cout << endl;
}
getche();
}

Hasilnya:

Anda mungkin juga menyukai