Подсчитайте количество единиц в группах с четным количество символов - C (СИ)

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

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

Добрый вечер господа и дамы. Помогите пожалуйста с задачей Дана строка, состоящая из групп нулей и единиц. Подсчитайте количество единиц в группах с четным количество символов. Заранее спасибо.

Решение задачи: «Подсчитайте количество единиц в группах с четным количество символов»

textual
Листинг программы
  1. #include<iostream>
  2. using namespace std;
  3.  
  4. int main() {
  5.     char string[100];
  6.     int counter = 0;
  7.     cout << "enter string: ";
  8.     cin >> string;
  9.     char *ptr;
  10.     ptr = strtok(string, "0");
  11.     while(ptr != NULL) {
  12.         if(strlen(ptr) % 2 == 0)
  13.             counter += strlen(ptr);
  14.         ptr = strtok(NULL, "0");
  15.     }
  16.     cout << "Chislo edenic v chetnih gruppah: " << counter << endl;
  17.     system("pause");
  18.     return 0;
  19. }

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

В этом коде:

  1. Объявлены две переменные: string типа char размером 100 символов и counter типа int и инициализирован нулем.
  2. Пользователю предлагается ввести строку.
  3. Введенная строка сохраняется в массиве string.
  4. Указатель ptr инициализируется значением string.
  5. С помощью функции strtok в цикле разделяют строку на подстроки по символу '0' и проверяют длину каждой подстроки на четность.
  6. Если длина подстроки четная, то к переменной counter прибавляется единица.
  7. После окончания цикла выводится сообщение с количеством единиц в группах с четным количеством символов.
  8. Программа ожидает нажатия клавиши для продолжения работы.
  9. Программа завершается без ошибок.

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


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

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

13   голосов , оценка 3.846 из 5

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

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

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