Anda di halaman 1dari 9

PERTEMUAN II

ARRAY DAN MANIPULASI STRING

1. Array
Tujuan
Tujuan dari dilakukannya Praktikum I ini adalah agar mahasiswa dapat memahami dan membuat
program dengan menggunakan ARRAY.
Dasar Teori
Array adalah suatu tipe data terstruktur yang berupa sejumlah data sejenis (bertipe data sama) yang
jumlahnya tetap dan diberi suatu nama tertentu. Array dapat berupa array 1 dimensi, 2 dimensi, bahkan
n-dimensi.
DEKLARASI
tipe_data nama_var_array [ukuran];
tipe_data : menyatakan jenis tipe data elemen larik (int, char, float, dll)
nama_var_array : menyatakan nama variabel yang dipakai.
ukuran : menunjukkan jumlah maksimal elemen larik.

Contoh :
Int nilai[6];

INISIALISASI
Menginisialisasi array sama dengan memberikan nilai awal array pada saat didefinisikan.
int nilai[6] = {8,7,5,6,4,3};
Contoh diatas berarti berarti anda memesan tempat di memori komputer sebanyak 6 tempat
dengan indeks dari 0-5, dimana indeks ke-0 bernilai 8, ke-1 bernilai 7, dst, dan dimana semua
elemennya bertipe data integer.
PENGAKSESAN

nama_var_array [indeks];

Pengisian dan pengambilan nilai pada indeks tertentu dapat dilakukan dengan mengeset nilai atau
menampilkan nilai pada indeks yang dimaksud. Pengaksesan elemen array dapat dilakukan berurutan
atau random berdasarkan indeks tertentu secara langsung.
Array Satu Dimensi
Array Satu dimensi tidak lain adalah kumpulan elemen-elemen identik yang tersusun dalam satu baris.
Elemen-elemen tersebut memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh berbeda.
Elemen Ke- 0 1 2 3 4 5 6 7 8 9
Nilai 23 34 32 12 25 14 23 12 11 10

Bentuk Umum :

<tipe data>NamaArray[n] = {elemen0, elemen1, ….., n};

dimana n = jumlah elemen

Array Dua Dimensi


Array dua dimensi sering digambarkan sebagai sebuah matriks, merupakan perluasan dari array satu
dimensi. Jika array satu dimensi hanya terdiri dari sebuah baris dan beberapa kolom elemen, maka
array dua dimensi terdiri dari beberapa baris dan beberapa kolom elemen yang bertipe sama
sehingga dapat digambarkan sebagai berikut:

0 1 2 3 4 5 6
0 10 21 23 43 45 78 65
1 45 43 65 12 21 12 21
2 32 34 23 56 54 34 45
3 11 12 32 23 56 76 45
Bentuk umum:

<tipe data> NamaArray [m][n];

Atau
<tipe data> NamaArray [m][n] = { {a,b,..z},{1,2,...,n-1} };

Contoh:
double matrix [4][4];
bool papan [2][2] = {{true, false}, {true, false}};

Pendeklarasian array dua dimensi hampir sama dengan pendeklarasian array satu dimensi, kecuali
bahwa array dua dimensi terdapat dua jumlah elemen yang terdapat di dalam kurung siku dan keduanya
boleh tidak sama.
Elemen array dua dimensi diakses dengan menuliskan kedua indeks elemennya dalam kurung siku
seperti pada contoh berikut:

//papan nama memiliki 2 baris dan 5 kolom


bool papan [2][5];

papan [0][0] = true;


papan [0][4] = false;
papan [1][2] = true;
papan [1][4] = false;
Bahan dan Alat

Bahan dan Alat yang dilakukan adalah software Visual Studio Code

Metode / Tahapan Kerja

Contoh Program 1:

/*program mencari bilangan tertentu didalam array


mencari jumlah data yang ditemukan dan
di elemen mana saja bilangan itu ditemukan*/

#include <iostream>
using namespace std;

int main(){
int x[10]={45,34,23,34,32,12,65,76,34,23};
int i,bil,jumlah;
bool ketemu = false;
jumlah=0;

cout<<"Bilangan yang dicari : ";


cin>>bil;
for(i=0; i<10; i++){
if(x[i]==bil){
ketemu = true;
cout<<"Bilangan telah ditemukan di elemen "<<i<<endl;
jumlah++;
}

}
if(ketemu){
cout<<"Jumlah data : "<<jumlah<<endl;
}
else{
cout<<"bilangan tidak ditemukan "<<endl;
}
}

Outputnya adalah:
Bilangan yang dicari : 23
Bilangan ditemukan di elemen : 2
Bilangan ditemukan di elemen : 9
Jumlah data : 2
Contoh Program 2 :

//program perkalian matriks

