Anda di halaman 1dari 40

LAPORAN PRAKTIKUM VI

ARRAY (LARIK)

Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman Komputer
Dibimbing oleh Bapak Wahyu Sakti G.I







Oleh:
Ika Nurul Isna Fibrianti
140533602319
S1 PTI14 OFF A


UNIVERSITAS NEGERI MALANG
FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA
SEPTEMBER 2014
ARRAY

Tujuan
Setelah mempelajari bab ini diharapkan 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. Subscript dari array selalu dimulai dari nol.
Beberapa operasi yang biasa dilakukan pada array :
Memperoleh bilangan terbesar
Mencari suatu data ada array
Mengurutkan data

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]
Nilai[0] Nilai[1] Nilai[2] Nilai[3]
70 80 82 60

2. ARRAY DIMENSI DUA
Array dua dimensi merupakan array yang terdiri dari m buah baris dan n buah kolom.
Bentuknya dapat berupa matriks atau table.
Bentuk umum :
Tipenama_array[baris][kolom];

Contoh:
Indeks pertama 0 1 2 Indeks kedua
0 80 540 1032
1 15 83 301
2 8 12 15
3 10 129 257
Int data_lulus[4][3];
Cara akses :
Data_lulus[0][1]=540
Untuk mengisi dan menampilkan isi elemen array ada dua cara yaitu :
a. Row Major Order (secara baris per baris)
b. Colomn Major Order (secara kolom per kolom)

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 :
Tipenma_var[ukuran1][ukuran2][ukuranN];
Contoh :
Intdata_huruf[2][8][8];
Inisialisasi :
Int data_huruf[2][8][8] :
{ { { 0, 1, 1, 1, 1, 1, 0, 0 },
{ 0, 1, 0, 0, 0, 1, 0, 0 },
{ 0, 1, 0, 0, 0, 1, 0, 0 },
{ 1, 1, 1, 1, 1, 1, 1, 0 },
{ 1, 1, 0, 0, 0, 0, 1, 0 },
{ 1, 1, 0, 0, 0, 0, 1, 0 },
{ 1, 1, 0, 0, 0, 0, 1, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0 },
},
{ { 1, 1, 1, 1, 1, 1, 0, 0 },
{ 1, 0, 0, 0, 0, 1, 0, 0 },
{ 1, 0, 0, 0, 0, 1, 0, 0 },
{ 1, 1, 1, 1, 1, 1, 1, 0 },
{ 1, 1, 0, 0, 0, 0, 1, 0 },
{ 1, 1, 0, 0, 0, 0, 1, 0 },
{ 1, 1, 1, 1, 1, 1, 1, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0 },
} } ;

Selain tiga jenis array di atas, terdapat array tak beraturan (ukuran array tidak dituliskan).
Contoh inisialisasi :
Int skala[] = {1,2,4,6,8};

Char konversi[][2]={2,T,
E,M,
I,V,
O,S,
U,J,
};
Array juga bisa digunakan sebagai parameter :
Void pemasukan_data(floatx[],int*pjumlah)

Pemasukan_data(data,&jum_data);



Latihan Praktikum 1
Pemrograman C++

Nama Program : Program Inputan Nilai Mahasiswa
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Script program :

Syntax yang salah :
#include"stdio.h"
#include"conio.h"

void main();
{
int index, nilai [10];
clrscr();

//input nilai mahasiswa
printf("Input nilai 10 mahasiswa: ");

for(index=0;index<10;index+)
{
printf("Mahasiswa %c:", index+1);
scanf("%c",&nilai [index]);
}
cout<<endl;

//tampilan nilai mahasiswa
printf("Nilai mahasiswa yang telah diinput: ");

for(index=0; index<10; index++)
{
printf("%5.0i", nilai[index]);
}
getch();
}

Syntax yang benar :
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
int index, nilai [10];

//input nilai mahasiswa
printf("Input nilai 10 mahasiswa:\n");
cout<<endl;
for(index=0;index<10;index++)
{
printf("Mahasiswa %i:", index+1);
scanf("%i",&nilai [index]);
}
cout<<endl;

//tampilan nilai mahasiswa
printf("Nilai mahasiswa yang telah diinput: ");

