Array dan String

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 suatu array ditunjukkan oleh suatu subscript atau indeks.

Tujuan Penggunaan Array :

- Memudahkan dalam pengaturan resource dalam memori komputer
- Mempercepat akses dan pencarian sebuah data dalam memori komputer.

Array Satu Dimensi

Array Satu Dimensi Merupakan sekumpulan array yang terdiri dari satu larik.
Deklarasi Array Satu Dimensi
tipe_data nama_var[ukuran];

- tipe_data : untuk menyatakan tipe dari elemen array, misalnya int, char, float.
- nama_var : nama variabel array
- ukuran     : untuk menyatakan jumlah maksimal elemen array

Contoh pendeklarasian array :
float nilai_tes[5];
menyatakan bahwa array nilai_tes mengandung 5 elemen bertipe float.

contoh array satu dimensi

Contoh program :
#include <stdio.h>
#define MAKS 5

main()
{
 int i;
 float total = 0, rata;
 float nilai_tes[MAKS]; /* deklarasi array */

 for(i=0; i < MAKS; i++) /* pemasukan data nilai_tes */
 {
  printf("Nilai tes ke-%d : ", i+1);
  scanf("%f", &nilai_tes[i]);
  /* menghitung jumlah seluruh nilai */
  total = total + nilai_tes[i];
 }
 rata = total / MAKS;  /* menghitung nilai rata-rata */

 /* cetak nilai rata-rata */
 printf("\nNilai rata - rata = %g\n", rata);
}
Hasil pogram diatas :
contoh hasil program array satu dimensi

Inisialisasi Array Satu Dimensi

Sebuah array dapat diinisialisasi sekaligus pada saat dideklarasikan. Untuk mendeklarasikan array, nilai-nilai yang diinisialisasikan dituliskan di antara kurung kurawal ({ }) yang dipisahkan dengan koma.
Contoh :
int a[10]= {2,3,5,6,7,8,9,10,11,12};
Beberapa Variasi dalam mendeklarasikan Array :
int numbers[10];
int numbers[10] = {34, 27, 16};
int numbers[] = {2, -3, 45, 79, -14, 5, 9, 28, -1, 0};
char text[] = "Welcome to New Zealand.";
float radix[12] = {134.362, 1913.248};
double radians[1000];

Array Dua Dimensi

Array Dua Dimensi merupakan sekumpulan data yang terdiri dari dua larik. Contoh :
contoh array dua dimensi 1
contoh array dua dimensi 2

Model Penyimpanan Array Dua Dimensi sama halnya pada array satu dimensi, data array akan ditempatkan pada memori yang berurutan.

Mengakses Array Dua Dimensi

Array seperti data_lulus dapat diakses dalam bentuk
data_lurus[indeks pertma, indeks kedua];
Contoh :
data_lulus[0][1] = 540;
merupakan interuksi untuk memberikan nilai 540 ke array data_lulus untuk indeks pertama = 0 dan indeks kedua bernilai 1.
printf("%d", data_lulus[2][0]);
merupakan perintah untuk menampilkan elemen yang memiliki indeks pertama = 2 dan indeks kedua = 0.

contoh akses Array Dua Dimensi

 

Inisalisasi Array Dua Dimensi

contoh Inisialisasi array 2 dimensi

Array Sebagai Parameter

Contoh :
void cetak (int data[10],int n){
    int i;
 for(i=0;i<n;i++)printf(“%d”,data[ i ]);

}

void main(){
Int data[10]={10,20,30,40,50,60,70,30,40,50};

 cetak(data,10);


}



String

Merupakan bentuk data yang biasa dipakai dalam bahasa pemrograman untuk keperluan menampung dan memanipulasi data teks, misalnya menampung (menyimpan) suatu kalimat. Pada bahasa c/c++, string bukanlah merupakan suatu tipe data tersendiri, melainkan hanyalah kumpulan dari nilai-nilai karakter yang berurutan dalam bentuk array berdimensi satu.

Deklarasi String

Contoh :
char data[6]=“ABCDE”;

Nilai string ini disimpan dalam memori secara berurutan dengan komposisi sebagai berikut

urutan penyimpanan string dalam memori

Contoh lain :
char name[15];

merupakan instruksi untuk mendeklarasikan variabel string dengan panjang maksimal 15 karakter (termasuk karakter NULL). Deklarasi tersebut sebenarnya tidak lain merupakan deklarasi array bertipe char.

Input data String

#include <stdio.h>
gets(nama_array);

atau
#include <stdio.h>
scanf("%s",nama_array);

Perhatikan :
- nama_array adalah variabel bertipe array of char yang akan digunakan untuk menyimpan masukan berupa string
- didepan nama_array tidak perlu ada operator &(operator alamat),karena nama_array tanpa kurung siku sudah menyatakan alamat yang ditempati oleh elemen pertama  dari array tsb.
- Kalau memakai scanf(), data string masukan tidak boleh mengandung sepasi

Output data String

#include <stdio.h>
puts(var_string);
atau
#include <stdio.h>
printf("%s", var_string);
Dalam hal ini var_string adalah sebuah variabel yang berupa sebuah array of char. Fungsi puts() akan menampilkan isi dari var_string dan secara otomatis menambahkan karakter “\n” di akhir string. Sedangkan fungsi printf() akan menampilkan isi variabel string tanpa memberikan tambahan “\n”. Sehingga, agar kedua pernyataan diatas memberikan keluaran yang sama, maka pada pernyataan printf() dirubah menjadi :
printf("%s\n", var_string);

Akses Elemen String

Variabel string merupakan bentuk khusus dari array bertipe char. Oleh karena itu, elemen dari variabel string dapat diakses seperti halnya pengaksesan elemen pada array. Program berikut menunjukan cara mengakses elemen array untuk menghitung total karakter dari string yang dimasukan melalui keyboard.
/* Contoh program untuk menghitung banyaknya karakter dari suatu string yang dimasukan melalui keyboard */

#include <stdio.h>
#define MAKS 256

main()
{
 int i, jumkar = 0;
 char teks[MAKS];

 puts("Masukan suatu kalimat (maks 255 karakter");
 puts("MSaya akan menghitung jumlah karakternya.\n");
 fgets(teks, sizeof teks, stdin);   //masukan dari keyboard
 for(i=0; teks[i]; i++)
  jumkar++;
 printf("\nJumlah karakter = %d\n", jumkar);
}

Fungsi-Fungsi Pada String

Fungsi pada library string.h :
1. strcpy(tujuan,asal); -> untuk menyalin nilai string
2. strlen(var); -> untuk menghitung panjang string
3. strcat(str1,str2); -> untuk menggabungkan dua buah string
4. strcmp(str1,str2); -> untuk membandingkan nilai dua buah string, jika hasilnya:
•  -1, maka str1 kurang dari str2
•  0 , maka str1 sama dengan str2
•  1 , maka str1 lebih dari str2
5. strchr(var_string,kar); -> untuk mencari nilai karakter dalam string, jika ada maka menghasilkan indeks posisi kar tersebut, jika tidak ada maka “\0”.














Related

Algoritma & Struktur Data 4160757117838069720

Post a Comment

emo-but-icon

Populer

Comments

Translate

Side Ads

item