Array 1 Dimensi

8
LAPORAN AKHIR AP V - ARRAY 1 DIMENSI SUNNY INEZA PUTRI 140310110017 I. Tugas Akhir 1 Buatlah program C yang bertujuan untuk menghitung deret Fibonacci menggunakan array List program: #include <stdio.h> #include <conio.h> main() { int i, N, A[99]; printf("Masukkan jumlah deret: "); scanf("%d", &N); printf("Masukkan bilangan pertama: "); scanf("%d", &A[1]); printf("Masukkan bilangan kedua: "); scanf("%d", &A[2]); printf("Deret Fibonacci: %d %d ", A[1], A[2]); for(i=3;i<=N;i++) { A[i]=A[i-1] + A[i-2]; printf("%d ", A[i]); } getch(); } Tampilan:

description

Praktikum Algoritma dan Pemrograman Jurusan Fisika FMIPA Unpad

Transcript of Array 1 Dimensi

Page 1: Array 1 Dimensi

LAPORAN AKHIR

AP V - ARRAY 1 DIMENSI

SUNNY INEZA PUTRI

140310110017

I. Tugas Akhir 1

Buatlah program C yang bertujuan untuk menghitung deret Fibonacci

menggunakan array

List program:

#include <stdio.h>

#include <conio.h>

main()

{

int i, N, A[99];

printf("Masukkan jumlah deret: ");

scanf("%d", &N);

printf("Masukkan bilangan pertama: ");

scanf("%d", &A[1]);

printf("Masukkan bilangan kedua: ");

scanf("%d", &A[2]);

printf("Deret Fibonacci: %d %d ", A[1], A[2]);

for(i=3;i<=N;i++)

{

A[i]=A[i-1] + A[i-2];

printf("%d ", A[i]);

}

getch();

}

Tampilan:

Page 2: Array 1 Dimensi

Analisa:

Dengan menggunakan array kirta juga dapat menghitung deret Fibonacci dengan

kita menentukan indeks akhir dari array sebagai batas batas maksimal jumlah

bilangan yang akan ditampilkan. Setelah diinput banyak bilangan yang akan

ditampilkan, bilangan pertama dan kedua, kemudian akan dilakukan pengulangan

untuk menampilkan bilangan selanjutnya dengan cara menjumlahkan dua

bilangan sebelumnya sampai batas bilangan yang ingin ditampilkan.

II. Tugas Akhir 2

Buatlah program C yang bertujuan menampilkan deret Pascal

List program:

#include<stdio.h>

#include<conio.h>

int faktorial(int N,int& F)

{

int k;

F=1;

for(k=1;k<=N;k++)

F=k*F;

}

int kombinasi(int N,int r,int& C)

{ int fn,fr,fnr;

faktorial(N,fn);

faktorial(r,fr);

faktorial(N-r,fnr);

C=fn/(fr*fnr);

}

main()

{

Page 3: Array 1 Dimensi

int N,F,i,j,k,C;

printf("Tingkat segitiga pascal : ");scanf("%d",&N);

for (i=1;i<=N;i++)

{

for(j=N;j>=i;j--)

{

printf(" ");

}

for(k=0;k<i;k++)

{

kombinasi(i-1,k,C);

printf("%2d ",C);

}

printf("\n\n");

}

printf("");

getch();

}

Tampilan:

Analisa:

Dalam program ini digunakan fungsi factorial, kemudian fungsi factorial tersebut

dimasukkan kedalam fungsi kombinasi. Dalam program utama menggunakan for

bersarang untuk menampilkan deret Pascal.

III. Tugas Akhir 3

Modifikasi program-program dalam percobaan program praktikum sehingga

rutinnya disimpan dalam sebuah fungsi dengan argument. (fungsi maks(…),

fungsi min(…), bubble(…) dll).

List program:

#include <stdio.h>

Page 4: Array 1 Dimensi

#include <conio.h>

void minmax (int BIL[], int N)

{

int i, max, min;

min = BIL[0];

max = BIL[0];

for(i=1;i<N;i++)

{

if (BIL[i]<min)

min = BIL [i];

if (BIL[i]>max)

max = BIL[i];

}

printf("Nilai minimum :%d\n", min);

printf("Nilai maximum :%d\n", max);

}

