Selasa, 13 Oktober 2015

Makalah Kelompok 3 Logika & Algoritma - Tipe Data String di C++

Anggota Kelompok :
Fajar Dwi Ardhi Firmansyah    <17150047>
Feri Hardian                              <17150088>
Librex D.S.                                 <17150117>
Andri Septian                             <17150104>
Dadan Ramdani Nurluffi            <17150054>





PENGERTIAN STRING
String adalah sederetan simbol yang tidak tertentu panjangnya, yang dianggap sebagai panjang satu unit” (World Agreement Agenda O812). String dapat berupa huruf, angka, karakter khusus, maupun karakter Unicode. Dalam bahasa C++ terdapat beberapa fungsi yang digunakan untuk operasi pengolahan string.



DEKLERASI VARIABEL

Data dapat berupa berbagai bilangan dan berbagai karakter yang dipakai untuk mewakili suatu informasi. Data yang nilainya dapat berubah pada saat program dijalankan disebut variabel.
VARIABEL
Data yang nilainya dapat berubah pada saat program dijalankan disebut variabel. Variabel mempunyai nama, tipe dan dapat dipakai untuk menyimpan suatu nilai.
Aturan penamaan variabel :
1.       Terdiri dari 1 sampai 31 karakter.
2.       Dimulai dengan huruf atau tanda garis bawah (_).
3.       Karakter kedua dapat berupa huruf, bilangan atau tanda garis bawah (_).
4.       case sensitive, artinya suatu nama variabel yang memakai huruf besar akan diperlakukan berbeda dengan yang memakai huruf kecil
5.       Dalam C++ variabel biasanya ditulis dengan huruf kecil sedang konstanta dengan huruf besar.
6.       Tidak boleh sama dengan perintah-perintah C++ atau sama dengan nama-nama fungsi dalam library, misalnya cout adalah nama variabel yang tidak sah.
Contoh pemakaian variabel pada suatu pernyataan adalah sbb:
C=’Z';
A =1000.00* A;
pada pernyataan-pernyataan di atas C dan A adalah variabel.


DEKLERASI KONSTANTA

Data dapat berupa berbagai bilangan dan berbagai karakter yang dipakai untuk mewakili suatu informasi. Data dari suatu program yang diberi suatu nilai sebelumnya dan nilai tersebut tetap/tidak berubah pada saat program dijalankan dikenal sebagai konstanta.
KONSTANTA
Escape sequence
Artinya
\a
Bell
\b
Backspace
\f
Formfeed
\n
Newline
\r
Carriage return
\t
Tab
\v
Vertical tab
\\
Backslash
\?
Question mark
\’
Single quote
\”
Double quote







C++ mempunyai konstanta yang berbasis numerik dan konstanta yang berbasis karakter. Misalnya: 456 dan -78 adalah konstanta berbasis numerik dengan tipe integer/bilangan bulat. 89.67 adalah konstanta berbasis numerik dengan tipe floating point/bilangan pecahan.  ’c’ dan “Bahasa C++” adalah konstanta berbasis karakter. Tanda petik tunggal (‘) dan tanda petik ganda (“) bukan merupakan bagian dari konstanta.
Konstanta yang terdiri dari satu karakter yang dikenal sebagai konstanta karakter harus diawali dan diakhiri dengan tanda petik tunggal(‘). Aksi-aksi tertentu misalnya backspace, pindah ke baris baru atau membunyikan bell diwakili oleh karakter karakter ASCII dikenal sebagai nonprinting characters. C++ menyatakan nonprinting characters ini dengan escape sequence yaitu dengan menambahkan tanda backslash (\) didepan karakter tertentu misalnya:
baris_baru = ‘\n’;
Escape sequence selengkapnya ditunjukkan oleh tabel dibawah ini:
Konstanta yang terdiri lebih dari satu karakter yang dikenal sebagai konstanta string harus diawali dan diakhiri dengan tanda petik ganda (“).





