Tampilkan postingan dengan label pemrograman. Tampilkan semua postingan
Tampilkan postingan dengan label pemrograman. Tampilkan semua postingan
Kamis, 04 April 2013
FUNCTION
FUNCTION
Selasa, 02 April 2013
Algoritma Dan Pemrograman 2 C++ (Array)
ARRAY
- Array merupakan struktur data
yang sering digunakan
dalam pemrograman untuk menyimpan
data yang akan diolah kemudian (misalnya pada proses
sorting atau
searching).
- Array adalah struktur data
yang terdiri dari kumpulan variabel yang bertipe sama.
- Beberapa bahasa pemrograman men-dukung struktur array statis dan dinamis. Pada C/C++,
array yang didukung adalah
array statis.
- Pada
C/C++, array merupakan pointer
yang mempunyai alokasi memori tetap (pointer constant).
- Nilai (Isi) dari elemen-elemen suatu array
ditempatkan pada memori yang
berurutan.
- Akses elemen suatu
array bersifat
random, artinya dapat dimulai dari mana saja dan tidak harus dari elemen pertamanya.
Deklarasi Array Satu Dimensi :
- Array satu dimensi adalah array yang
sederhana, masing-masing elemen dapat terpisah dengan menggunakan indeks
Syntax :
tipe Nama_Array [ jumlah elemen ];
tipe Nama_Array [ jumlah elemen ] = { Nilai };
Ketentuan :
indeks terkecil -> 0 (nol)
indeks terbesar -> jumlah_elemen-1;
Contoh :
float x[5] =
{ 80.50, 90.00,
95.60,88.30, 98.00 };
char Kampus[20] = { ‘B’, ‘I’, ‘N’,
‘U’, ‘S’ };
char Kota[18] = “Jakarta”;
int Jumlah[5] = 0, 1, 2, 3, 4; // salah
float Total[3] = 96.33,98.4,
88.55; //
salah
char Arah[10] = ‘B’, ‘A’, ‘R’, ‘A’,
‘T’; //
salah
char ARAH[10] = TIMUR; // salah
Akses Elemen Array :
- Untuk mengakses elemen suatu
array dapat bersifat Random
(tidak harus dimulai dari elemen pertama).
- Setelah suatu array
didefinisikan,
elemen array dapat diakses dalam bentuk :
Nama_Array [ indeks ]
- Apabila didefinisikan array sbb :
float x[5]
= { 80.50,
90.00, 95.60,88.30, 98.00 };
maka untuk mengakses elemen array x adalah sbb :
- Elemen pertama adalah x[0]
- Elemen kedua adalah x[1]
- Elemen kelima adalah x[4]
atau
Dalam bentuk umum adalah x[ i ], dimana x[ i
] menyatakan elemen x dengan indeks (subscript) sama dengan i.
- Untuk menampilkan semua elemen array
x di atas adalah sbb:
for ( int i=0; i<5; i++ )
cout
<< x[ i ];
Untuk mengisi
/ mengubah semua nilai elemen array
x di atas adalah sbb :
for ( int i=0; i<5; i++ )
cin
<< x[ i ];
Contoh
Program C++ :
#include <iostream.h>
#include <conio.h>
void main()
{float Nilai[5],
Total = 0, Rerata;
int i=0;
clrscr(); // Hapus layar
do {
cout
<< “Masukkan nilai ke- “
<< i+1 << “ = “
cin
>> Nilai[i];
} while ( ++i < 5 );
for ( i=0; i<5;
i++
) Total += Nilai[i];
Rerata =
Total / 5;
cout
<< “Total nilai = “ << Total << ‘\ n’ <<
“Rata-rata nilai = “
<< Rerata
<< ‘\n’;
getch();
}
Array Sebagai Parameter Fungsi:
- Array dapat digunakan sebagai parameter untuk suatu fungsi.
- C++ menetapkan dua alternatif ukuran dari array
tertentu (fixed) dan umum (general).
- Syntax
– fixed-array :
tipe_data Nama_Parameter[ jumlah elemen ]
Contoh :
// Prototipe Fungsi
int Min_Array ( int arr[100], int n );
void sort ( unsigned arr_1[7] );
Syntax – open-array :
tipe_data Nama_Parameter[
]
atau
tipe_data * Nama_Parameter
Contoh :
// Prototipe Fungsi
int min_arr ( int arr[ ], int n );
void Sort ( unsigned day[ ] );
Contoh Program C++ :
#include <iostream.h>
const int MAX = 10;
int Get_Min ( int a[MAX], int size
);
int Get_Max ( int a[MAX], int size
);
main() // Program Utama
{ int arr[MAX], n; // Deklarasi Variabel
do {
cout << “Enter number of data [ 2 to “
<< MAX << “ ] : “; cin >> n;
} while ( n
< 2 || n > MAX );
for ( int i=0; i<n; i++ )
{
cout << “arr[“ << i << “] : “; cin >> arr[i] ;
}
cout << “Smallest value in array is
“<< Get_Min (arr, n)
<< “\ n”
<< “Biggest value in array is “<< Get_Max (arr, n)
<< “ \n”;
return 0;
}
// Definisi Fungsi
int Get_Min ( int a[MAX], int size )
{
int small
= a[0];
for ( int i=1; i<size;
i++ )
if ( small > a[i]
) small = a[i];
return small;
}
int Get_Max ( int a[MAX], int size )
{ int big =
a[0];
for ( int i=1; i<size;
i++ )
if ( big < a[i] )
big = a[i];
return big;
}
Deklarasi Array Multidimensi :
- Multidimensi
array merupakan
superset dari
single dimensional array.
- Setiap penambahan dimensi akan diikuti penambahan attribut akses.
- Array dua dimensi memiliki dua attribut yaitu: baris dan kolom.
- Array tiga dimensi memiliki tiga attribut yaitu: baris, kolom dan tinggi.
Syntax :
- Dua Dimensi :
tipe Nama_Array
[indeks1] [indeks2] ;
tipe Nama_Array
[indeks1] [indeks2] = { Nila i };
- Tiga Dimensi :
tipe Nama_Array
[indeks1] [indeks2] [indeks3];
tipe Nama_Array
[indeks1] [indeks2] [indeks3] ={ Nilai };
Contoh :
int Jml_Lulusan [3] [4];
Untuk menggambarkan tabel kelulusan maha-siswa suatu perguruan tinggi seperti di bawah ini:
Indeks Jurusan 1999 2000 2001
2002
0 Teknik Informatika 312 398 455 514
1 Sistem Informasi 288 315 356 394
2 Komputerisasi Akuntansi 560 712 873 1092
Dalam bentuk array dapat ditulis sbb:
int Jml_Lulusan [3] [4] = { {312, 398, 455, 514},{288, 315,
356, 394},
{560,712, 873, 1092} };
atau
int Jumlah [3] [4] = { 312, 398, 455, 514, 288,315,
356, 394, 560, 712,
873, 1092 };
int Nilai[2][3][3];
int Nilai[2][3][3] = { { { 3, 5, 7 }, { 4, 2, 0 } },{
{ 1, 2, 3 }, { 9, 7, 5 } },
{ { 0, 4, 8 }, { 2, 4, 6 } } };
Atau
int Nilai[2][3][3] = { 3, 5, 7, 4, 2, 0, 1, 2, 3, 9,
7, 5,0, 4, 8, 2, 4, 6 };
STRING :
- String merupakan
array of character.
- Indeks dimulai dari 0.
- Diakhiri dengan karakter ‘\0’ (NULL String).
- Untuk menyimpan n
buah karakter dibutuhkan deklarasi array sebesar n+1.
- C/C++
dilengkapi dengan kepustakaan (library)
yang lengkap
- untuk mengakses
string (digunakan
header file: <string.h> ), seperti strlen(), strcpy(), strcat(), strcmp(), strchr(), dll.
Deklarasi :
char name[31];
// pesan untuk 30 karakter
char Kode_Kuliah[5]
= “IF454”;
char Kota[3][20] = { “Jakarta”, “Bandung”,“Surabaya” };
char Mata_Kuliah[ ] = “PBO”;
char Barang = Meja; // salah
char Bentuk[2][10]
= “Kotak”, “Bulat”; // salah
char Nim[11]
= { 0400097001 }; // salah
char Nama[30];
strcpy ( Nama,
“Indah Cemerlang” );
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <stdio.h>
main()
{ char Name[81];
// alokasi karakter sebanyak 80 buah
clrscr();
cout << “What is your name ? “; gets ( Name );
if ( strlen (
Name ) > 0 )
cout
<< “Hello, “ << Name << “, how are you ? \n”;
else
cout << “Hmm, I don’t know what is your
name.”;
getch(); return 0; }
Langganan:
Postingan (Atom)