Использование оператора модуля в C

CBeginner
Практиковаться сейчас

Введение

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

Объявление целочисленных переменных и ввод значений пользователем, затем вычисление остатка с помощью оператора модуля и вывод результата. Это практическое упражнение поможет вам понять основные арифметические операции в C и как эффективно применять оператор модуля.

Объявление целочисленных переменных и ввод значений

В этом шаге вы узнаете, как объявлять целочисленные переменные и вводить значения в программе на C для выполнения операций модуля. Мы создадим простую программу, демонстрирующую основные принципы объявления переменных и ввода данных пользователем.

Сначала создадим новый файл C в каталоге проекта:

cd ~/project
nano modulus_example.c

Теперь введите следующий код C:

#include <stdio.h>

int main() {
    // Объявить целочисленные переменные
    int dividend, divisor;

    // Запросить у пользователя ввод
    printf("Введите делимое (число, которое будет делиться): ");
    scanf("%d", &dividend);

    printf("Введите делитель (число, на которое будет делиться): ");
    scanf("%d", &divisor);

    // Вывести введенные значения
    printf("Делимое: %d\n", dividend);
    printf("Делитель: %d\n", divisor);

    return 0;
}

Давайте разберем код:

  • int dividend, divisor; объявляет две целочисленные переменные для хранения чисел
  • printf() используется для запроса ввода у пользователя
  • scanf() считывает целочисленный ввод от пользователя
  • %d — спецификатор формата для целых чисел
  • &dividend и &divisor передают адреса памяти для хранения введенных значений

Компилируем программу:

gcc modulus_example.c -o modulus_example

Пример вывода при запуске программы:

Введите делимое (число, которое будет делиться): 17
Введите делитель (число, на которое будет делиться): 5
Делимое: 17
Делитель: 5

Вычисление остатка с помощью оператора модуля

В этом шаге вы узнаете, как использовать оператор модуля (%) для вычисления остатка от деления в языке C. Мы изменим предыдущую программу, чтобы вычислять и отображать остаток.

Откройте существующий файл и обновите код:

cd ~/project
nano modulus_example.c

Замените предыдущий код следующим:

#include <stdio.h>

int main() {
    // Объявить целочисленные переменные
    int dividend, divisor, remainder;

    // Запросить у пользователя ввод
    printf("Введите делимое (число, которое будет делиться): ");
    scanf("%d", &dividend);

    printf("Введите делитель (число, на которое будет делиться): ");
    scanf("%d", &divisor);

    // Вычислить остаток с помощью оператора модуля
    remainder = dividend % divisor;

    // Вывести введенные значения и остаток
    printf("Делимое: %d\n", dividend);
    printf("Делитель: %d\n", divisor);
    printf("Остаток: %d\n", remainder);

    return 0;
}

Ключевые изменения в этой версии:

  • Добавлена новая переменная remainder для хранения результата
  • Использован оператор модуля % для вычисления остатка
  • Добавлено оператор вывода для отображения остатка

Компилируем обновленную программу:

gcc modulus_example.c -o modulus_example

Пример вывода при запуске программы:

Введите делимое (число, которое будет делиться): 17
Введите делитель (число, на которое будет делиться): 5
Делимое: 17
Делитель: 5
Остаток: 2

В этом примере 17, деленное на 5, равно 3 с остатком 2. Оператор модуля % возвращает именно этот остаток.

Вывод результата

В этом шаге вы научитесь форматировать и выводить результаты операций модуля более осмысленным способом. Мы улучшим предыдущую программу, чтобы предоставить более ясное объяснение вычисления.

Откройте существующий файл и обновите код:

cd ~/project
nano modulus_example.c

Замените предыдущий код следующим:

#include <stdio.h>

int main() {
    // Объявить целочисленные переменные
    int dividend, divisor, remainder, quotient;

    // Запросить у пользователя ввод
    printf("Введите делимое (число, которое будет делиться): ");
    scanf("%d", &dividend);

    printf("Введите делитель (число, на которое будет делиться): ");
    scanf("%d", &divisor);

    // Вычислить частное и остаток
    quotient = dividend / divisor;
    remainder = dividend % divisor;

    // Вывести подробное объяснение деления
    printf("\nВычисление деления:\n");
    printf("%d ÷ %d = %d остаток %d\n",
           dividend, divisor, quotient, remainder);

    // Проверочное уравнение
    printf("\nПроверка:\n");
    printf("%d = %d × %d + %d\n",
           dividend, divisor, quotient, remainder);

    return 0;
}

Компилируем обновленную программу:

gcc modulus_example.c -o modulus_example

Пример вывода при запуске программы:

Введите делимое (число, которое будет делиться): 17
Введите делитель (число, на которое будет делиться): 5

Вычисление деления:
17 ÷ 5 = 3 остаток 2

Проверка:
17 = 5 × 3 + 2

Ключевые изменения в этой версии:

  • Добавлено вычисление quotient с использованием целочисленного деления
  • Включен более подробный вывод, показывающий процесс деления
  • Добавлена строка проверки, демонстрирующая математическую взаимосвязь

Резюме

В этом лабораторном практикуме вы изучили, как объявлять целочисленные переменные и вводить значения в программе на языке C для выполнения операций модуля. Вы создали простую программу, которая запрашивает у пользователя делимое и делитель, а затем использовала оператор модуля для вычисления остатка от деления. Программа затем отображала введенные значения и вычисленный остаток.

Кроме того, вы узнали, как скомпилировать программу на языке C и запустить её, наблюдая вывод программы. Этот лабораторный практикум предоставил практическое введение в оператор модуля и его практическое применение в программировании на языке C.