bu naim dasprog - pertemuan 7 string
DESCRIPTION
Materi Dasar Pemrograman C++TRANSCRIPT
42510011 0010 1010 1101 0001 0100 1011
STRING
4251
0011 0010 1010 1101 0001 0100 1011
String• Didalam C tidak dikenal tipe string.
• Untuk menyimpan string diperlukan beberapa karakter
• Contoh : nama Faris.
– Terdiri dari 5 huruf F, a, r, i dan s.
– Nama terdiri dari beberapa huruf
– Dideklarasikan dan di inisialisasi sbb:
char L1 = ‘F', L2 = 'a', L3 = ‘r', L4 = ‘i', L5 = 's';
Untuk mencetak:
cout << “Nama = " << L1 << L2 << L3 << L4 << L5;
4251
0011 0010 1010 1101 0001 0100 1011
String(Array Karakter)
• Untuk menyimpan string yang panjang diperlukan banyak karakter
• Diperlukan array
• Deklarasi:char nama_string[panjang karakter];
• Contoh: char Nama[20]; char JudulBuku[40];char Hari[7];
4251
0011 0010 1010 1101 0001 0100 1011
Inisialisasi Array karakter
• Array dengan tipe numerik:
int Number[] ={ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
• Array dengan tipe karakter:
char Nama[6] = { ‘F', 'a', ‘r', ‘i', 's' };
• Masing-masing anggota array karakter dapat diakses berdasar indeksnya.
void main() {
char Nama[6] = { ‘F', 'a', ‘r', ‘i', 's' };
cout<<“Nama : "<<Nama[0]<<Nama[1]<<Nama[2]<<Nama[3]<<Nama[4];
}
4251
0011 0010 1010 1101 0001 0100 1011
• Teknik lain untuk inisialisasi array, contoh: char Name[12] = “Faris";
• Jika sudah diinisialisasi, ukuran array dapat dihilangkan. Sehingga menjadi :
char Name[] = “Faris";
• Setelah deklarasi, kompiler akan menghitung jumlah karakter dan ditambahkan satu tempat untuk null-terminated (\0).
F a r i s \0
4251
0011 0010 1010 1101 0001 0100 1011
Akses String• Input array karakter
contoh :void main()
{ char Hari[12]; cout << “Masukkan nama hari: "; cin >> Hari; }
• Cetak array karakter – contoh:
void main() { char Hari[12];
char EndMe[] = "\nPress any key to continue..."; cout << “Masukkan nama hari: "; cin >> Hari; cout << “Sekarang hari " << Hari; cout << EndMe;
}
4251
0011 0010 1010 1101 0001 0100 1011
Array karakter Multidimensi
• Untuk menyimpan beberapa string diperlukan array karakter multidimensi
• Array dua dimensi dengan tipe numerik: int Number[2][6] = { { 31, 28, 31, 30, 31, 30 }, { 31, 31, 30, 31, 30, 31 } };
• Untuk array 2 D string:– dimensi pertama merupakan jumlah string pada variabel tersebut– dimensi kedua menunjukkan banyaknya karakter untuk masing-masing
string.
Contoh: char NamaMhs[4][10] = { “Aditya", “Budi", “Charles", “Doni" };
NamaMhs adalah array dengan 4 string, dan tiap string mempunyai maksimal 9 karakter (+1 untuk karakter null-terminated).
4251
0011 0010 1010 1101 0001 0100 1011
Akses Array Karakter Multidimensi
• Untuk membaca setiap string, tulis nama variabel dan indeks dari baris.
• Contoh: void main()
{ char NamaMhs[4][10] = {“Aditya", “Budi", “Charles", “Doni" };
cout << "Nama: ";
cout << "\nMhs 1: " <<NamaMhs[0];
cout << "\nMhs 2: " << NamaMhs[1];
cout << "\nMhs 3: " <<NamaMhs[2];
cout << "\nMhs 4: " << NamaMhs[3];
}
4251
0011 0010 1010 1101 0001 0100 1011
Fungsi-Fungsi Manipulasi String
• Fungsi strlen()– Untuk mengetahui banyaknya karakter pada suatu string.
• Fungsi strcat() – Untuk menambahkan dua string
• Fungsi strncat()– Untuk menambahkan sejumlah karakter pada satu string kesuatu string yang lain.
• Fungsi strcpy()– menyalin satu string ke string yang lain.
• Fungsi strncpy()– menyalin sejumlah karakter dari string yang lain.
• Fungsi strcmp– Membandingkan 2 string
• Fungsi stricmp– Membandingkan dua string tanpa memandang huruf besar atau huruf kecil
• Fungsi strlwr() – Digunakan untuk mengkonversikan string ke huruf kecil
• Fungsi strupr() – Digunakan untuk mengkonversikan string ke huruf besar
• Fungsi strchr() – Memeriksa apakah huruf pertama pada string sesuai dengan karakter tertentu.
• Fungsi strrchr() – Memeriksa apakah huruf terakhir pada string sesuai dengan karakter tertentu
4251
0011 0010 1010 1101 0001 0100 1011
Fungsi strlen()
• Untuk mengetahui banyaknya karakter pada suatu string.
• syntax : int strlen(const char* Value);
• Contoh:void main() { char School[] = “UNESA Surabaya"; int Length = strlen(School); cout << “Panjang " << School << “ adalah " << Length << " karakter\n\n"; }
4251
0011 0010 1010 1101 0001 0100 1011
Fungsi strcat()
• Untuk menambahkan dua string
• syntax : char *strcat(char *Destination, const char *Source);
– Destination adalah string pertama yang akan ditambahkan dan untuk menyimpan hasil penambahan string.
– Source adalah string kedua yang ingin ditambahkan pada string pertama.
• Contoh:void main() { char *Make = "Ford "; char *Model = "Explorer"; cout << "Originally, Make = " << Make; strcat(Make, Model); cout << "\n\nAfter concatenating, Make = " << Make << endl; }
4251
0011 0010 1010 1101 0001 0100 1011
Fungsi strncat()
• Untuk menambahkan sejumlah karakter pada satu string kesuatu string yang lain.
• Syntax:char* strncat(char* Destination, const char* Source, int Number); – number adalah banyaknya karakter pada source yang akan dijumlahkan.
• Contoh:void main() { char *Make = "Ford "; char *Model = "Explorer";
cout << "Originally, Make = " << Make; strncat(Make, Model, 3); cout << "\n\nAfter concatenating, Make = " << Make;}
4251
0011 0010 1010 1101 0001 0100 1011
• menyalin satu string ke string yang lain. • syntax :
char* strcpy(char* Destination, const char* Source); – Destination adalah string yang akan diganti, – Source adalah string yang akan disalin.
• Dua kegunaan fungsi strcpy() : Mengganti string yang sudah ada atau untuk inisisalisasi string.
• Contoh inisialisasi string: char CarName[20]; strcpy(CarName, "Toyota Camry"); cout << "Car Name: " << CarName;
• Contoh menyalin string:void main() { char CarName1[] = "Ford Escort"; char CarName2[] = "Toyota 4-Runner"; cout << "\nFirst Car: " << CarName1; cout << "\nSecond Car: " << CarName2; strcpy(CarName2, CarName1); cout << "\n\nAfter using strcpy()..."; cout << "\nFirst Car: " << CarName1; cout << "\nSecond Car: " << CarName2 << endl; }
Fungsi strcpy()
4251
0011 0010 1010 1101 0001 0100 1011• menyalin sejumlah karakter dari string yang lain.• syntax:
char* strncpy(char* Destination, const char* Source, int Number); – Number menunjukkan banyaknya karakter dari source yang akan disalin.
• Contoh:void main() { char CarName1[] = "Ford Escort"; char CarName2[] = "Toyota 4-Runner"; cout << "\nFirst Car: " << CarName1; cout << "\nSecond Car: " << CarName2; strncpy(CarName2, CarName1, 8); cout << "\n\nAfter using strncpy() for 8 characters"; cout << "\nFirst Car: " << CarName1; cout << "\nSecond Car: " << CarName2 << endl; }
Fungsi strncpy()
4251
0011 0010 1010 1101 0001 0100 1011
• Membandingkan 2 string
• syntax: int strcmp(const char* S1, const char* S2);
• Hasil perbandingan:• negative jika S1 < S2 • 0 jika S1 dan S2 sama • positive jika S1 > S2
void main() { char *FirstName1 = "Andy"; char *FirstName2 = "Charles";
char *LastName1 = "Stanley"; char *LastName2 = "Stanley"; int Value1 = strcmp(FirstName1, FirstName2); int Value2 = strcmp(FirstName2, FirstName1); int Value3 = strcmp(LastName1, LastName2); cout << “Hasil perbandingan 1" << Value1 << endl; cout << " Hasil perbandingan 2" << Value2 << endl; cout << " Hasil perbandingan 3" << Value3;}
Fungsi strcmp
4251
0011 0010 1010 1101 0001 0100 1011• Membandingkan dua string tanpa memandang huruf besar atau huruf kecil
• syntax :int stricmp(const char* S1, const char* S2);
• Hasil perbandingan:– negative jika S1 < S2 – 0 jika S1 dan S2 sama – positive jika S1 > S2
Fungsi stricmp()
4251
0011 0010 1010 1101 0001 0100 1011
Fungsi strlwr()
• Digunakan untuk mengkonversikan string ke huruf kecil
• syntax : char *strlwr(const char *S);
• Contoh:void main()
{ char CustomerAddress[] = "4812 LOCKWOOD Drive #F04";
cout << "Customer Address: " << customerAddress << endl;
char *ShippingAddress = strlwr(CustomerAddress);
cout << "Shipping Address: " << ShippingAddress << endl;
}
4251
0011 0010 1010 1101 0001 0100 1011• Untuk mengkonversikan string ke huruf besar.
• syntax : char *strupr(const char *S);
• Contohvoid main()
{ char Drink[] = "100% Apple Juice";
char *SayItLoud;
cout << "What is that drink? " << Drink << endl;
SayItLoud = strupr(Drink);
cout << "Say it loud: " << SayItLoud << endl;
}
Fungsi strupr()
4251
0011 0010 1010 1101 0001 0100 1011• Memeriksa apakah huruf pertama pada string sesuai dengan karakter tertentu.
• syntax :char* strchr(const char* S, char c); – S string yang akan diperiksa– C karakter yang dicari
• Hasil: jika c ada pada huruf pertama S fungsi akan memberikan hasil string S, jika tidak ada akan memberikan nilai NULL.
Fungsi strchr()
4251
0011 0010 1010 1101 0001 0100 1011
Fungsi strrchr()
• Memeriksa apakah huruf terakhir pada string sesuai dengan karakter tertentu
• syntax :char* strrchr(const char* S, char c);
• Hasil: jika c ada pada huruf terakhir S fungsi akan memberikan hasil karakter yang sesuai, jika tidak ada akan memberikan nilai NULL.