1-Masala. Nuqta bilan tugaydigan belgilar ketma-ketligi berilgan


Download 127.24 Kb.
bet1/8
Sana18.06.2023
Hajmi127.24 Kb.
#1583507
  1   2   3   4   5   6   7   8
Bog'liq
Mirzashokirov Algoritm


ORALIQ NAZORAT
1-Masala. Nuqta bilan tugaydigan belgilar ketma-ketligi berilgan:
a) berilgan belgining barcha qo'shnilarini toping (birinchi va oxirgi belgilarni qo'shni deb hisoblang);
Algoritmi:
1. Boshlang'ich holat:
- Qiymatlar to'plami: []
- Belgi: Berilgan belgi ketma-ketligi (masalan, "abcd")
2. Tengsizlik tekshirish:
- Agar belgi bo'sh bo'lsa, jarayonni tugatamiz
3. Qiymat qo'shish:
- Belgining birinchi qo'shnisini qiymatlar to'plamiga qo'shamiz
- Belgini bir qo'shni miqdorida kesib olib qo'yamiz
4. Qiymat qo'shish:
- Berilgan belgining oxirgi qo'shnisini qiymatlar to'plamiga qo'shamiz
- Belgini oxirgi qo'shni miqdorida kesib olib qo'yamiz
5. Berilgan belgining o’rtasidagi qo'shnilarni topish:
- Qiymatlarga nechta element qo'shilganini hisoblash uchun soni (n) aniqlanadi
- Agar qiymat soni juft bo'lsa, ikkita qo'shni kesib olib qo'yiladi
- Agar toq bo'lsa, o'rtadagi qo'shni to'liq sifatida qo'shib olinadi
6. Jarayonni tugatamiz.
Dasturning C# dagi matni:
using System;

namespace MirzashokirovOraliq
{
class Program
{
public static void Main(string[] args)
{
string input = "Nuqta bilan tugaydigan belgilar ketma-ketligi berilgan.";
char[] delimiter = {' ', ',', '.', ';', ':'};
string[] words = input.Split(delimiter, StringSplitOptions.RemoveEmptyEntries);
int length = words.Length;
char[] characters = new char[length];
for (int i = 0; i < length; i++) 
{
characters[i] = words[i][0];
characters[i] = words[i][words[i].Length - 1];
}
Console.WriteLine("Barcha qo'shnilar: " + string.Join(" ", characters));
Console.ReadKey();

}
}
}


Natija:

b) chap qo'shnisi o'ng qo'shnidan katta bo'lgan belgilar sonini sanash (birinchi va oxirgi elementni qo'shni deb hisoblang);
Algoritmi:
1. Belgi ketma-ketligini o'qiymiz.
2. Chapdan boshlab, birinchi belgi bilan birinchi qator elementini o'zlashtiramiz va qiymatini 1 qo'shib yozamiz.
3. Oxirgi belgi bilan oxirgi qator elementini o'zlashtiramiz va qiymatini 1 qo'shib yozamiz.
4. Endi chapdan ikkinchi belgiga, ya'ni quyidagi elementga o'tib, undan katta belgi topilgandan keyin, nunta belgisi bilan uning qiymatini 1 ga oshirib yozamiz.
5. Keyinchalik oxirgi belgiga, ya'ni avvalgi belgiga qaytib, undan katta belgi topilgandan keyin, nunta belgi bilan uning qiymatini 1 ga oshirib yozamiz.
6. Belgi ketma-ketligi tugaganidan so'ng, o'lchamlarni yig'indisini topib, yangi nunta belgisi bilan ikki o'lchamni yozamiz.
7. Yakunlanish:
- Birinchi qator elementi haqida ma'lumot: chap qo'shnidan 1 belgi uzunligida katta bo'lgan belgilar soni
- Oxirgi qator elementi haqida ma'lumot: o'ng qo'shnidan 1 belgi uzunligida katta bo'lgan belgilar soni

Download 127.24 Kb.

Do'stlaringiz bilan baham:
  1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling