Listing 9.3. Shunday matn berilgan bo‘lsinki unda kamida 2 ta so‘z va har bir so‘z orasida kamida 2 tadan probel bor bo‘lsin!
Listing 9.4. Berilgan matndagi ishtirok etgan barcha belgilarni kichik registrga o‘kazing va har bir belgini necha martadan ishtirok etganligini aniqlovchi dastur tuzing
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace stroka2{ class Program { static void Main(string[] args) { String matn; Console.Write("Matnni kiriting:"); matn = Console.ReadLine().ToLower(); Console.WriteLine("Natijalar:\n"+matn); string tmp_matn=null;// = matn; for (int i = 0; i < matn.Length; i++) { if (string.IsNullOrEmpty(tmp_matn)) tmp_matn = matn.Substring(0, 1); else { if (tmp_matn.IndexOf(matn[i]) == -1) tmp_matn += matn[i]; } } Console.WriteLine("Matnda ishtirok etgan belgilar:"+tmp_matn); int belgi_soni; Console.Write("Matnda:\n"); foreach (char i in tmp_matn) { belgi_soni = 0; foreach (char j in matn) { if (i == j) belgi_soni += 1; } Console.WriteLine("{0} belgi {1} marta ishtirok etgan", i, belgi_soni); } Console.ReadKey(); } } }
Listing 9.4.Berilgan matndagi ishtirok etgan barcha belgilarni kichik registrga o‘kazing va har bir belgini necha martadan ishtirok etganligini aniqlovchi dastur
Listing 9.5. Ismlardan iborat biror matn oling va unda albatta “Anvar” ismi qatnashgan bo‘lsin.
* Matnda Anvar ismi bor yoki yo‘qligini tekshiring.
* U qaysi pozitsiyalarda qatnashayotganligini aniqlang.
* Matnni boshqa bir o‘zgaruvchiga o‘zlashtiring va undagi Anvar ism(lar)ini o‘chiring, Anvar ism(lar)ini o‘rni eslab qolinsin
* O‘chirilgan Anvar ismlarini o‘rniga "Abror" ism(lar)i qo‘shilsin
* Abror ism(lar)ini String.Replace() metodidan foydalanib, mos ravishda “Baxrom” ismiga almashtiring.
* Matnda Baxrom ismi bor yoki yo‘qligini tekshiring
* Matnni so‘z xolatida va belgi xolati massivlarga joylashtiring
* Natijalarni ekranga chiqaring
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace stroka3 { class Program { static void Main(string[] args) { string matn = "Anvar do‘sti Abdusalomning dadasi Anvarjon akani ishxonasida Anvar ismli bolani uchratdi."; Console.WriteLine("Berilgan matn\n"+matn+"\n"); if (matn.Contains("Anvar")) { Console.WriteLine("Matnda Anvar ismi bor!"); string tmp_matn = matn; string tmp="Anvar"; int i_s=0;//Ism necha marta ishtirok etganligini aniqlash uchun int pos=0;//Pozitsiyani aniqlash uchun while(tmp.Contains("Anvar")) { i_s++; pos=tmp_matn.IndexOf("Anvar"); tmp=tmp_matn.Remove(pos,"Anvar".Length); tmp_matn = tmp; } Console.WriteLine("Matnning Anvar ismi o‘chirilgan xolati:+\n"+tmp_matn); Console.WriteLine("\nMatnda Anvar ismining egallagan pozsiyalari:"); int[] m_arr = new int[i_s]; tmp_matn = matn; tmp = "Anvar"; i_s=0; while (tmp.Contains("Anvar")) { m_arr[i_s] = tmp_matn.IndexOf("Anvar"); tmp = tmp_matn.Remove(m_arr[i_s], "Anvar".Length); tmp_matn = tmp; Console.Write(m_arr[i_s]+i_s*"Anvar".Length + "\t"); i_s++; } i_s = 0; foreach (int i in m_arr) { tmp = tmp_matn.Insert(i+i_s*"Anvar".Length, "Abror"); tmp_matn = tmp; i_s++; } Console.WriteLine("\nMatndan o‘chirilgan Anvar ismlari o‘rniga Abror ismini Insert metodi bilan qo‘shilgani:\n" + tmp); tmp = tmp_matn.Replace("Abror", "Baxrom"); Console.Write("\nMatndagi Abror ismlarini Replace metodidan foydalanib Baxromga almashtirilgan xolati:\n"+tmp); if (tmp.Contains("Baxrom")) Console.WriteLine("\nMatnda Baxrom ismi qo‘shilgan"); else Console.WriteLine("\nMatnda Baxrom ismi qo‘shilmagan"); Console.WriteLine("\nToUpper metodi:\n"+tmp.ToUpper()); Console.WriteLine("\nToLower metodi:\n" + tmp.ToLower()); string [] matn_array=tmp.Split(' '); char[] belgi_array = tmp.ToArray(); i_s=0; foreach(string i in matn_array) { Console.WriteLine("matn_array[{0}]={1}",i_s,i); i_s++; } i_s = 0; foreach (char i in belgi_array) { Console.WriteLine("belgi_array[{0}]={1}", i_s, i); i_s++; } } Console.ReadKey(); } } }