Puji dan syukur kami panjatkan kehadirat Allah SWT karena atas
rahmat dan karunia-Nya kami dapat menyelesaikan makalah ini tepat pada waktu.
Tak lupa kami juga menghaturkan terima kasih yang sebesar-besarnya kepada
Bapak dosen kami Prof. Dr.-ing. Soewarto Hartadienata selalu mendukung
kami dalam pembelajaran Algoritma dan Pemrograman I.
Dalam makalah ini berisikan project dari mahasiswa, yang berisi Analisis
Masalah,Algoritma, Flowchart dan Uji coba project.
Akhir kata, kami berharap makalah ini dapat bermanfaat bagi para pembaca,
khususnya bagi yang akan mempelajari Algoritma dan Pemrograman I.
Penyusun
i
DAFTAR ISI
Cover
ii
BAB V Membuat Program Rerata Dan Beda Menggunakan Looping .............. 26
ii
PROJECT 01
MENGHITUNG LUAS SEGITIGA
BAB I
MENGHITUNG LUAS SEGITIGA
a. Masalah
Membuat Program Untuk Menghitung Luas Segitiga
b. Solusi
Luas Segitiga = 0.5 * Alas * Tinggi
1.2 Algoritma
a. Input
Baca Alas
Baca Tinggi
b. Proses
Luas Segitiga = 0.5 * Alas * Tinggi
c. Output
Tampil Alas,Tinggi
Tampil Luas Segitiga
1
1.3 Flowchart
2
1.4 Testing Dan Hasil Program
a. Souce code
// PROJECT : 01
// PROGRAM : MENGHITUNG LUAS SEGITIGA
// AOUTHOR : - FANI SUSANTI
// - FANY SYAFIRA NURUL KILAH
// - ELMA NOVITA DEWI
// NPM : - 0651 15102
// - 0651 15125
// - 0651 15074
// TANGGAL : 28 SEPTEMBER 2015
// MENGAWALI PROGRAM
main()
{
3
cout<<"INPUT FILE TIDAK BISA DIBUKA,ERROR,PROGRAM
DIHENTIKAN";
exit(-1);
}
else
// MEMPROSES DATA
luas=0.5*alas*tinggi;
4
// MENUTUP INPUT FILE DAN OUTPUT FILE
file_in.close();
file_out.close();
// MENGAKHIRI PROGRAM
cout<<"Program Selesai Di Eksekusi";
cout<<endl;
cout<<"Silahkan Hasilnya dilihat pada 'OUTPUT FILE'";
cout<<endl;
}
b. Hasil program
Gambar Input
5
Gambar Hasil
6
PROJECT 02
MENGHITUNG KELILING PERSEGI LIMA
BAB II
MENGHITUNG KELILING PERSEGI LIMA
a. Masalah
Membuat Program Untuk Menghitung Keliling Persegi Lima
b. Solusi
Keliling Persegi Lima = Sisi1 + Sisi2 + ….. + Sisi5
2.2 Algoritma
a. Input
Baca Sisi1, Sisi2,……., Sisi5
b. Proses
Keliling Persegi Lima = Sisi1 + Sisi2 + …… + Sisi5
c. Output
Tampil Sisi1, Sisi2,……, Sisi5
Tampil Hasil Keliling Persegi Lima
7
2.3 Flowchart
8
2.4 Testing Dan Hasil Program
a. Souce code
// PROJECT : 02
// PROGRAM : MENGHITUNG KELILING PERSEGI LIMA
// AUTHOR : - FANI SUSANTI
// - FANY SYAFIRA NURUL KILAH
// - ELMA NOVITA DEWI
// NPM : - 0651 15102
// - 0651 15125
// - 0651 15074
//TANGGAL : 01 OKTOBER 2015
// MENGAWALI PROGRAM
main()
{
9
// MEMBACA DATA FILE PADA 'INPUT FILE'
{
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
sisi1=atof(str);
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
sisi2=atof(str);
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
sisi3=atof(str);
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
sisi4=atof(str);
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
sisi5=atof(str);
}
// MEMPROSES DATA
keliling = sisi1 + sisi2 + sisi3 + sisi4 + sisi5;
10
file_out<<"Sisi 1 ="<<sisi1<<endl;
file_out<<"Sisi 2 ="<<sisi2<<endl;
file_out<<"Sisi 3 ="<<sisi3<<endl;
file_out<<"Sisi 4 ="<<sisi4<<endl;
file_out<<"Sisi 5 ="<<sisi5<<endl;
file_out<<"Keliling Persegi Lima="<<keliling<<endl;
}
// MENGAKHIRI PROGRAM
cout<<"Program selesai dieksekusi";
cout<<endl;
cout<<"Silahkan hasilnya dilihat pada 'OUTPUT FILE'";
cout<<endl;
}
b. Hasil Program
Gambar Input
11
Gambar Hasil
12
PROJECT 03
MENGHITUNG RATA-RATA
BAB III
RATA-RATA
3.1 Masalah
Jumlah=Bilangan1+Bilangan2+……+Bilangan5
Rerata=Jumlah/5
3.3 Algoritma
a. Input
b. Proses
Jumlah=Bilangan1+Bilangan2+……+Bilangan5
Rerata=Jumlah/5
c. Output
Tampil Rerata
13
3.4 Flowchart
14
3.5 Testing dan Hasil Program
a. Source code
// PROJECT :03
// PROGRAM :MENGHITUNG RATA-RATA
// AUTHOR :-FANI SUSANTI
// :-FANY SYAFIRA NURUL KILAH
// :-ELMA NOVITA DEWI
// NPM :-0651 15 102
// :-0651 15 125
// :-0651 15 074
// TANGGAL : 07 OKTOBER 2015
// MEMASANG HEADER/LIBRARY
#include<iostream>
#include<fstream>
#include<stdio.h>
#include<stdlib.h>
15
// MEMBACA DATA PADA 'FILE INPUT'
{
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
bilangan1=atof(str);
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
bilangan2=atof(str);
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
bilangan3=atof(str);
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
bilangan4=atof(str);
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
bilangan5=atof(str);
// MEMPROSES DATA
jumlah=bilangan1+bilangan2+bilangan3+bilangan4+bilangan5;
rerata=jumlah/5;
else
16
// MENULIS HASIL PADA 'OUTPUT FILE'
{
file_out<<"Program selesai dieksekusi"<<endl;
file_out<<"Hasil Eksekusi Program adalah sebagai berikut:"<<endl;
file_out<<"_________________________________"<<endl;
file_out<<endl;
file_out<<"Bilangan 1 ="<<bilangan1<<endl;
file_out<<"Bilangan 2 ="<<bilangan2<<endl;
file_out<<"Bilangan 3 ="<<bilangan3<<endl;
file_out<<"Bilangan 4 ="<<bilangan4<<endl;
file_out<<"Bilangan 5 ="<<bilangan5<<endl;
file_out<<"jumlah ="<<jumlah<<endl;
file_out<<"rata-rata ="<<rerata<<endl;
}
// MENGAKHIRI PROGRAM
cout<<"Program selesai dieksekusi";
cout<<endl;
cout<<"Silahkan hasilnya dilihat pada 'OUTPUT FILE'";
cout<<endl;
b. Hasil Program
Gambar Input
17
Gambar Hasil Program
18
PROJECT 04
MENGHITUNG NILAI RERATA MENGGUNAKAN LOOPING
BAB IV
MENGHITUNG NILAI RERATA MENGGUNAKAN LOOPING
19
4.3 Flowchart
20
4.4 Testing Program Dan Hasil Program
a. Souce Code
// PROJECT :04
// PROGRAM :MENGHITUNG NILAI RERATA MENGGUNAKAN LOOPING
// AUTHOR :-FANI SUSANTI
// :-FANI SYAFIRA NURUL KILAH
// :-ELMA NOVITA DEWI
// NPM :-0651 15 102
// :-0651 15 125
// :-0651 15 074
// TANGGAL : 17 OKTOBER 2015
// MEMPROSES DATA
while (j<=n)
{
jumlah=jumlah+bilangan[j];
j=j+1;
}
rerata=jumlah/m;
22
// MEMBUKA 'OUTPUT FILE'
ofstream file_out;
file_out.open("04_output.txt");
while(k<=p)
{
file_out<<"Bilangan-"<<k<<"="<<bilangan[k]<<endl;
k=k+1;
}
file_out<<endl;
file_out<<"Jumlah ="<<jumlah<<endl;
file_out<<"Rerata ="<<rerata<<endl;
file_out<<endl;
}
b. Hasil Program
Gambar Input
24
Gambar Hasil Program
25
PROJECT 05
MEMBUAT PROGRAM RERATA DAN BEDA
MENGGUNAKAN LOOPING
BAB V
MEMBUAT PROGRAM RERATA DAN BEDA
MENGGUNAKAN LOOPING
5.2 Algoritma
a. Input
26
5.3 Flowchart
27
5.4 Testing Program Dan Hasil
a. Source Code
//project :05
//program : membuat program rerata dan beda menggunakan looping
//author : - Fani Susanti
// - Fany Syarifa Nurul kilah
// - Elma Novita Dewi
//npm : - 0651 15 102
// - 0651 15 125
// - 0651 15 074
//tanggal : 24 oktober 2015
//mengawali program
main()
{
//mendeklarasikan variabel dan/atau konstanta
char str[20];
int i,m,j,n,k,p,r,s,t,u,y,z;
float bilangan[100],beda[100],jumlah,rerata;
28
k=1;
p=100;
r=1;
s=100;
t=1;
u=100;
y=1;
z=100;
jumlah=0.0;
rerata=0.0;
else
// menginput data
{
while(i<=m)
{
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
bilangan[i]=atof(str);
i=i+1;
}
29
while(r<=s)
{
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
beda[r]=atof(str);
r=r+1;
}
//memproses data
while(j<=n)
{
jumlah=jumlah+bilangan[j];
j=j+1;
}
rerata=jumlah/m;
while(y<=z)
{
beda[y]=abs(rerata-bilangan[y]);
y=y+1;
}
30
cout<<"output file tidak bisa dibuka,error,program dihentikan";
exit(-1);
}
else
while(k<=p)
{
file_out<<"bilangan -"<<k<<"="<<bilangan[k]<<endl;
k=k+1;
}
while(t<=u)
{
file_out<<"beda -"<<t<<"="<<beda[t]<<endl;
t=t+1;
}
file_out<<"Jumlah ="<<jumlah<<endl;
file_out<<"Rerata ="<<rerata<<endl;
file_out<<endl;
}
31
//mengakhiri program
cout<<"Program selesai dieksekusi";
cout<<endl;
cout<<"Silahkan lihat hasilnya pada output file";
cout<<endl;
}
b. Hasil Program
Gambar Input
32
Gambar Hasil Program
33
PROJECT 06
MENCARI NILAI TERBESAR DAN NILAI TERKECIL
BAB VI
MENCARI NILAI TERBESAR DAN NILAI TERKECIL
5.2 Algoritma
a. Input
Baca Bilangan 1,Bilangan 2,……,Bilangan 100
b. Proses
Nilai Terbesar
Nilai Terkecil
c. Output
Tampil Bilangan 1, Bilangan 2,…..,Bilangan 100
Tampil Nilai Terbesar
Tampil Nilai Terkecil
34
5.3 Flowchart
35
5.4 Testing Program Dan Hasil Program
a. Source Code
//project :06
//program : memcari nilai terkecil dan nilai terbesar
//author : -Fani Susanti
// -Fany Syafira Nurul Kilah
// -Elma Novita Dewi
//NPM : -0651 15 102
// -0651 15 125
// -0651 15 074
//tanggal : 31 Oktober 2015
//mengawali program
main()
{
//mendeklarasikan variabel dan/atau konstanta
char str[20];
int i,m,j,n,k,p;
float bilangan[100],max,min;
36
max=0.0;
min=0.0;
//menginput data
{
while(i<=m)
{
file_in.getline(str,20,'\n');
file_in.getline(str,20,'\n');
bilangan[i]=atof(str);
i=i+1;
}
}
//memproses data
while(j<=n){
if(bilangan[j]<min){
min=bilangan[j];
} else if(bilangan[j]>max){
max=bilangan[j];
}
j=j+1;
}
37
//membuka output file
ofstream file_out;
file_out.open("06_output.txt");
while(k<=p)
{
file_out<<"Bilangan -"<<k<<"="<<bilangan[k]<<endl;
k=k+1;
}
38
//mengakhiri program
cout<<"Program selesai dielsekusi";
cout<<endl;
cout<<"Silahkan lihat hasilnya pada 'Output File'";
cout<<endl;
b. Hasil Program
Input
39
Hasil Program
40
BAB VII
MATERI TENTANG POINTER
7.1 POINTER
Pointer adalah variable yang berisi alamat memori variable lain dan sevara tidak langsung
menunjuk ke variable tersebut.
Analoginya – sebagai contoh – Andi berteman dengan Budi, lalu anda ingin mengetahui
jumlah keluarga Budi untuk keperluan sensus penduduk. Anda tidak mengetahui alamat Budi,
tetapi anda mengenal Andi. Untuk mencari jumlah keluarga Budi, maka pertama-tama anda
pergi kerumah Andi, misalnya dirumah no 8321. Sesampai di Andi, Andi membaritahukan
kepada anda bahwa alamat Budi ada pada alamat 9821. Kemudian anda pergi ke rumah Budi lalu
mencatat jumlah keluarga yang dimiliki Budi yaitu lima orang ( misalkan ).
Dalam contoh diatas, Andi bertindak sebagai pointer. Andi tidak memberitahukan jumlah
keluarga Budi, tetapi Andi memberitahu alamat Budi, di alamat 9821 ( alamat Budi ) itulah anda
mengetahui jumlah keluarga Budi.
Jika alamat dari ditunjukkan dengan simbol & dan isi dari ditunjukkan dengan symbol *,
maka hubungan analogi diatas adalah:
Andi = *Andi;
41
Contoh program yang menggambarkan hal tersebut :
#include <iostream.h>
void main()
{
int *Andi; // Andi sebagai pointer
Keluarannya :
Penjelasan :
Isi alamat memori Andi adalah alamat memori Budi, yaitu 0x6da72448 ( alamat ini berbeda-
beda tergantung dari komputernya dan ditulis dalam bentuk hexadesimal). Sedangkan isi alamat
memori Budi adalah 5. Cara mengakses isi dari alamat Budi ada dua cara, yaitu mengakses
variabel Budi dan mengakses isi dari pointer Andi (*Andi). *Andi dapat juga disebut “isi dari
alamat memori yang ditunjuk oleh Andi”. Karena alamat memori yang ditunjuk oleh Andi
adalah alamat memori Budi, maka dapat dikatakan “isi dari alamat memori Budi”.
42
1. Pointer - Array
Dalam 6.1 kita telah membahas array, sekarang kita akan melihat bagaimana data disimpan
di memori dalam sebuah array.
Contoh :
#include <iostream.h>
void main()
int n;
for(n=0;n<4;n++)
cout<<”Array[“<<n<<”] = “<<array[n]<<endl;
Keluarannya :
Array[0] = 10
Menggunakan pointer = 10
Array[1] = 20
Menggunakan pointer = 20
43
Disimpan dalam 0xdb7240a
Array[2] = 30
Menggunakan pointer = 30
Array[3] = 40
Menggunakan pointer = 40
Penjelasan :
Seperti yang anda lihat, setiap array disimpan dalam 2 byte memori karena kita menggunakan
tipe data integer. Perhatikan pula penggunaan pointer dalam pengaksesan nilai setiap elemen
array dan pengaksesan alamat setiap array.
Dibawah ini adalah contoh pengaksesan memori dan isi memori dengan menggunakan cara
kedua
Contoh :
#include <iostream.h>
void main()
int n;
for(n=0;n<4;n++)
44
cout<<”Array[“<<n<<”] = “<<array[n]<<endl;
Keluarannya :
Array[0] = 10
Menggunakan pointer = 10
Array[1] = 20
Menggunakan pointer = 20
Array[2] = 30
Menggunakan pointer = 30
Array[3] = 40
Menggunakan pointer = 40
Mengapa hasil antara dua contoh diatas sama namun sintaksnya berbeda ? Karena array itu
sebenarnya telah menunjuk ke alamat memori setiap elemennya, sehingga untuk mengetahui
alamat memori setiap elemen array cukup dengan array + n dengan n bilangan bulat ( integer ).
2. Pointer - String
String merupakan bentuk khusus dari array. Oleh karena itu operasi pointer-array tidak
jauh berbeda dengan operasi pointer-string
Contoh :
45
#include <iostream.h>
void main()
{
char nama[5] = “Andi”;
char *ptr;
ptr = nama;
*(ptr+3) = „y‟;
Keluarannya :
Jadi :
Jika pointer dikirim sebagai argument, maka nilai aktualnya dapat dimodifikasi.
Contoh :
#include <iostream.h>
void main()
46
char *ptr,nama[5] = “Andi”;
ubah(ptr);
*(x+3) = „y‟;
Keluarannya :
4 Alias
Alias adalah nama lain dari suatu variable. Jika suatu perubaha terjadi pada variable alias
maka akan berpengaruh kepada variable asli dan begitu juga sebaliknya.
Contoh :
#include <iostream.h>
void main()
{
int uang =10000;
47
cout<<”Nilai duit Rp.“<<duit<<endl;
uang = 9000;
Keluarannya :
Penjelasan :
Perubahan pada uang menyebabkan perubahan pada duit karena duit memiliki alamat memori
yang sama dengan uang. Jadi jika isi dari alamat memori uang atau duit berubah, maka nilai
variable duit atau uang juga akan ikut berubah.
Seringkali kita menggunakan perintah edit file.txt pada DOS, atau perintah vi file.txt pada
Unix. Yang dimaksud dengan argumen baris perintah yaitu file.txt. Hal seperti itu dapat dibuat
dengan menggunakan C++ dengan menyertakan argumen berikut pada fungsi main()
atau
48
main(int argc, char *argv[])
return 0;
Keterangan :
#include<iostream.h>
Penjelasan :
Setelah dicompile dan di link akan muncul file tes.exe, misalkan anda simpan di d:\tes.exe
argv[0] = D:\TES.EXE
argv[1] = argument1
49
argv[2] = argument2
argv[3] = argument3
Dibawah ini diberikan contoh penggunaan argumen baris perintah yang lain, supaya anda
lebih memahami
Contoh :
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
if(argc !=2)
exit(1);
int p = atoi(argv[1]),n,i=0;
double A[100];
do
50
A[++i]=p%2;
p=p/2;
floor(p);
} while (p>1);
cout<<p;
for(n=i;n>=1;n--)
cout<<A[n];
getch();
7.3 FUNGSI
Fungsi adalah sekumpullan perintah operasi program yang dapat menerima argumen input
dan dapat memberikan hasil output yang dapat berupa nilai ataupun sebuah hasil operasi.
Nama fungis yang didefinisikan sendiri oleh pemrogram tidak boleh sama dengan nama
build-in function pada compiler C++.
Fungsi digunakan agar pemrogram dapat menghindari penulisan bagian program ( kode )
berulang-ulang, dapat menyusun kode program agar terlihat lebih rapi dan kemudahan dalam
debugging program.
51
Contoh :
// Fungsi kuadrat
return x*x;
Fungsi yang didefinisikan oleh pemrogram terdiri atas dua bagian, yaitu judul ( header ) dan
isi ( body ). Judul dari sebuah fungsi terdiri dari tipe return ( float ), nama fungsi ( kuadrat ) dan
list parameter ( float x ).
Isi dari sebuah fungsi adalah blok kode yang mengikuti judulnya. Berisi kode yang
menjalankan aksi dari fungsi, termasuk pernyataan return yang memuat nilai fungsi yang akan
dikembalikan ke yang memanggilnya, Isi dari fungsi kuadrat() adalah
return x*x;
Biasanya isi dari fungsi cukup besar. Meskipun demikian, judulnya tetap hanya berada dalam
satu baris. Isi dari sebuah fungsi dapat memanggil fungsi itu sendiri ( disebut rekursif ) atau
memanggil fungsi lainnya.
Pernyataan return dari sebuah fungsi mempunyai dua manfaat, yaitu akan mengakhiri fungsi
dan mengembalikan nilainya ke program pemanggil. Bentuk umum pernyataan return adalah :
return ekspresi;
52
Dengan ekspresi adalah sebuah ekspresi yang nilainya dinyatakan untuk sebuah variable
yang tipenya sama seperti tipe return. Terdapat juga fungsi yang tidak memberikan nilai return
atau tipe returnnya void.
Contoh :
#include <iostream.h>
void main()
char n[50];
sayHello(n);
Pengertian deklarasi fungsi berbeda dengan dengan definisi fungsi. Suatu deklarasi fungsi
adalah judul fungsi yang sederhana yang diikuti oleh tanda semicolon ( ; ). Sedangkan definisi
fungsi adalah fungsi yang lengkap, terdiri dari judul dan isinya. Suatu deklarasi fungsi disebut
juga sebagai prototype fungsi.
Suatu deklarasi fungsi seperti layaknya suatu deklarasi variabel, yang memberitahu compiler
semua informasi yang dibutuhkan untuk mengkompilasi file. Compiler tidak perlu mengetahui
bagaimana fungsi bekerja, yang perlu diketahui adalah nama fungsi, jumlah dan tipe
parameternya, dan tipe balikannya ( return ). Hal ini merupakan informasi yang dimuat secara
lengkap dalam judul fungsi.
53
Juga seperti sebuah deklarasi variabel, suatu deklarasi fungsi harus muncul diatas semua
nama fungsi yang digunakannya. Berbeda dengan definisi fungsi, yang dapat diletakkan terpisah
dari deklarasinya, dan dapat muncul dimana saja diluar fungsi main() dan biasanya dituliskan
setelah fungsi main() atau dalam file terpisah yang jika ingin digunakan tinggal menambahkan
prepocessor #include “nama_file” pada file utama.
Jika definisi fungsi diletakkan diatas fungsi main() maka deklarsi fungsi tidak diperlukan.
Variabel yang dilist dalam pemanggilan fungsi disebut parameter-parameter actual atau
argumen-argumen aktual. Sama seperti variabel lainnya dalam program utama, variabel-variabel
tersebut harus dideklarasikan sebelum digunakan dalam pemanggilan. Dalam contoh dibawah,
parameter-parameter aktualnya adalah m dan n.
Contoh :
#include <iostream.h>
#include <conio.h>
#include <math.h>
void cekInt(double);
void main()
double angka;
cekInt(angka);
54
void cekInt(double n)
if(n>1)cekInt(n-1);
else if(n<1)cekInt(-n-1);
else
Keluaran :
Bilangan bulat
Bilangan bulat
Salah satu keistimewaan C++ yang sangat bermanfaat dalam pemrograman adalah adanya
kemampuan untuk menyetel nilai default
Argumen fungsi. Argumen-argumen yang mempunyai nilai bawaan nantinya dapat tidak
disertakan di dalam pemanggilan fungsi dan dengan sendirinya C++ akan menggunakan nilai
bawaan dari argumen yang tidak disertakan.
55
Contoh :
#include <iostream.h>
#include <conio.h>
void sayHello(int);
void main()
sayHello();
Penjelasan :
Jika pada program, argumen sayHello tidak diberikan, maka program akan menampilkan
Halloo …
Sebanyak satu kali, namun jika argumen pada fungsi sayHello diberikan, misalkan sayHello(4),
maka program akan menampilkan
Halloo …
Halloo …
Halloo …
Halloo …
56
Itulah yang disebut dengan nilai default pada fungsi
Untuk dapat menggunakan fungsi-fungsi tersebut anda harus meng-include file dimana fungsi
tersebut didefinisikan
Misalkan :
57
PROJECT 08
MEMBUAT PROGRAM DENGAN MENGGUNAKAN SUB PROGRAM
(FUNGSI) UNTUK MENGHITUNG JUMLAH DENGAN
MENGGUNAKAN FUNGSI INPUT,FUNGSI
JUMLAH DAN FUNGSI OUTPUT
BAB VIII
MEMBUAT PROGRAM DENGAN MENGGUNAKAN
SUB PROGRAM (FUNGSI) UNTUK MENGHITUNG
JUMLAH DENGAN MENGGUNAKAN FUNGSI
INPUT,FUNGSI JUMLAH DAN FUNGSI OUTPUT
58
8.3 Flowchart
59
8.4 Testing Program Dan Hasil
a. Souce Code
//PROJECT : 08
//PROGRAM : MEMBUAT PROGRAM DENGAN MENGGUAAKAN
SUB PROGRAM UNTUK MENGHTUNG JUMLAH
//AUTHOR : - FANI SUSANTI
// - ELMA NOVITA DEWI
// - FANY SYAFIRA NURUL KILAH
//NPM : - 0651 15 102
// - 0651 15 074
// - 0651 15 125
//TANGGAL : 09 JANUARI 2016
fxinput(i,m);
fxoutput(k,p);
//MENGAKHIR PROGRAM
cout<<"Program selesai dieksekusi"<<endl;
cout<<"Silahkan lihat hasilnya pada 'OUTPUT FILE'"<<endl;
}
//FUNGSI
int fxinput(int i,int m)
{
//MEMBUKA INPUT FILE
ifstream file_in;
file_in.open("08_input.txt");
61
}
else
62
//MEMBUKA OUTPUT FILE
ofstream file_out;
file_out.open("08_output.txt");
while(k<=p)
{
file_out<<"Bilangan -"<<k<<"="<<bilangan[k]<<endl;
k=k+1;
}
file_out<<"Jumlah ="<<fxjumlah(&hasil);
file_out<<endl;
}
63
return (k);
}
b. Hasil Program
Input
64
Hasil Program
65