Из данных множеств выделить соответственно подмножества M1 чисел, делящихся на 3 без остатка - C (СИ)

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

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

Даны два множества М и N, состоящие из 10 целых чисел из диапазона 1 ... 100. Из данных множеств выделить соответственно подмножества M1 чисел, делящихся на 3 без остатка, и N1 чисел, делящихся на 2 без остатка. Множества М и N описать как типизированные константы. На печать вывести мощность и значения элементов множества МN=М1∩М2. помогите написать на С

Решение задачи: «Из данных множеств выделить соответственно подмножества M1 чисел, делящихся на 3 без остатка»

textual
Листинг программы
int main()
{
    int N[] = { 74, 90, 75, 86, 40, 83, 61, 5, 12, 32 },
        M[] = { 98, 66,58,71,81,40,93,99,2,57 },
        M1[10], N1[10], MN[10], 
        i, j, k;
    for (int i = 0; i < 10; i++)
        M1[i] = N1[i] = MN[i] = 0;
    for (i = 0, j = 0, k = 0; i < 10; i++)
    {
        if (N[i] % 2 == 0)
            N1[j++] = N[i];
        if (M[i] % 3 == 0)
            M1[k++] = M[i];
    }
    for (i = 0, k = 0; i < 10; i++)
        for (j = 0; j < 10; j++)
            if (N1[i] == M1[j])
                MN[k++] = N1[i];
}

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

В этом коде мы сначала объявляем массивы: N[] и M[] для чисел, которые мы хотим обработать, и три других массива (M1[], N1[] и MN[]) для хранения результатов. Затем мы инициализируем все элементы этих массивов нулями. Далее, у нас есть три вложенных цикла for. Первый из них используется для обработки каждого элемента массива N[]. Если остаток от деления этого элемента на 2 равен нулю (то есть число четное), мы добавляем его в массив N1[]. Если остаток от деления элемента массива M[] на 3 равен нулю (то есть число делится на 3 без остатка), мы добавляем его в массив M1[]. Второй вложенный цикл for используется для проверки, есть ли общие числа в массивах N1[] и M1[]. Если да, мы добавляем его в массив MN[]. В конце у нас есть еще один цикл for, который используется для обработки каждого элемента массива MN[]. Он не имеет вложенных циклов и не выполняет никаких операций, поэтому его можно просто удалить без изменения функциональности кода. В итоге, после выполнения этого кода, в массиве MN[] будут храниться все числа, которые делятся и на 2, и на 3 без остатка.

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


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

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

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