CONTOH STRING
“Ini adalah program C++ saya pertama”
“ 12345678 “
Jika suatu konstanta string terdiri dari digit-digit numerik maka operasi matematik tidak dapat dilakukan.  Dalam C++ suatu string mempunyai tipe char, karena setiap karakter memerlukan 1 byte memori, diperlukan suatu array yaitu kumpulan dari tipe char untuk membentuk suatu string.
C+ + mempunyai kata kunci const yang dapat dipakai untuk mengubah suatu variabel menjadi suatu konstanta. Contoh pemakaian konstanta pada suatu pernyataan adalah sbb:
C=’Z';
A =1000.00* A;
pada pernyataan-pernyataan di atas ‘Z’ dan 1000.00 adalah konstanta.









FUNGSI MANIPULASI STRING

String dapat dimanipulasi dengan aturan tertentu. Di mana bahasa C++ telah menyediakan semua ini ke dalam pustakanya. Berikut adalah fungsi-fungsi yang digunakan untuk melakukan manipulasi string :
o Fungsi strcat
Fungsi strcat digunakan untuk menggabungkan dua string menjadi satu.
o Fungsi strlen
Fungsi strlen digunakan untuk menghitung panjang karakter pada suatu string. strlen adalah fungsi yang bertipe data integer.
o Fungsi strcpy
Fungsi strcpy digunakan untuk menyalin isi string ke suatu variabel.
o Fungsi strupr
Fungsi strupr digunakan untuk mengubah semua karakter huruf yang terdapat pada suatu variabel menjadi huruf besar semua (Uppercase).
o Fungsi strlwr
Fungsi strlwr digunakan untuk mengubah semua karakter huruf yang terdapat pada suatu variable menjadi huruf kecil semua (Lowercase).
CONTOH PROGRAM :




#include <cstdlib>

#include <iostream>

using namespace std;

