Artikel ini akan membantu kita memahami cara menggantikan jujukan konsonan berturut-turut dalam rentetan tertentu dengan panjangnya. Konsonan ialah rangkaian huruf yang bukan vokal. Di sini, pertama sekali kita perlu menentukan huruf mana dalam rentetan adalah konsonan.
Sebagai contoh, dalam perkataan "abcdiopqrsu", jujukan konsonan "bcd" dan "pqrs". Seterusnya, kami akan menggantikan setiap jujukan konsonan dengan panjangnya. Jadi perkataan "bcd" akan digantikan dengan "3" kerana terdapat tiga konsonan berturut-turut, begitu juga perkataan "pqrs" akan digantikan dengan "4" kerana terdapat empat konsonan yang berturutan.
Pertama, kami akan mentakrifkan fungsi ‘isConsonant()’, yang menerima nilai aksara sebagai parameter untuk mengesahkan sama ada ia adalah konsonan dan mengembalikan hasilnya sebagai nilai Boolean. Fungsi ini mengembalikan TRUE jika aksara yang diberikan ialah konsonan, sebaliknya palsu.
Cari penjelasan logik untuk aksara konsonan
(dengan == 'a' || dengan == 'e' || dengan == 'i' || dengan == 'o' || dengan == 'u'):
con ialah nama pembolehubah.
==: Operator equals menetapkan nilai vokal kepada pembolehubah.
||: Menggunakan operator logik ATAU bitwise, berbilang vokal boleh dibenarkan untuk menetapkan nilai 'con' pembolehubah.
Jika watak itu ialah konsonan, masukkan gelung while dan teruskan lelaran apabila konsonan seterusnya ditemui. Semasa setiap lelaran gelung while, pemboleh ubah kaunter 'counter' akan dinaikkan. Selepas melengkapkan gelung while, fungsi akan menambah nilai pembilang pada rentetan yang terhasil menggunakan fungsi 'to_string'.
Kemudian kami menyemak sama ada watak itu bukan konsonan dan fungsi itu hanya menambah watak itu pada rentetan "hasil".
Akhir sekali, kami akan menggunakan pernyataan cout untuk mencetak nilai rentetan yang terhasil
Dalam aplikasi ini kita akan belajar cara menggantikan konsonan dan memberikan panjangnya.
#include<iostream> #include<string> using namespace std; bool isConsonant(char con) { //Check whether the given character is consonant or not. return !( con == 'a' || con == 'e' || con == 'i' || con == 'o' || con == 'u'); } int main() { string str = " abcdiopqrsu"; string result; for( int i=0; i < str.length(); i++) { if ( isConsonant(str[i]) ) { //Here we have to find the consonant and count its length. int counter = 1; while( isConsonant( str[i+1] ) ) { counter++; i++; } result += to_string( counter ); } else { result += str[i]; } } cout<< result << endl ; return 0; }
1a3io4u
Kami meneroka konsep jujukan konsonan dan panjangnya dalam rentetan tertentu. Kami melihat cara menggunakan "sama dengan" (==) dan "logik bitwise ATAU" (||) untuk menyemak aksara konsonan. Kemudian kami menetapkan pembolehubah rentetan dan mengira aksara bukan konsonan dengan jumlah nombornya. Aplikasi berikut digunakan untuk pemprosesan teks, pemampatan data dan pengecaman corak.
Atas ialah kandungan terperinci Gantikan setiap urutan konsonan dalam rentetan yang diberikan dengan panjangnya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!