ARRAY (LARIK)
Oleh:
Wenda Aditama
150533604429
S1 PTI’15 OFF D
Tujuan
DASAR TEORI
1. Pengertian Array
Array adalah struktur data yang menyimpan data-data bertipe sama dalam urutan
tertentu. Array dapat dianalogikan sebagai sebuah loker yang memiliki sederetan
kotak penyimpananyang diberi nomor berurutan. Data-data dalam array disebut
elemen array. Dengan array setiap elemen bisa diakses langsung melalui
indeksnya, berlebihan lain dari array adalah kita bisa memakai sejumlah -
ariable dengan nama yang sama asalkan variable tersebut dalam indeks yang
berbeda.
2. Karakteristik Array
Bentuk Umum :
70 80 82 60
Array dimensi dua merupakan array yang terdiri dari “m” buah baris dan
“n” buah kolom.
Bentuknya dapat berupa matriks atau Table.
Bentuk umum :
Contoh :
Cara akses
data_lulus [0][1]=540
Untuk mengisi dan menampilkan isi elemen array ada 2 cara, yaitu :
a. Row Major Order (secara baris per baris)
b. Column Major Order (secara kolom per kolom)
Inisialisasi :
c. Array Multidimensi
Array multidimensi adalah array yang mempunyai lebih dari satu atau dua
dimensi. Misalnya, A[3][5] artinya array tersebut mempunyai 3 baris dan 5
kolom.
Bentuk Umum :
Inisialisasi :
Contoh Program :
Selain ketiga jenis array diatas, terdapat array tak beraturan (ukuran array
tidak dituliskan). Contoh inisialisasi :
4. Operasi Dasar Pada Array
int main()
{
int index, nilai[10];
//input nilai mahasiswa
printf ("Input nilai 10 mahasiswa: ");
for (index=0;index<10;index++)
{
printf("\nMahasiswa %i: ", index+1);
scanf("%i", &nilai[index]);
}
//tampilan nilai mahasiswa
printf ("Nilai mahasiswa yang telah diinput");
for(index=0;index<10;index++)
{
printf ("%5.0i", nilai[index]);
}
getch ();
}
Output Program :
Algoritma :
1. Start
2. Deklarasi variabel index dan nilai[10]
3. Inputkan nilai dari 10 mahasiswa
write(Mahasiswa %i: , index++)
read(%i , &nilai[index])
4. Proses
for (index=0;index<10;index++)
5. Menampilkan data
write(Nilai Mahasiswa yang telah diinput);
write(%5.0i , nilai[index])
6. End
Penjelasan Program :
Pada latihan 1 diatas menjalankan suatu program yang berfungsi menampilkan
data/nilai yang telah diinputkan secara berurutan dari 1 sampai 10.Cara kerjanya
yaitu pengguna memasukkan nilai/data dari variabel 1 sampai 10, lalu program ini
menggunakan operator looping, yang maksudnya nilai atau data dimulai dari sama
dengan 0 dan lebih kecil dari 10 atau tidak.Lalu program akan menampilkan hasil
data yang telah di proses secara urut dari variabel 1 sampai 10 dalam bentuk larik
atau array.
Latihan Praktikum II
Pemrograman C++
#include "stdio.h"
#include "conio.h"
#include "windows.h"
int main ()
{
int baris, kolom, matriks[5][4];
system ("cls");
//input elemen secara Row Major Order
printf ("-------------------------\n");
printf ("Masukkan Nilai Matriks \n");
printf ("-------------------------\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 5 x 4 : \n");
printf ("-----------------------------\n");
for (baris=0; baris<5; baris++)
{
for(kolom=0; kolom<4; kolom++)
{
printf(" %2.0i ", matriks [baris][kolom]);
}
printf ("\n");
}
getch ();
}
Output Program :
1. Start
2. Deklarasi variabel baris, kolom, matriks[5][4]
3. Masukan nilai ke dalam matriks
write (Masukkan Nilai Matriks\n);
write ("Matriks[%i][%i] :", baris+1, kolom+1);
read (“%i” , &matriks[baris][kolom]);
4. Proses data
for (baris=0;baris<5;baris++)
for (kolom=0;kolom<4;kolom++)
for (baris=0;baris<5;baris++)
for (kolom=0;kolom<4;kolom++)
5. Menampilkan hasil data dalam bentuk array (baris dan kolom)
write (Isi Array 5x4);
write (“2.0” , matriks[baris][kolom])
6. End
Penjelasan Program :
Pada latihan 2 diatas menjalankan suatu program yang berfungsi untuk
memproses pembuatan suatu matriks dengan memasukkan data per satu baris dan
kolom yang nanti akan dibuat sebagai isi dari matriks.Disini pengguna diminta
untuk memasukkan angka yaitu mulai dari matriks baris 1 sampai 4 sebanyak 5
kali.Terdapat dua operasi perulangan di dalam program tersebut.Jika kondisi
benar makan akan dilanjutkan ke baris selanjutnya(bertambah satu).Baris kedua
otomatis nilai baris akan menjadi 2 dan program itu akan berjalan terus sampai
batas kondisi yang ditentukan yaitu 5 baris dan 4 kolom.Lalu setelah data telah
diinputkan maka hasil tersebut akan muncul matriks yang sesuai dari hasil input
tersebut dan berbentuk 5 baris dan 4 kolom.
Latihan Praktikum III
Pemrograman C++
Output Program :
Algoritma :
1. Start
2. Deklarasi variabel
char kalimat[100]
int hitung=0, i;
3. Tampilkan kalimat yang sudah ada
write(Saya adalah anak UM Teknik Elektro PTI 2015);
4. Proses
for (i=0;kalimat[i]!='0';i++)
hitung++;
5. Tampilkan hasil dari penhitungan karakter dari kalimat
write(“Kalimat %s mempunyai %i huruf” , kalimat ,
hitung);
write(“dan disimpan dalam %i bytes\n” , hitung+1)
6. End
Penjelasan Program :
Program di atas merupakan program sederhana, yang ditujukan untuk
menampilkan kalimat “Saya adalah anak UM Teknik Elektro PTI 2014…” dengan
menggunakan fungsi for. Program di atas dimulai dengan mendeklarasikan
variabel i dan hitung bernilai 0 bertipe data integer serta array bernama kalimat
berisi “saya adalah anakUM Teknik Elektro PTI C 2014” yang bertipe data char.
Setelah itu program akan melakukan penghitungan jumlah karakter pada isi data
array dengan menggunakan perulangan. Konsep penghitungannya dengan
memindai satu per satu karakter dan setiap pemindaian akan menambahkan nilai 1
pada variabel hitung sehingga setelah selesai pemindaian akan mendapat jumlah
keseluruhan karakter. Setelah itu program akan menampilkan jumlah karakter dan
byte data dengan formula jumlah karakter +1
Latihan Praktikum IV
Pemrograman C++
#include <stdio.h>
#include <conio.h>
int main()
{
int i,s; char h=64, nama[5][4][20] =
{
"AC Milan","Barcelona","Porto","Monaco",
"Liverpool","Real Madrid","CSK
Moskow","PSG","Inter
Milan","Arsenal","Atletico Madrid","Ajax",
"As Roma","Manchester
United","Dortmund","Valencia",
"Manchester City","Bayern
Munich","Napoli","Villareal"
};
printf("Liga Champions : \n\n");
for(i=0; i<5; i++)
{
++h;
printf("Grup %c \n", h);
for(s=0; s<4; s++)
{
printf(" %d. %s \n", s+1,
nama[i][s]);
}
printf("\n");
}
getch();
}
Output Program :
Algoritma :
1. Start
2. Deklarasi variabel
int i ,s
char h=64 , nama[5][4][20]
3. Daftar tim yang akan masuk dalam grup
4. Menentukan grup yang akan diisi oleh tim
for (i=0; i<5; i++)
for (s=0; s<4; s++)
5. Mencetak hasil dari grup liga champions
printf ("Grup %c \n", h);
printf (" %d. %s \n", s+1, nama[i][s]);
6. End
Penjelasan Program :
Program diatas adalah membuat daftar grup Liga Champions dari tim yang ada.
Program di atas dimulai dengan mendeklarasikan array “nama” yang bertipe data
char dengan jumlah baris=5, kolom=4,dan panjang isi data=20
karakter. Menggunakan 5 baris karena ada 5 group, menggunakan 4kolom karena
setiap group terdiri dari 4 tim, 20 berarti panjang karakter setiap data.Kemudian
mengisi array “nama” dengan nama-nama tim sepak bola yang sudah
dikelompokkanmenurut grupnya masing-masing. Kemudian, program akan
menampilkan seluruh isi data dalam array “nama” dengan menggunakan 2
kali perulangan. Perulangan yang pertama digunakan untuk menentukan indeks
baris pada array, perulangan ini dilakukan sebanyak 5 kali karena jumlah baris
pada array ada 5. Perulangan kedua digunakan untuk menentukan indeks kolom
pada array, perulangan ini dilakukan sebanyak 4 kali karena jumlah kolom pada
array ada 4. Pemanggilan isi array menggunakan sintak “nama[i][s]“.Variabel i
untuk menentukan baris dan variabel s untuk menentukan kolom.
Tugas Praktikum I
Pemrograman C++
#include <conio.h>
#include <iostream.h>
#include <string.h>
int main()
{
char word[20];
cout<<"====================================\n";
cout<<" Membalik Kata \n";
cout<<"====================================\n";
cout<<"\nMasukkan Kata : ";
cin.getline(word, sizeof(word));
cout<<"\nHasil : ";
for(int i=strlen(word)-1; i>=0; i--)
{
cout<<word[i];
}
cout<<"\n";
getch();
}
Output Program :
Algoritma :
1. Start
2. Deklarasi variabel
char word[200]
3. Input data atau kata
write (“Masukkan Kata :”);
read (getline(word, sizeof(word)));
4. Proses data atau kata
for (int i=strlen(word)-1; i>=0; i--)
5. Tampilkan hasil proses kebalikan data atau kata
write (“Hasil :”);
write (word[i]);
6. Selesai
Penjelasan Program :
Program diatas adalah membuat program membalikkan data atau kata.Pertama,
mendeklarasikan tipe data char yang berisi 200 huruf, kemudian kata atau data
yang sudah diinputkan makan akan diproses dengan perulangan, yaitu perulangan
yang mengakibatkan karakter terakhir ditempatkan disposisi terdepan kata
sehingga tulisan dikatakan terbalik.Dan keseluruhan kata atau data akan dicetak
secara terbalik.
Tugas Praktikum II
Pemrograman C++
#include <iostream.h>
#include <conio.h>
int main()
{
int w,
sheet[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};
cout<<"===================================\n";
cout<<" DAFTAR HARGA FOTOCOPY \n";
cout<<"===================================\n";
cout<<" Jumlah (/lbr.) | Harga(Rp.)\t \n";
cout<<"===================================\n";
for(w=0;w<100;w++)
{
cout<<"|";
cout<<"\t"<<sheet[w];
cout<<"\t|";
cout<<"\t"<<sheet[w]*80;
cout<<"\t|";
cout<<endl;
cout<<"------------------------\n";
}
}
Output Program :
Algoritma :
1.START
2.Deklarasi variabel
int w,
sheet[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,4
3,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,8
6,87,88,89,90,91,92,93,94,95,96,97,98,99,100};
3.Proses data
for (w=0;w<100;w++)
4.Menampilkan hasil dari proses data
write ("\t"<<sheet[w]);
write (\t"<<sheet[w]*80;)
5.END
Penjelasan Program :
Tugas Rumah I
Pemrograman C++
#include <iostream.h>
#include <conio.h>
#include <string.h>
int main()
{
char word[100];
int vocal=0,konsonan=0,jml=0;
cout<<"Masukkan Kata :";cin>>word;
for (int i=0;word[i];i++)
{
jml+=1;
}
for (int a=0;a<jml;a++)
{
if(word[a]=='a' || word[a]=='i' || word[a]=='u' ||
word[a]=='e' || word[a]=='o' || word[a]=='A' ||
word[a]=='I' || word[a]=='U' || word[a]=='E' ||
word[a]=='O')
{
vocal+=1;
}
else
{
konsonan+=1;
}
}
cout<<"Jumlah Huruf Vokal :"<<vocal<<endl;
cout<<"Jumlah Huruf Konsonan :"<<konsonan<<endl;
}
Output Program :
Algoritma :
1.START
2.Deklarasi variabel
char word [100]
int vocal=0,konsonan=0,jml=0
3.Tentukan nilai saldo = 10.000
4.Proses scanning data atau kata
5.Jika ada huruf vokal maka akan ditambah 1 pada tampilan hasil huruf vokal
6.Jika ada huruf konsonan maka akan ditambah 1 pada tampilan hasil huruf
konsonan
7. Tampilan hasil jumlah huruf vokal dan konsonan
8.END
Penjelasan Program :
Program ini menjelaskan tentang menganalisa berapa jumlah huruf vokal dan
jumlah huruf konsonan yang terdapat dalam kata yang kita inputkan. Dimulai
dengan mendeklarasikan variabel char word[100],int vocal=0, int konsonan=0, int
jml=0 dan masing-masing bernilai awal 0. Kemudian, kita masukkan sebuah kata.
Lalu, program akan menghitung jumlah karakter pada kata hasil inputan kita.
Penghitungan karakter didalam program ini adalah dengan melakukan pemindaian
setiap huruf pada string dengan menggunakan perulangan, setiap perulangan akan
menambahkan nilai +1 pada variabel jumlah sehingga di akhir perulangan akan
didapat jumlah keseluruhan karakter atau hasil akhir setelah kita inputkan kata.
Setelah menghitung karakter, program akan
melakukan pemindaian kembali setiap huruf pada string menggunakan perulangan
. Setiap perulangan akanmengecek apakah huruf kata yang kita inputkan tersebut
mengandung huruf vokal (a, i, u, e,
o), jika benar maka akan menambahkan nilai +1 pada variabel vokal, jika salah m
aka akan menambahkan nilai +1 pada variabel konsonan. Diakhir program akan
menampilkan jumlah huruf vokal dan jumlah konsonan.
Tugas Rumah II
Pemrograman C++
#include <iostream.h>
int main()
{
int p[4]={1,1,0,0}, q[4]={1,0,1,0};
cout<<"-----------------------------------------------------
---------------\n";
cout<<"| P | Q | P AND Q | P OR Q | NOT P | P XOR Q |\n";
cout<<"-----------------------------------------------------
---------------\n";
for(int w=0;w<4;w++)
{
cout<<"| "<<p[w]<<" | "<<q[w]<<" | "<<(p[w] &&
q[w])<<" | "<<(p[w] || q[w])<<" |
"<<!p[w]<<" | "<<(p[w] ^ q[w])<<" |\n";
}
cout<<"-----------------------------------------------------
---------------\n";
}
Output Program :
Algoritma :
1.START
2.Deklarasi variabel
int p[4]={1,1,0,0},q[4]={1,0,1,0};
3.Proses hitung p dan q
4.Proses hitung p AND q
write ( ( p[w] && q[w] ) )
5.Proses hitung p OR q
write ( ( p[w] || q[w] ) )
6.Proses hitung NOT p
write ( !p[w] )
7.Proses hitung p XOR q
write (p[w] ^ q[w])
8.Tampilan tabel logika (kebenaran)
9.END
Penjelasan Program :
Program ini menjelaskan tentang nilai P dan Q dengan dimulai mendeklarasikan
array p berisi ( 1 , 1 , 0 , 0 ) dan q berisi ( 1 , 0 , 1 , 0 ) dengan masing-
masing berjumlah 4 data.Kemudian kita masukkan rumus Logika untuk p AND q
, p OR q , NOT p , p XOR q sehingga muncul tampilan program yaitu tabel
Logika (kebenaran). Selesai
Tugas Rumah III
Pemrograman C++
#include<iostream.h>
#include<conio.h>
#include<iomanip.h>
int main()
{
int in,b1=1,b2=1,h,w;
cout<<"Masukkan Angka: ";cin>>in;
cout<<"\nBilangan Fibonacci: \n"<<b1;
for(w=1;w<=in-2;w++)
{
cout<<setw(3)<<b2;
h=b1+b2; b1=b2; b2=h;
}
cout<<setw(3)<<h;
getch();
}
Output Program :
Algoritma :
1.START
2.Deklarasi variabel
int in, b1=1, b2=1, h, w;
3.Memasukan data/angka
write (“Masukkan Angka :”);
read (in)
4.Proses data
for (w=1;w<=Ni-2;w++)
h=b1+b2;
b1=b2;
b2=h;
5.Tampilkan hasil data
write ( “Bilangan Fibonacci :”<<b1);
write (setw(3)<<b2);
write (set(3)<<h);
6.END
Penjelasan Program :
Program diatas merupakan program yang digunakan untuk menghitung bilangan
fibonacci,Pertama pengguna harus mamasukkan nilai berupa angka untuk
dijadikan deret ke n dari suatu bilangan deret fibonaci. Deret fibonacci sendiri
mempunyai rumus seperti yang sudah dijelaskan, kemudian setelah didapatkan
deret fibonacinya dari deret ke n, maka misalnya kita masukkan input 9 maka
deret yang dihasilkan 1 1 2 3 5 8 13 21 34 dengan suku ke n(9)adalah 34. Selesai
Tugas Rumah III
Pemrograman C++
#include <iostream.h>
int main()
{
int a,w,kkm,remidi=0;
cout<<"Masukkan Jumlah Siswa : ";
cin>>w;
int nilai[w];
for(a=0;a<w;a++)
{
cout<<"\t Nilai siswa ke-"<<a+1<<" : ";
cin>>nilai[a];
}
cout<<"Nilai siswa yang diinput adalah :"<<endl;
for(a=0;a<w;a++)
{
cout<<nilai[a]<<"\t";
}
cout<<"\n Masukkan nilai KKM : "; cin>>kkm;
cout<<"============================================="<<endl;
for(a=0;a<w;a++)
{
if(nilai[a]<kkm)
{
remidi+=1;
}
} cout<<"Jumlah Siswa yang remidi adalah : "<<remidi;
}
Output Program :
Algoritma :
1.START
2.Deklarasi variabel
int a,w,kkm,remidi=0;
int nilai[w];
3.Memasukan jumlah siswa
4.Memberikan nilai siswa sesuai jumlah siswa yang yang ditentukan
5.Masukkan nilai KKM sebagai acuan bahwa siswa memperoleh remisi atau tidak
6.Tampilkan jumlah siswa yang remisi
7.END
Penjelasan Program :
Program diatas merupakan program yang digunakan untuk memasukkan nilai
siswa dan mengetahui apakah siswa tersebut remidi apa tidak dalam suatu
pelajaran. Pertama pengguna menginputkan nilai masing masing siswa mulai dari
siswa ke 1 sampai siswa terakhir sesuai jumlah yang kita inputkan tadi, kemudian
oleh program data tersebut didaftarkan kedalam bentuk array dimensi 1 (hanya
memiliki ukuran untuk baris), lalu pengguna diminta untuk memasukkan nilai
KKM yang akan dijadikan acuan standar remidi atau tidaknya. Apabila nilai siswa
diatas nilai KKM maka siswa idak remidi. Sebaliknya apabila nilai kurang dari
kkm maka siswa tersebut remidi.
KESIMPULAN
Array merupakan sebuah variabel yang dapat menyimpan lebih dari satu
nilai yang memiliki tipe data sama. Hal ini berbeda dengan variabel biasa
yang hanya mampu menampung satu buah nilai. Setiap nilai yang
disimpan di dalam array disebut dengan elemen array, sedangkan nilai urut
yang digunakan untuk mengakses elemennya disebut dengan indeks array.
Array merupakan kumpulan dari nilai-nilai data yang bertipe sama dalam
urutan tertentu yang menggunakan nama yang sama. Letak atau posisi dari
elemen array ditunjukan oleh suatu index. Dailihat dari dimensinya array
dapat dibagi menjadi array dimensi satu, array dimensi dua, dan array
multi-dimensi.
DAFTAR RUJUKAN