int main(int argc, char *argv[])
 {
 int pilihan;
 char registrasi[50];
 char kata1[100],kata2[100];

cout<<"<<<<< Selamat datang di Dunia string >>>>> ";
 cout<<endl;
 cout<<"Registrasi Nama : ";
 cin.getline(registrasi,sizeof(registrasi));
 cout<<endl;
 system("cls");
 cout<<" # REGISTRASI BERHASIL #"<<endl<<endl;
 cout<<"Nama Anda adalah ";
 cout<<"<<<< "<<registrasi;
 cout<<" >>>>"<<endl;
 cout<<endl;

cout<<"Fungsi - fungsi dalam string sebagai berikut ==>"<<endl;
 cout<<endl;

cout<<" 1. Fungsi strlen"<<endl;
 cout<<" ==> Merupakan fungsi untuk menghitung panjang kalimat atau kata "<<endl;
 cout<<" Contoh:"<<endl;
 cout<<" Masukkan Kalimat atau kata Anda: ";
 cin.getline(kata1,sizeof(kata1));
 cout<<" Hasil: "<<strlen(kata1)<<endl;
 cout<<endl;
 cout<<" ======================================================";
 cout<<endl;

cout<<" 2. Fungsi strupr"<<endl;
 cout<<" ==> Merupakan fungsi untuk mengubah dari huruf kecil kehuruf besar"<<endl;
 cout<<" Contoh:"<<endl;
 cout<<" Masukkan Kalimat atau kata Anda: ";
 cin.getline(kata1,sizeof(kata1));
 cout<<" Hasil: "<<strupr(kata1)<<endl;
 cout<<endl;
 cout<<" ======================================================";
 cout<<endl;

cout<<" 3. Fungsi strlwr"<<endl;
 cout<<" ==> Merupakan fungsi untuk mengubah dari huruf kapital kehuruf kecil"<<endl;
 cout<<" Contoh:"<<endl;
 cout<<" Masukkan Kalimat atau kata Anda dengan huruf kapital: ";
 cin.getline(kata1,sizeof(kata1));
 cout<<" Hasil: "<<strlwr(kata1)<<endl;
 cout<<endl;
 cout<<" ======================================================";
 cout<<endl;

cout<<" 4. Fungsi strcpy"<<endl;
 cout<<" ==> Merupakan fungsi untuk meng Copy kalimat atau kata"<<endl;
 cout<<" Contoh:"<<endl;
 cout<<" Masukkan Kata: ";
 cin.getline(kata1,sizeof(kata1));
 cout<<" Masukkan kata yang akan dicopy: ";
 cin.getline(kata2,sizeof(kata2));
 cout<<" Hasil: "<<strcpy(kata1,kata2)<<endl;
 cout<<endl;
 cout<<" ======================================================";
 cout<<endl;

cout<<" 5. Fungsi strcat"<<endl;
 cout<<" ==> Merupakan fungsi penambah Kalimat atau kata"<<endl;
 cout<<" Contoh:"<<endl;
 cout<<" Contoh masukkan Kalimat atau kata Anda: ";
 cin.getline(kata1,sizeof(kata1));
 cout<<" Masukkan kata yang akan ditambahkan: ";
 cin.getline(kata2,sizeof(kata2));
 cout<<" Hasil: "<<strcat(kata1,kata2)<<endl;
 cout<<endl;
 cout<<" ======================================================";
 cout<<endl;

cout<<" 6. Fungsi strcmp"<<endl;
 cout<<" ==> Merupakan fungsi untuk membandingkan"<<endl;
 cout<<" Contoh:"<<endl;
 cout<<" inputan pertama: ";
 cin.getline(kata1,sizeof(kata1));
 cout<<" inputan kedua: ";
 cin.getline(kata2,sizeof(kata2));
 cout<<" Hasil: "<<strcmp(kata2,kata1)<<endl;
 cout<<endl;
 cout<<" ======================================================";
 cout<<endl;

cout<<" 7. Fungsi strrev"<<endl;
 cout<<" ==> Merupakan fungsi pembalik"<<endl;
 cout<<" Contoh :"<<endl;
 cout<<" Masukkan Kalimat atau kata Anda: ";
 cin.getline(kata1,sizeof(kata1));
 cout<<" Hasil: "<<strrev(kata1)<<endl;
 cout<<endl;
 cout<<" ======================================================";
 cout<<endl;

cout<<" 8. Fungsi strstr"<<endl;
 cout<<" ==> Merupakan fungsi untuk mencari huruf tiap kata"<<endl;
 cout<<" Contoh:"<<endl;
 cout<<" Masukkan Kalimat atau kata Anda: ";
 cin.getline(kata1,sizeof(kata1));
 cout<<" Masukkan kata yang akan dicari: ";
 cin.getline(kata2,sizeof(kata2));
 cout<<" Hasil: "<<strstr(kata1,kata2)<<endl;
 cout<<endl;
 cout<<" ======================================================";
 cout<<endl;

system("PAUSE");
 return EXIT_SUCCESS;
 }


Operasi input/output dalam bahasa C
Printf fungsi ini di gunakan untuk menampilkan keluaran layar.perhatikan penggunaan printf di bawah ini:
#include
main()
{
int nilai=3;
printf(“Bahasa C menyenangkan \n”);
printf(“nilai = %d \n”,nilai);
}


Fungsi printf yang pertama disertai dengan escape sequance yang berfungsi untuk pindah baris. Jadi dengan fungsi printf yang pertama maka kursor akan turun satu baris. Sedangkan fungsi printf yang kedua dimana terdapat format data %d berfungsi untuk menampilkan data dengan tipe integer. Jangan lupa dengan variabel yang menyimpan nilai tersebut harus disertakan setalah tanda petik terakhir.

Tampilan program tersebut :
Bahasa C menyenangkan
nilai = 3

1. puts
Cara lain untuk menampilkan suatu keluaran ke layar adalah menggunakan fungsi puts. Tetapi fungsi puts hanya digunakan untuk menampilkan nilai string dan sudah mengandung line feed atau escape sequence ganti baris. Perhatikan contoh berikut :

#include
main()
{
puts(“Bahasa C menyenangkan ”);
puts(“Belajar bahasa C “);
}

Kini tidak perlu lagi mengguanakan “\n” untuk ganti baris baru. Tampilan program :
Bahasa C menyenangkan
Belajar bahasa C

