String pada c++

String dapat berupa konstanta atau variabel. String sebagai variabel belum
diperkenalkan tetapi konstanta string sejak awal sudah diperkenalkan, misalnya pada
pernyataan :
cout<<”Belajar keras biar lulus ujian “<Dalam C++ tipe string diartikan sebagai larik karakter, sehingga dideklarasikan
sebagai : char nama_variabel [jumlah_maksimal_karakter];
Contoh dekalrasinya adalah :
char kata[20];
Artinya : dideklarasikan variabel kata sebagai string yang terdiri dari 20 karakter termasuk
null (‘\0’) yang menyatakan akhir dari string.
Dalam memasukkan tipe data string, operator << pada cin hanya bisa membaca
masukkan hingga terdapat spasi, tab, atau enter. Solusi untuk mengatasi masalah tersebut
dengan menggunakan fungsi get() dan getline() pada obyek cin dalam bentuk :
cin.get(nama_variabel_string, jumlah_maksimal_karakter) dan
cin. getline (nama_variabel_string, jumlah_maksimal_karakter),
contohnya : cin. get (kata,20); dapat di cin.get(kata, sizeof(kata));
cin. getline(kata,20); tulis cin,getline(kata, sizeof(kata));
Contoh selengkapnya terdapat di bagian PRAKTEK.
Modul 5 – String
19
Dalam bahasa C++ terdapat fungsi-fungsi yang berlaku pada string antara lain :
• gcount() : menghitung jumlah karakter
• strcpy() : menyalin string
• strlen() : menghitung panjang string
• strrev() : membalik isi string
• strlwr() : merubah ke huruf kecil
• strupr() : merubah ke huruf capital
Terdapat juga beberapa makro (semacam fungsi, tetapi didefinisikan dengan #define) yang
berbasis karakter, antara lain :
• islower( ) : hasil benar jika argumennya huruf kecil
• isupper( ) : hasil benar jika argumennya huruf kapital
• ispunct( ) : hasil benar jika argumennya berupa tanda baca
• isspace( ) : hasil benar jika argumennya berupa karakter spasi, tab, dan enter.
Keseluruhan makro didefinisikan pada file CTYPE.H; sehingga pada program harus dituliskan
# include ctype.h
C. PRAKTEK
nomor 1
Cobalah ketiga program berikut, amati hasilnya dan buatlah kesimpulan dari hasil pengamatan
Anda !
/*PROGRAM PERTAMA */
#pragma argsused
#include iostream.h
#include conio.h
void main()
{
char kalimat[20];
cout<<"Masukkan kalimat (lebih dari 2 kata) : "<cin>>kalimat;
cout<<"Kalimat yang tadi dimasukkan adalah : "<getch();
}
/* PROGRAM KEDUA */
#pragma argsused
#include iostream.h
#include conio.h
Modul 5 – String
20
void main()
{
char kalimat[20];
char kalimatku[25];
cout<<"Masukkan kalimat (lebih dari 2 kata) : "<cin.get(kalimat,sizeof(kalimat));
cout<<"masukkan kalimat yang lain : "<cin.get(kalimatku,sizeof(kalimatku));
cout<<"Kalimat pertama yang tadi dimasukkan adalah : "<cout<<"Kalimat kedua yang tadi dimasukkan adalah : "<getch();
}
/* PROGRAM KETIGA */
#pragma argsused
#include iostream.h
#include conio.h
void main()
{
char kalimat[20];
char kalimatku[25];
cout<<"Masukkan kalimat (lebih dari 2 kata) : "<cin.getline(kalimat, sizeof(kalimat));
cout<<"masukkan kalimat yang lain : "<cin.getline(kalimatku, sizeof(kalimatku));
cout<<"Kalimat pertama yang tadi dimasukkan adalah : "<cout<<"Kalimat kedua yang tadi dimasukkan adalah : "<getch();
}
nomor 2
Cobalah program 2 : program untuk menghitung banyaknya huruf capital, huruf kecil,
tanda baca, dan jumlah spasi dalam suatu kalimat .
/* PROGRAM 2 */
#pragma argsused
#include iostream.h
#include conio.h
#include ctype.h
Modul 5 – String
21
void main()
{
char kalimat[100];
int i, kapital=0, kecil=0,
spasi=0,tbaca = 0;
clrscr;
cout<<"Masukkan kalimat : "<cin.getline(kalimat,sizeof(kalimat));
for (i=0;kalimat[i];i++)
{
if (islower(kalimat[i])) kecil++;
if (isupper(kalimat[i])) kapital++;
if (ispunct(kalimat[i])) tbaca++;
if (isspace(kalimat[i])) spasi++;
}
cout<<"Jumlah huruf kapital : "<cout<<"Jumlah huruf kecil : "<cout<<"Jumlah tanda baca : "<cout<<"Jumlah spasi : "<getch();
}
nomor 3
Kembangkan program nomor 2 di atas sehingga dapat digunakan untuk merinci tanda
baca yang ada dalam kalimat yang dimasukkan, tampilannya sebagai berikut :
Masukkan kalimat :
Lia, Eno, dan dia sedang makan; betulkah ?
Jumlah huruf kapital : 2
Jumlah huruf kecil : 21
Jumlah spasi : 6
Jumlah tanda baca : 4
jumlah titik : 0
jumlah koma : 2
jumlah tanda tanya : 1
jumlah tanda baca yang lain : 1

0 komentar:

Posting Komentar