#include <iostream>
using namespace std;
int main()
{
int a[10][10], b[10][10], c[10][10];
int CC, i, j, k;
int x,y;

cout<<"Masukan banyak Baris : ";


cin>>x;
cout<<"Masukan banyak kolom : ";
cin>>y;

cout<<"Elemen matriks A : "<<endl;


for (i=1; i<=x; i++){
for (j=1; j<=y; j++){
cout<<" Elemen matrik A baris ke-"<<i<<" kolom ke-"<<j<<": ";
cin>>a[i][j]; }
}
cout<<endl;
cout<<"Elemen matriks B : "<<endl;
for (i=1; i<=x; i++){
for (j=1; j<=y; j++){
cout<<" Elemen matrik B baris ke-"<<i<<" kolom ke-"<<j<<": ";
cin>>b[i][j]; }
}
cout<<endl;
cout<<"Matriks A"<<endl;
for (i=1; i<=x; i++){
for (j=1; j<=y; j++){
cout<<a[i][j]<<"\t";
}
cout<<endl;
}
cout<<"\nMatriks B"<<endl;
for (i=1; i<=x; i++){
for (j=1; j<=y; j++){
cout<<b[i][j]<<"\t";
}
cout<<endl;
}
for (i=1; i<=x; i++){
for (j=1; j<=y; j++){
c[i][j]=0;
for (k=1; k<=x; k++){
CC=a[i][k]*b[k][j];
c[i][j]=c[i][j]+CC;
}
}
}
cout<<endl;
cout<<"\nElement matriks C [hasil] : "<<endl;
for (i=1;i<=x;i++){
for (j=1;j<=y;j++){
cout<<c[i][j]<<"\t";
}
cout<<endl;
}
}

Outputnya:
Pertanyaan / Tugas
1. Carilah literatur mengenai stack di internet !
2. Carilah 1 contoh coding stack menggunakan c++ minimal 10 baris dari beri outputnya !
3. Buatlah program untuk menghasilkan output sebagai berikut :

4. Buatlah program untuk menghasilkan output sebagai berikut :


2. Manipulasi String
Tujuan
Tujuan dari dilakukannya Praktikum II ini adalah agar mahasiswa dapat memahami dan
membuat program dengan menggunakan Manipulasi String.

Dasar Teori
String adalah rangkaian dari beberapa karakter.
String di tandai dengan tipe data char yang memiliki index dan di deklarasikan dengan
menggunakan kutip dua (“). Contoh; “Ilmu Komputer”, “FMIPA” dll.

String dapat dimanipulasi dengan aturan tertentu. Dan bahasa C++ telah menyediakan semua
ini ke dalam pustakanya. Berikut adalah fungsi-fungsi yang digunakan untuk melakukan
manipulasi string:

1. Strcpy
Fungsi ini digunakan untuk menyalin string asal ke-variable string tujuan dengan syarat
string tujuan harus mempunyai tipe data dan ukuran yang sama dengan strig asal. File
header yang harus disertakan adalah “string.h”
Cara penulisan ; strcpy(tujuan, asal);

cout<<" Masukkan Kata : "; fflush(stdin);

cin.getline(kata1,sizeof(kata1));

cout<<" Masukkan kata yang akan dicopy: ";

cin.getline(kata2,sizeof(kata2));

cout<<" Hasil: "<<strcpy(kata1,kata2)<<endl;

2. Strcat
Fungsi ini digunakan untuk menambah string sumber ke bagian akhir dari string tujuan,
File header yang harus disediakan adalah “string.h”.
Cara penulisan ; strcat(tujuan, sumber);

cout<<" Masukkan Kalimat atau kata Anda : "; fflush(stdin);

cin.getline(kata1,sizeof(kata1));

cout<<" Masukkan kata yang akan ditambahkan : ";

cin.getline(kata2,sizeof(kata2));

cout<<" Hasil: "<<strcat(kata1,kata2)<<endl;


3. Strlen
Fungsi ini berguna untuk menghitung banyaknya karakter dalam string.
Bentuk penulisan; strlen(teks1);

cout<<" Masukkan Kalimat atau kata Anda: "; fflush(stdin);

cin.getline(kata1,sizeof(kata1));

cout<<" Hasil: "<<strlen(kata1)<<endl;

4. Strupr
Digunakan untuk mengubah semua huruf kecil menjadi huruf kapital.
Bentuk penulisan; strupr(str);

cout<<" Masukkan Kalimat atau kata Anda : "; fflush(stdin);

cin.getline(kata1,sizeof(kata1));

cout<<" Hasil : "<<strupr(kata1)<<endl;

5. Strlwr
Sebaliknya strlwr digunakan untuk mengganti semua huruf kapital menjadi kecil.
Bentuk penulisan; strlwr(str);
cout<<" Masukkan Kalimat atau kata Anda dengan huruf kapital: "; fflush(stdin);

cin.getline(kata1,sizeof(kata1));

cout<<" Hasil : "<<strlwr(kata1)<<endl;

6. Strcmp
Fungsi ini digunakan untuk membandingkan string pertama dengan string kedua.
Bentuk penulisan; strcmp(str1, str2);

cout<<" inputan pertama : "; fflush(stdin);

cin.getline(kata1,sizeof(kata1));

cout<<" inputan kedua : ";

cin.getline(kata2,sizeof(kata2));

cout<<" Hasil: "<<strcmp(kata1,kata2)<<endl;


7. Atof dan Atoi
Fungsi atof digunakan untuk mengubah string (teks) angka menjadi bilangan
numeric float. File header yang harus di sertakan adalah math.h
Sedangkan, fungsi atoi digunakan untuk mengubah string (teks) angka menjadi
bilangan numeric integer. File header yang harus di sertakan adalah math.h
Bentuk penulisan :

atof(str) atoi(str)

Anda mungkin juga menyukai