Написать процедуру, подсчитывающую частоту использования группы символов в заданном тексте - C#

Узнай цену своей работы

Формулировка задачи:

Напишите процедуру, подсчитывающую частоту использования группы символов в заданном тексте. Проведите исследование произведений двух поэтов, подсчитав частоты использования гласных и согласных, глухих и звонких согласных. Для представления текстов используйте класс char [].

Решение задачи: «Написать процедуру, подсчитывающую частоту использования группы символов в заданном тексте»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.IO;
  11.  
  12. namespace задание_A
  13. {
  14.     public partial class Form1 : Form
  15.     {
  16.         public Form1()
  17.         {
  18.             InitializeComponent();
  19.         }
  20.  
  21.         private void button1_Click(object sender, EventArgs e)
  22.         {
  23.             int Glas = 0, SoGlas = 0, Glyx = 0, Zvonk = 0;
  24.             //int n = richTextBox1.Text.Length;
  25.             char[] text = richTextBox1.Text.ToCharArray();
  26.             //StringBuilder text = new StringBuilder(richTextBox1.Text);
  27.             //text = richTextBox1.Text;
  28.             for (int i = 0; i < text.Length; i++)
  29.             {
  30.                 if (isGlas(text[i])) Glas++;
  31.                 else
  32.                 {
  33.                     SoGlas++; //вот тут нужная проверка, потому что так учитываются цифры
  34.                     if (isGlyx(text[i])) Glyx++;
  35.                     if (isZvonk(text[i])) Zvonk++;
  36.                 }
  37.             }
  38.             /*string stat = String.Format(
  39.                 "В тексте {0} гласных, {1} согласных (из которых {2} звонких и {3} глухих)",
  40.                 Glas, SoGlas, Zvonk, Glyx);*/
  41.             richTextBox2.Text = $"В тексте {Glas} гласных, {SoGlas} согласных (из которых {Zvonk} звонких и {Glyx} глухих)";
  42.         }
  43.  
  44.         private void button2_Click(object sender, EventArgs e)
  45.         {
  46.             OpenFileDialog dialog = new OpenFileDialog();
  47.             dialog.Filter = "Text files | *.txt";
  48.             dialog.ShowDialog();
  49.             /*if (dialog.ShowDialog() == DialogResult.OK)
  50.                 richTextBox1.LoadFile(dialog.FileName, RichTextBoxStreamType.PlainText);*/
  51.  
  52.             richTextBox1.Text = File.ReadAllText(dialog.FileName);
  53.         }
  54.  
  55.         private bool isGlas(char t)
  56.         {
  57.             t = char.ToUpper(t);
  58.             //string Glas = "AЕЁИОУЫЭЮЯ";
  59.             //StringBuilder Glas = new StringBuilder("AЕЁИОУЫЭЮЯ");
  60.             char[] Glas = { 'А', 'Е', 'Ё', 'И', 'О', 'У', 'Ы', 'Э', 'Ю', 'Я' };
  61.             //if (Glas.IndexOf(t) != -1)
  62.             //if (Glas.ToString().IndexOf(t) != -1)
  63.             for (int i = 0; i < Glas.Length; i++)
  64.                 if (Glas[i].Equals(t))
  65.                     return true;
  66.             return false;
  67.         }
  68.  
  69.         private bool isGlyx(char t)
  70.         {
  71.             t = char.ToLower(t);
  72.             //string Glas = "пфктшсхцщ";
  73.             char[] Glas = { 'п', 'ф', 'к', 'т', 'ш', 'с', 'х', 'ц', 'щ' };
  74.             //StringBuilder Glas = new StringBuilder("пфктшсхцщ");
  75.             for (int i = 0; i < Glas.Length; i++)
  76.                 if (Glas[i].Equals(t)) return true;
  77.             //if (Glas.ToString().IndexOf(t) != -1)
  78.                 //return true;
  79.             return false;
  80.         }
  81.  
  82.         private bool isZvonk(char t)
  83.         {
  84.             t = char.ToLower(t);
  85.             //string Glas = "бвгджзлмнрй";
  86.             char[] Glas = { 'б', 'в', 'г', 'д', 'ж', 'з', 'л', 'м', 'н', 'р', 'й' };
  87.             //StringBuilder Glas = new StringBuilder("бвгджзлмнрй");
  88.             //if (Glas.ToString().IndexOf(t) != -1)
  89.             for (int i = 0; i < Glas.Length; i++)
  90.                 if (Glas[i].Equals(t))
  91.                     return true;
  92.             return false;
  93.         }
  94.     }
  95. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы