Множества. Дан текст, состоящий из строчных латинских букв. Вывести те, которые встречаются в тексте не менее 2-х раз - C (СИ)

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

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

Дан текст, состоящий из строчных латинских букв. Вывести те, которые встречаются в тексте не менее 2-х раз.

Решение задачи: «Множества. Дан текст, состоящий из строчных латинских букв. Вывести те, которые встречаются в тексте не менее 2-х раз»

textual
Листинг программы
#include <stdio.h>
 
int main(void)
{
    char letter;
    int number, i;
    char *text = "aabbbccdddeffffgghhhhhhhhhhhxxxyyyzzzz";
 
 
    for (letter = 'a'; letter <= 'z'; letter++)
    {
        number = i = 0;
        while(text[i] != 0)
        {
            if(letter == text[i])
                number++;
            if(number > 2)
            {
                printf("%c\n", letter);
                break;
            }
            i++;
        }
    }
 
    return 0;
}

Объяснение кода листинга программы

В этом коде на языке C выполняется следующая задача: необходимо вывести все буквы из заданного текста, которые встречаются в нём не менее двух раз.

  1. В первую очередь подключается стандартная библиотека, которая позволяет работать с файлами и другими основными функциями.
  2. Затем определяется точка входа в программу — функция main.
  3. Внутри функции main создаются две переменные: letter (буква) и number (число). Первая будет использоваться для прохода по всем буквам английского алфавита, а вторая — для подсчёта количества повторяющихся букв.
  4. Также определяется строка text, которая содержит заданный текст. Её значение: aabbbccdddeffffgghhhhhhhhhhhxxxyyyzzzz.
  5. С помощью цикла for перебираются все буквы английского алфавита от 'a' до 'z'.
  6. Внутри цикла объявляются две переменные: number (число) и i (счётчик). Счётчик используется для прохода по всем символам строки text.
  7. В цикле while происходит проход по всем символам строки text. Если текущий символ равен текущей букве, то увеличивается значение переменной number.
  8. После прохода по всем символам строки text для каждой буквы проверяется, сколько раз она встретилась (значение переменной number). Если не менее двух раз, то с помощью команды printf выводится на экран название этой буквы (символ).
  9. Цикл while завершается, если в текущей строке не осталось символов (т.е. text[i] == 0) или если количество вхождений текущей буквы стало больше двух.
  10. По завершении всех вложенных циклов закрывается функция main.
  11. Значение 0, возвращаемое функцией main, является признаком успешного завершения программы.

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


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

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

12   голосов , оценка 3.75 из 5
Похожие ответы