LAPORAN
PRAKTIKUM
MODUL
4
STUKTUR
DATA
ARRAY
DALAM FUNGSI
Diajukan
untuk memenuhi tugas sebagai bahan praktikum
Dosen
: Endra Suseno, M.Kom
Disusun
oleh :
Egi
Legitasari
20160910045
Sistem
informasi A 2016
FAKULTAS
ILMU KOMPUTER
UNIVERSITAS
KUNINGAN
2016
PRAKTIKUM
1
Study
kasus
Dalam
sebuah deret bilangan yang dikumpulkan dalm variable array yang terdiri dari 10
element, dari setiap bilangan tersebut memiliki indeksnya, dengan memasukan
sebuah bilangan yang terdapat di variable array kita dapat mengetahui alamat
indeks dari bilangan tersebut pada nomor indeks berapa bilangan itu tersimpan.
Script Program Menggunakan c++
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
int main()
{
int A [10]
={12,24,13,25,10,11,21,20,15,18};
int bil,c;
for(int i=0; i<10; i++)
{
cout<<"indeks-["<<i<<"]"<<"
"<<A[i]<<endl;
}
cout<<endl;
cout<<"masukan bilangan
yang akan dicari:";
cin>>bil;
for( c =0; c<10 ;c++)
{
if(A[c]==bil)
{
cout<<"bilangan yang anda
cari berada di indeks ke-"<<c;
break;
}
}
if(bil!=A[c])
cout<<"\n Bilangan yang
anda cari tidak terdaftar";
getch();
return 0;
} |
Pembahasan
Program ini yaitu untuk mencari nilai yang sudah di
tetapkan atau sudah jadi. Program ini menggunakan variabel Array yang berfungsi
untuk menampung nilai dalam satu variabel.
Di dalam variabel tersebut sudah di tentukan nilainya
yaitu {12,24,13,25,10,11,21,20,15,18}. Untuk mencari urutan nilai dalam array
harus menggunakan instruksi for, yang berfungsi sebagai fungsi pengulangan. Di
dalam instruksi for juga terdapat instruksi if, yaitu untuk menganalisa apakah
nilai yang terdapat dalam fungsi for benar atau tidak, jika benar maka akan di
jalankan atau menampilkan indeknya.
Hasil runing program
PRAKTIKUM
2
Study Kasus
Mobil
13 dalah perusahaan yang menjual mobil bekas, berdagang mobil bekas selama
bertahun – tahun ternyata hanya ada tiga meek mobil yang selalu dicari oleh
konsumen yaitu Toyota, Honda dan Suzuki. Mobil 13 saat ini sudah memiliki
cabang di 3 Kota Besar yaitu Jakarta, Surabaya dan Medan dengan demikian
banyaknya konsumen yang percaya dengan kualitas mobil bekas yang dijual oleh
mobil 13 perusaaan membutuhkan program yang dapat mencatat semua penjualan
mobil bekas perbulan disetiap cabangnya, selama ini perhitungan masih bersifat
manual dalam bentuk bagan diatas kertas.
Script Program Menggunakan c++
#include<stdio.h>
#include<conio.h>
void judul(char kota[11])
{
char merek[3][7]
={"Toyota","Honda","Suzuki"};
char bulan [13][4]={"Jan","Feb","Mar","Apr","Mei","Jun","jul","Ags","Sep","Okt",
"Nop","Des","JML"};
int i;
clrscr();
printf("PENJUALAN MOBIL
BEKAS\n\n");
printf("Kota
:%s\n\n\t",kota);
for(i=0; i<13; i++)
printf(" %s",bulan[i]);
for(i =0; i<3; i++)
printf("\n %s",merek[i]);
}
void isi_data(int jual[4][13][4])
{
char kota [4][11] =
{"Jakarta","Surabaya", "Medan", "Semua
Kota"};
int i_k, i_m, i_b;
//indeks kota,merek,bulan//
for(i_k =0; i_k<3;i_k++)//kota
{
judul(kota[i_k]);
for(i_m=0; i_m<3; i_m++)//merek
{
for(i_b =0; i_b<12; i_b++)//bulan
{
gotoxy(11 + i_b *4, i_m +6);
scanf("%d",&jual[i_m][i_b]
[i_k]);
jual[i_m][12][i_k] += jual[i_m]
[i_b] [i_k];
//isi ke samping
jual[3][i_b][i_k] += jual [i_m]
[i_b] [i_k];
//isi kebawah
jual[3][12][i_k] +=
jual[i_m][i_b][i_k];
//isi ke total
jual[i_m][i_b][3]
+=jual[i_m][i_b][i_k];
//isi ke lapis ke-4
}
gotoxy(59,i_m+6);
printf("%d",jual[i_m][12][i_k]);
}
gotoxy(11,10);
for(i_b =0; i_b<13;i_b++)
printf("%d
",jual[3][i_b][i_k]);
fflush(stdin);
getch();
}
}
void total_jual(int jual[4][13][4])
{
int i_m, i_b;
for(i_m =0; i_m<3; i_m++)
for(i_b =0; i_b<12; i_b++)
{
jual[i_m][12][3] +=
jual[i_m][i_b][3];
//tambah ke samping
jual[3][i_b][3] +=jual[i_m][i_b][3];
//tambah ke bawah
jual[3][12][3] +=jual[i_m][i_b][3];
//tambah ke grand total
}
judul("semua");
for(i_m =0; i_m<4; i_m++)
{
i_m == 3?gotoxy (11,i_m
+7):gotoxy(11,i_m +6);
for(i_b=0; i_b<13; i_b++)
printf("
%d",jual[i_m][i_b][3]);
}
}
int main()
{
int jual[4][13][4]={0};
//merek,bulan,kota
isi_data(jual);
total_jual(jual);
getch();
return 0;
} |
Pembahasaan
Program ini yaitu sebuah program untuk menginputkan
data penjualan mobil bekas, dari tiap cabang/kota dalam jangka waktu 12 bulan.
Penggalan syntax diatas merupakan variabel array yang
di inputkan, sedangkan index pertama menunjukan banyaknya baris, indeks kedua
menunjukan banyaknya isi baris,
dan index ketiga menunjukan banyaknya kolom.
Hasil runing program
PRAKTIKUM
3
Study Kasus
Dalam
suatu kumpulan angka yang tidak beraturan kita diminta untuk mengurutkan dari
mulai angka yang terkecil hingga yang terbesar, tipe data yang dapat menangani
kasus ini yang effisien adalah tipe data array.
Script Program Menggunakan c++
#include<stdio.h>
#include<conio.h>
void
bubblesort (int data[],int n)
{
int i, temp,
flag=1;
while(flag)
{
flag =0;
for(i=0;
i<n; i++)
{
if(data[i]>data[i+1])
{
temp =
data[i];
data[i] =
data[i+1];
data[i+1]
=temp;
flag++;
}
}
}
}
main()
{
int
data[1000];
int n,i;
printf("__________.::BUBBLE
SORT:.__________\n");
printf("masukan
angka (maks 1000):");
scanf("%d",&n);
printf("Data
(pisahkan angka dengan spasi):");
for(i=0;
i<n; i++)
scanf("%d",&data[i]);
bubblesort(data,n);
printf("\n
Output after sort :\n");
for(i=0;
i<n;i++)
printf("%d",data[i]);
getch();
return 0;
} |
Pembahasan
Program ini
yaitu untuk mengurutkan angka terkecil ke angka terbesar, dengan memasukan
angka yang tidak beraturan, untuk menghasilkan keluaran seperti ini maka
menggunakan instruksi perulangan yaitu For dan While.
Sehingga angka-angka
yang tadi dimasukan akan tampil secara terurut.
Hasil Runing program
LATIHAN
1
Study Kasus
Terdapat
beberapa nilai masukan yang akan diolah semua nilai bertipa data integer dari
semua nilai yang di masukan terdapat nilai terbesar dan nilai terkecil, setiap
data yang diinput disimpan dalam variable arrar, perbaikilah program dibawah
ini agar dapat menyelesaikan kasus di atas.
Script Program
Menggunakan c++
#include<iostream.h>
#include<conio.h>
int main()
{
int max, i, n, min;
float A[100];
cout<<"MENCARI NILAI TERBESAR DAN
TERKECIL\n\n";
cout<<"Masukan Jumlah Data : ";
cin>>n;
for(i=1; i<=n; i++)
{
cout<<" Masukan Bilangan Ke
["<<i<<"] : ";
cin>>A[i];
}
for(i=1; i<=n; i++)
{
if(i==1)
{
min = A[i];
max = A[i];
}
else if (min > A[i])
{
min = A [i];
}
else if(max < A[i])
{
max = A[i];
}
}
cout<<"\nNilai Terbesar Asalah :
"<<max<<endl;
cout<<"Nilai Terkecil Adalah :
"<<min<<endl;
getch();
return 0;
} |
Tidak ada komentar:
Posting Komentar