for(index=0; index<10; index++)
{
printf("%3.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 :


Algoritma :
1. Mulai
2. Deklarasi variable
3. Definisi array nilai [10]
4. Input nilai mahasiswa menggunakan perulangan for(index=0;index<10;index++)
5. Output nilai mahasiswa menggunakan perulangan for(index=0; index<10;
index++)
6. Selesai

Flowchart :





















MULAI
Output :
Nilai 10 mahasiswa
yang sudah diinputkan
Nilai [index]
SELESAI
for(index=0;index<10;index++)
for(index=0;
index<10; index++)
array
Nilai [10]
Input nilai
mahasiswa
(1-10) %i
Penjelasan Program : Latihan praktikum pertama dalam bab array ini adalah
membuat program input 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
("%3.0i",nilai[index]) memanggil data bertipe interger
yaitu array nilai[index] dengan 3.0 (spasi untuk
memisahkan setiap nilai index).




Latihan Praktikum II
Pemrograman C++

Nama Program : Program Inputan Nilai Matriks
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Script program :
Syntax yang salah :
#include "stdio.h"
#include "conio.h"

void main();
{
int baris,kolom,matriks [3][4];
clrscr ();
//input elememan 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<3;baris++)
{
for(kolom=0;kolom<4;kolom++)
{
printf("%i", &matriks [baris][kolom]);
}

printf("\n");
}
getch();
}


Syntax yang benar :
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
main()
{
int baris,kolom,matriks [5][4];

//input elememan 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("%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 :
















Algoritma :
1. Mulai
2. Deklarasi variable baris dan kolom
3. Deklarasi array matriks [5][4]
4. Input nilai matriks mengggunakan perulangan for (baris=0; baris<5; baris++) {
for (kolom=0; kolom<4; kolom++)
5. Menampilkan atau output nilai matriks menggunakan perulangan yang sama dengan
inputan tetapi output didalamnya memanggil array yang nilainya telah diinputkan.
6. Selesai


Flowchart :



























Output :
Nilai matrik yang sudah
diinputkan,dengan
memanggil array
matriks[baris][kolom]
SELESAI
for (baris=0;
baris<5; baris++)

Matriks
[3][4]
Input nilai
matriks
[%i][%i] :
MULAI
for (kolom=0;
kolom<4; kolom++)
for (baris=0;
baris<5; baris++)

for (kolom=0;
kolom<4; kolom++)
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 : Program Penghitung Jumlah Karakter Inputan
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Script program :
Syntax yang salah :
#include stdio.h

int main()
{
char kalimat[]="Saya adalah anak UM Teknik Elektro PTI 2014";
int hitung=0,i;
clrscr();
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);

getch();
}

Syntax yang benar :
#include<stdio.h>
#include<conio.h>

int main()
{
char kalimat[]="Saya adalah anak UM Teknik Elektro PTI 2014";
int hitung=0,i;
for (i=0;kalimat[i] !='\0';i++)
{
hitung++;
}
printf("Kalimat : %s \n",kalimat);
printf("mempunyai %i huruf",hitung);
printf(" dan simpan dalam %i bytes \n",hitung+1);

getch();
}


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 :






Algoritma :
1. Mulai
2. Definisi array kalimat
3. Deklarasi varibel i dan hitung yang telah didefinisikan hitung=0
4. Prose perulangan : Menghitung karakter
for (i=0;kalimat[i] !='\0';i++)
{
hitung++;
}
5. Output Jumlah karakter memanggil varibel kalimat dan varibel hitung
6. Selesai


Flowchart :




















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 2014"
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++.
Output :
Kalimat %s (variabel kalimat)
mempunyai %i huruf (variabel
hitung)
Dan simpan dalam %i bytes
(variable hitung+1)
Char kalimat[]=..
Int hitung=0
for (i=0;kalimat[i]
!='\0';i++)
MULAI
Hitung++
SELESAI
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 : Visual C++ 6.0
Script program :
Syntax yang salah :
#include<stdio.h>
#include<conio.h>
main()
{
;
char h=64, nama [0][0][0] =
{
"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","Vilareal"
};
printf("Liga Champions :\n\n");
for(i=0; i<5; i++)
{
++h;
printf("Grub %c \n",h);

for(s=0;s<4;s++)
{
printf("%d. %s \n",s+1, nama [i][s]);
}
printf("\n");
}
getch();
}
Syntax yang benar :
#include<stdio.h>
#include<conio.h>
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","Atletico Madrid","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("Grub %c \n",h);

for(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 :













Algoritma :
1. Mulai
2. Deklarasi variable
3. Deklarasi array
4. Inisialisasi array
5. Proses perulangan
(For i=0; i<5; i++) perulangan untuk kalimat grub-ke
(for=s=0;s<4;s++) perulangan untuk nama nama club yang masuk pada setiap
tim.
6. Output
7. Selesai


Flowchart :























MULAI
Output :
Grub % c [a/b/c/d/e]
SELESAI
for(i=0; i<5; i++)
for(s=0;s<4;s++)
char =64;
char*a [5][4]=
{
{"ACMilan",},
{}
};
Output :
nama klub ([i][s])
Penjelasan Program : Latihan praktikum 4, 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 I
Pemrograman C++

Tugas : Program Pembalik Kata
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Script program :

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

main()

{
using namespace std;
char a[30];
int b;
cout<<"\n PROGRAM PEMBALIK KATA\n";
cout<<"\n=======================================\n";
cout<<"Masukkan kata : ";
cin.getline(a,30);
b=strlen(a);
cout<<"Kebalikan Kata :";
for(int i=b;i>=0;i--)
{
cout<<a[i];
}
getch();
}


Output Program :







Algoritma :
1. Mulai
2. Deklarasi array (char a[30])
3. Deklarasi variable b
4. Input kata
5. Mengubah tipe data char(a) menjadi tipe data int(b) menggunakan strlen
6. Proses perulangan
7. Output hasil
8. Selesai

Flowchart :

















Input :
Kata(a)
MULAI
For (int i=b;i>=0;i--)
Output :
a[i]
SELESAI
b = strlen(a)

array a[30])
Penjelasan Program : Tugas praktikum yang pertama ini membuat program yang
membalik kata dari inputan kata yang kita masukkan. Penjelasannya
sebagai berikut :
Program ini menggunakan header <iostream.h> karena objek yang
digunakan dalam program diatas adalah cout dan cin.dan untuk header
<conio.h> digunakan untuk fungsi getch.
Using namespace digunakan untuk varibel char(string) agar karakter
yang di inputkan dapat berupa karakter spasi.
Deklarasi array char a[30] berarti kata yang diinputkan mempunyai
batasan hingga 30 karakter.
Cin.getline(a,30) 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 i=b; i>=0 ; i--).
Variable i=b berarti nilai i sama dengan b(jumlah kata yang
diinputkan) dan i>=0 berarti jumlah kata inputan lebih besar atau sama
dengan nol maka i- - (dikurangi) .
cout<<a[i] ,maka akan menampilkan outputan berupa array a dengan
elemen i yang sudah di proses sebelumnya menggunakan perulangan
(looping).
Pernyataan akan terus diulangi hingga nilai i>=0 bernilai salah.
Dan setelah itu program berakhir.


TUGAS PRAKTIKUM II
Pemrograman C++
Tugas : Program yang menampilakan daftar harga fotocopy dari
1 100 lembar
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Script program :
#include <iostream.h>
#include <conio.h>

main()
{
int i;
charlembar[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\t\t\t DAFTAR HARGA FOTOCOPY\n\n";
cout<<"----------------------------------------------------\n";
cout<<"Lembar\t Harga\t Lembar\t Harga\t Lembar\t Harga\t
Lembar\t Harga\t Lembar\t Harga|\n";
cout<<"----------------------------------------------------\n";

for(i=1;i<=100;i++)
{

cout<<i<<"\t"<<i*80;
cout<<"\t";
}
getch();
}

Output Program :















Algoritma :
1. Mulai
2. Deklarasi variable i
3. Definisi array lembar [100] = {1,2,.,100};
4. Perulangan (looping) for(i=1;i<=100;i++)
5. Output jumlah lembar (i) dan harga(i*80)
6. Selesai

Flowchart :

















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.

Output :
Jumlah lembar (i)
Harga(i*8)
SELESAI
for(i=0;i<100;i++)
Char lembar [100] =
{1,2,3,,100};
MULAI
TUGAS RUMAH 1
Pemrograman C++

Tugas : Program Menghitung Jumlah Huruf Vokal dan Nonvokal dari
Sebuah Kata
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Identifikasi 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 DAN
NONVOKAL\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 :







Algoritma :
1. Mulai
2. Definisi array kata[50]
3. Deklarasi variable b, voc=0, nvoc=0
4. Input kata
5. Mengubah tipe data char(kata) menjadi tipe data int(b) menggunakan strlen
6. Proses perulangan for(int i=1;i<=b;i++)
7. Output jumlah huruf vokal dan nonvokal
8. Selesai


Flowchart :


















Input :
(Kata)
MULAI
For (int i=1; i<=b; i++)
Output :
Jml huruf= b
Jml voc
Jml nvoc
SELESAI
b = strlen(kata)

array kata[50]
If(kata[i]==a
(a,i,u,e,o)
voc =
voc+1
nvoc =
nvoc+1
Penjelasan Program : Tugas rumah pertama ini membuat program yang 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++

Tugas : Program Operasi logika dan bitwise dengan menggunakan
looping
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Identifikasi 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 :








Algoritma :
1. Mulai
2. Deklarasi variable
3. Definisi array table [2]={0,1};
4. Proses perulangan
5. Output
6. Selesai
Flowchart :




















Penjelasan Program : Tugas rumah yang kedua ini adalah membuat program
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.


Output :
P, q, p||q, p&&q, p!q, p^q
SELESAI
(p=1; p>=0; p--
)
Array
table[2]={0,1}
MULAI
(q=1; q>=0; q--
)
Operasi logika dan
bitwise ||,&&,!,^
TUGAS RUMAH III
Pemrograman C++

Tugas : Program Menampilkan Bilangan Fibonacci
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Identifikasi 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 :







Algoritma :
1. Mulai
2. Deklarasi variable c
3. Deklarasi varibel a=0, b=1, n, deret
4. do
5. Input jumlah bilangan Fibonacci :
6. Proses perulangan for(int i=0;i<=deret;i++) operasi kondisi if else majemuk
7. Output
8. While (c=='y' || c=='Y') untuk mengulangi program
9. Selesai

Flowchart :























Output :
b=1
SELESAI
a=0
b=1
MULAI
for(int
i=0;i<=deret;i++)
if(i==1)
Input
deret
else if(i==0)
else
Output :
a=0
Output :
n
n=b+a
a=b
b=n
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 IV
Pemrograman C++

Tugas : Program Penghitung Nilai Remidi
Bahasa Pemrogramam : C++
Compiler : Visual C++ 6.0
Identifikasi 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 :















Algoritma :
1. Mulai
2. Pendeklarasian variable
3. Definisi variabel r = 0,t = 0 dan definisi array nilai [10]
4. Input jumlah siswa
5. Perulangan pertama untuk input nilai siswa
6. Perulangan kedua untuk menampilkan semua nilai yang telah diinputkan
7. Input nilai KKM
8. Perulangan ketiga untuk menentukan jumlah siswa yang remidi dan siswa yang tidak
remidi.
9. Output
10. Selesai

Flowchart :
























else









SELESAI
for(a=0;a<n;a++)
r=0
t=0
array nilai[10]
Output :
r dan t
MULAI
Input :
n (jumlah siswa)
Input :
nilai siswa
for(a=0;a<n;a++)
Output:
Nilai siswa
Input :
Nilai KKM
for(a=0;a<n;a++)
if
("%i",nilai[a]<kkm)
r=r+1 t=t+1
Penjelasan Program : Pada tugas praktikum yang terakhir ini adalah membuat 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. 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.
2. Jika suatu array tidak didefinisikan maka secara otomatis akan member nilai awal nol
terhadap array.
3. 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. 2013. Modul 1 Pengenalan Sistem Operasi, Ide Visual C++, Dan
Algoritma Pemrograman. Malang : Universitas Negeri Malang.
2. Kadir Abdul.C++. Yogyakarta : Andi
3. Wikipedia,Bilangan Fibonacci,
(id.m.wikipedia.org /wiki/Bilangan_Fibonacci , diakses tanggal 30 September 2014)