void descending (int BIL[], int N)

{

int i, j, temp;

for(i=1;i<=N-1;i++)

{

for(j=i;j<N;j++)

{

if (BIL[i-1]<BIL[j])

{

temp = BIL[j];

BIL[j] = BIL[i-1];

BIL[i-1] = temp;

}

}

}

printf("Diurutkan secara descending: ");

for(i=0;i<N;i++)

printf("%d ", BIL[i]);

printf("\n");

}

void ascending (int BIL[], int N)

{

Page 5: Array 1 Dimensi

int i, j, temp;

for(i=1;i<=N-1;i++)

{

for(j=i;j<N;j++)

{

if (BIL[i-1]>BIL[j])

{

temp = BIL[i-1];

BIL[i-1]=BIL[j];

BIL[j] = temp;

}

}

}

printf("Diurutkan secara ascending: ");

for(i=0;i<N;i++)

printf("%d ", BIL[i]);

printf("\n");

}

main()

{

int i, N, BIL[15],min, max;

printf("Masukkan banyaknya bilangan (maksimum 15): ");

scanf("%d",&N);

if (N<16)

{

for(i=0;i<N;i++)

{

printf("Input bilangan ke %d : ",i+1);

scanf("%d", &BIL[i]);

}

minmax(BIL, N);

ascending(BIL, N);

descending(BIL, N);

}

else

printf("Banyak bilangan yang Anda masukkan melebihi

batas");

getch ();

}

Page 6: Array 1 Dimensi

Tampilan:

Analisa:

Dengan menggunakan array dapat dibuat sebuah pencarian maks-min,

pengurutan ascending dan descending. Dalam program ini dibuat fungsi masing-

masing untuk setiap rutin. Sehingga saat di fungsi utama tinggal melakukan

panggilan terhadap fungsi yang dibuat sesuai keinginan.

IV. Tugas Tambahan

Buatlah program dimana data telah diurutkan, setelah itu buat program untuk

menghitung nilai median

List program:

#include <stdio.h>

#include <conio.h>

int i, j, n, temp;

float med, data [100], x;

main()

{

printf("Masukkan banyaknya data (maksimal 100) = ");

scanf("%d", &n);

for (i=1; i<=n; i++)

{

printf("Input data ke %d = ", i);

scanf("%f", &data[i]);

}

for (i=1; i<=n; i++)

{

Page 7: Array 1 Dimensi

for (j=n; j>=(i+1); j--)

{

if (data[j] > data[j-1])

{

temp = data[j];

data[j] = data[j-1];

data[j-1] = temp;

}

}

}

printf("\nSetelah diurutkan : ");

for (i=1; i<=n; i++)

{

printf("%.0f ", data[i]);

}

x = n%2;

if (x != 0)

med = data[(n+1)/2];

else

med = (data[n/2]+ data[((n+2)/2)])/2;

printf("\n");

printf("\nNilai median = %.2f\n", med);

getch ();

}

Tampilan:

Page 8: Array 1 Dimensi

Analisa:

Dalam program ini kita mengurutkan datra yang dimasukkan terlebih dahulu

secara ascending maupun descending. Setelah itu baru dilakukan pencarian nilai

median dengan pengkondisian jika modulusnya tidak sama dengan nol bearti

ganjil maka menggunakan rumus data[(n+1)/2]. Sedangkan jika modulus sama

dengan nol bearti genap dapat digunakan rumus data[n/2]+ data[((n+2)/2)])/2.

V. Analisa Umum

Array dapat dignakan dalam program yang menggunakan tipe data sama. Dalam

array dapat juga menggunakan fungsi baru yang kmudian akan dipakai pada

fungsi utama. Program array dapat digunakan untuk pencarian dan pengurutan

data.

VI. Kesimpulan

Array dapat digunakan untuk melakukan pencarian maksimum, minimum dan

nilai median. Selain itu juga dapat dilakukan pengurutan secara ascending

ataupun descending. Array juga dapat menggunakan fungsi baru dalam program

agar lebih efisien.