lab3_task1

Run Settings
LanguageC
Language Version
Run Command
/** * @file main.c * @author Зайченко Д.І., гр. 515і * @date 04 квітня 2023 * @brief Лабораторна робота No 3 * * Використання масивів. Завдання 1 */ #include <stdio.h> #include <locale.h> #include <limits.h> int clean_stdin(); void check_repeated_digits(long long n, int digit_seen[]); void output(int digit_seen[]); int main() { long long n; int digit_seen[10] = { 0 }; char c; setlocale(LC_ALL, "Ukr"); printf("Введiть цiле число максимум з 18 цифр\n"); printf("iнакше програма виконається з непередбачуваним результатом\n"); //цикл для перевірки коректності введення do { printf("Введiть число: "); } while (((scanf("%lld%c", &n, &c) != 2 || c != '\n') && clean_stdin())); check_repeated_digits(n,digit_seen); output(digit_seen); return 0; } //функція перевірки цифр на повторення void check_repeated_digits(long long n, int digit_seen[]) { if (n < 0) n *= -1; //тимчасова змінна яка містить цифру int digit; //цикл перевірки цифр на повторення while (n > 0) { digit = n % 10; digit_seen[digit] += 1; n /= 10; } } //функція виведення інформації про повторення void output(int digit_seen[]) { int check = 1; for (int i = 0; i < 10; i++) { if (digit_seen[i] > 1) { printf("Цифра %d повторюється %d разiв\n", i, digit_seen[i]); check = 0; } } if (check) printf("В цьому числi цифри не повторюються"); } int clean_stdin() { while (getchar() != '\n'); return 1; }
Editor Settings
Theme
Key bindings
Full width
Lines