2. putchar
Fungsi ini digunakan untuk menampilkan sebuah karakter saja dan tidak mengandung escape sequence “\n”. perhatikan contoh berikut :

#include
main()
{
Char a;
printf(“a = ”);scanf(“%c”,&a);
printf(“Data yang anda masukkan ”);
putchar(‘\n’);
putchar(a);
}

Pada putchar yang petama kita ingin membuat program untuk ganti baris menggunakan “\n”. kita menggunakan tanda petik tunggal (‘) karena karakter dalam program akan dikenal jika diberi tanda petik tunggal. Fungsi putchar ini hanya bisa menampilkan satu buah karakter saja sehingga apapun nilai yang kita masukkan hanya karakter pertama yang akan ditampilkan.

Berikut tampilan programnya :
a = 12
Data yang anda masukkan
1

3. scanf
Jika kita ingin memasukkan data dari keyboard, kita dapat menggunakan fungsi scanf ini. Data selanjutnya akan didefenisikan sebagai data variabel. Jika fungsi scanf ini digunakan untuk membaca data dengan tipe array, karakter yang selanjutnya kita sebut dengan istilah string, maka fungsi ini hanya akan membaca data sampai ditemukan blank. Dengan demikian nilai setelah blank dianggap bukan lagi nilai dari variabel yang akan mengisi variabel tersebut. Fungsi scanf lebih cocok digunakan untuk data-data numerik.

Fungi scanf jika digunakan maka harus disertai operator penanda alamat & didepan nama variabel yang digunakan untuk menyimpan data tersebut. Jika tidak mempergunakan operator alamat & ini maka ketika data diinputkan akan muncul pesan error Segmentation fault. Sedangkan untuk data string tidak perlu menggunakan operator ini. Tetapi jika digunakan tidak menjadi masalah. Fungsi scanf biasanya digunakan bersama-sama dengan fungsi printf. Perhatikan contoh berikut :

#include
main()
{
char a[25];
int b;
printf(“a = ”);scanf(“%s”,a);
printf(“b = ”);scanf(“%d”,&b);
printf(“Data yang anda masukkan \n”);
printf(“a = %s \n”,a);
printf(“b = %d \n”,b);
}

Setiap kali memasukkan data harus diikuti dengan menekan ENTER. Berikut adalah tampilan programnya.
a = naufal
b = 12
Data yang anda masukkan
a = naufal
b = 12

4. gets
Jika kita menggunakan fungsi scanf untuk membaca data yang bertipe string, maka data tersebut hanya akan dibaca sampai ditemukan spasi. Misalnya nama “naufal rasendriya” hanya kata “naufal” yang akan dibaca oleh program, sedangkan kata “resendriya” tidak terbaca karena sebelum kata tersebut program telah menemukan spasi yang mengakibatkan data ke varibel yang menyimpan nama dianggap selesai.

Untuk keperluan pemasukan data string yang panjang dipisahkan dengan spasi, bahasa C menyediakan fungsi gets. Perhatikan contoh berikut ini :

#include
main()
{
char nama[25];
char alamat[50];
printf(“Nama : ”);gets(nama);
printf(“Alamat : ”);gets(alamat);
printf(“\n”);
printf(“Data yang anda masukkan \n”);
printf(“Nama : %s \n”,nama);
printf(“Alamat : %s \n”,alamat);
}

Tampilan program :

Nama :
Alamat :

Data yang anda masukkan
Nama :
Alamat :


5. getchar
Jika ingin memasukkan sebuah nilai karakter ke variabel yang bertipe karakter maka kita dapat menggunakan perintah getchar. Perhatikan contoh program berikut ini :

#include
main()
{
Char nilai;
printf(“Nilai anda : ”);
nilai=getchar();
printf(“Nilai yang anda masukkan = %c \n”,nilai );
}

Berikut tampilannya :
Nilai anda : A
Nilai yang anda masukkan = A

Tidak ada komentar:

Posting Komentar

Ads Inside Post