/*
* @file lab3_1.c
* @author Герасимюк Д.В., гр. 515і1
* @date 26 березня 2024
* @brief Лабораторна робота №3, варіант 3
* Використання масивів. Завдання 1
*/
#include <stdio.h>
#include <locale.h>
#include "infaboutnumbers.h"
#include "print.h"
int main() {
long n;
setlocale(LC_ALL, "ukr");
printf("Введiть число: ");
scanf("%ld", &n);
int digit_counts[10] = { 0 };
prepare_repeated_digits_info(n, digit_counts);
print_repeated_digits_info(digit_counts);
return 0;
}
/*
* @file infaboutnumbers.h
* @author Герасимюк Д.В., гр. 515і1
* @date 26 березня 2024
* @brief Лабораторна робота №3, варіант 3
* Використання масивів. Завдання 1
*/
#pragma once
void prepare_repeated_digits_info(long n, int digit_counts[]) {
while (n > 0) {
int digit = n % 10;
digit_counts[digit]++;
n /= 10;
}
}
/*
* @file print.h
* @author Герасимюк Д.В., гр. 515і1
* @date 26 березня 2024
* @brief Лабораторна робота №3, варіант 3
* Використання масивів. Завдання 1
*/
#pragma once
void print_repeated_digits_info(int digit_counts[]) {
printf("Є цифри, що повторюються: ");
for (int i = 0; i < 10; i++) {
if (digit_counts[i] > 1)
printf("%d (%d рази) ", i, digit_counts[i]);
}
printf("\n");
}