#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N1 10
#define N2 10
#define RANGE 20.0 // Диапазон случайных чисел (от 0 до RANGE)
// Функция проверки наличия элемента в массиве
int is_in_array(float arr[], int size, float value) {
for (int i = 0; i < size; i++) {
if (arr[i] == value) {
return 1;
}
}
return 0;
}
int main() {
float M1[N1], M2[N2], M3[N1 < N2 ? N1 : N2]; // M3 максимум размером min(N1, N2)
int i, j, count = 0;
srand(time(NULL));
// Заполняем массивы случайными вещественными числами
printf("M1: ");
for (i = 0; i < N1; i++) {
M1[i] = ((float)rand() / RAND_MAX) * RANGE;
printf("%.2f ", M1[i]);
}
printf("\nM2: ");
for (i = 0; i < N2; i++) {
M2[i] = ((float)rand() / RAND_MAX) * RANGE;
printf("%.2f ", M2[i]);
}
printf("\n\nПересечение массивов (без повторов):\n");
// Находим пересечение массивов
for (i = 0; i < N1; i++) {
if (is_in_array(M2, N2, M1[i]) && !is_in_array(M3, count, M1[i])) {
M3[count++] = M1[i];
}
}
// Выводим результат
for (i = 0; i < count; i++) {
printf("%.2f ", M3[i]);
}
printf("\n");
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHRpbWUuaD4KCiNkZWZpbmUgTjEgMTAKI2RlZmluZSBOMiAxMAojZGVmaW5lIFJBTkdFIDIwLjAgLy8g0JTQuNCw0L/QsNC30L7QvSDRgdC70YPRh9Cw0LnQvdGL0YUg0YfQuNGB0LXQuyAo0L7RgiAwINC00L4gUkFOR0UpCgovLyDQpNGD0L3QutGG0LjRjyDQv9GA0L7QstC10YDQutC4INC90LDQu9C40YfQuNGPINGN0LvQtdC80LXQvdGC0LAg0LIg0LzQsNGB0YHQuNCy0LUKaW50IGlzX2luX2FycmF5KGZsb2F0IGFycltdLCBpbnQgc2l6ZSwgZmxvYXQgdmFsdWUpIHsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7CiAgICAgICAgaWYgKGFycltpXSA9PSB2YWx1ZSkgewogICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gMDsKfQoKaW50IG1haW4oKSB7CiAgICBmbG9hdCBNMVtOMV0sIE0yW04yXSwgTTNbTjEgPCBOMiA/IE4xIDogTjJdOyAvLyBNMyDQvNCw0LrRgdC40LzRg9C8INGA0LDQt9C80LXRgNC+0LwgbWluKE4xLCBOMikKICAgIGludCBpLCBqLCBjb3VudCA9IDA7CgogICAgc3JhbmQodGltZShOVUxMKSk7CgogICAgLy8g0JfQsNC/0L7Qu9C90Y/QtdC8INC80LDRgdGB0LjQstGLINGB0LvRg9GH0LDQudC90YvQvNC4INCy0LXRidC10YHRgtCy0LXQvdC90YvQvNC4INGH0LjRgdC70LDQvNC4CiAgICBwcmludGYoIk0xOiAiKTsKICAgIGZvciAoaSA9IDA7IGkgPCBOMTsgaSsrKSB7CiAgICAgICAgTTFbaV0gPSAoKGZsb2F0KXJhbmQoKSAvIFJBTkRfTUFYKSAqIFJBTkdFOwogICAgICAgIHByaW50ZigiJS4yZiAiLCBNMVtpXSk7CiAgICB9CgogICAgcHJpbnRmKCJcbk0yOiAiKTsKICAgIGZvciAoaSA9IDA7IGkgPCBOMjsgaSsrKSB7CiAgICAgICAgTTJbaV0gPSAoKGZsb2F0KXJhbmQoKSAvIFJBTkRfTUFYKSAqIFJBTkdFOwogICAgICAgIHByaW50ZigiJS4yZiAiLCBNMltpXSk7CiAgICB9CgogICAgcHJpbnRmKCJcblxu0J/QtdGA0LXRgdC10YfQtdC90LjQtSDQvNCw0YHRgdC40LLQvtCyICjQsdC10Lcg0L/QvtCy0YLQvtGA0L7Qsik6XG4iKTsKCiAgICAvLyDQndCw0YXQvtC00LjQvCDQv9C10YDQtdGB0LXRh9C10L3QuNC1INC80LDRgdGB0LjQstC+0LIKICAgIGZvciAoaSA9IDA7IGkgPCBOMTsgaSsrKSB7CiAgICAgICAgaWYgKGlzX2luX2FycmF5KE0yLCBOMiwgTTFbaV0pICYmICFpc19pbl9hcnJheShNMywgY291bnQsIE0xW2ldKSkgewogICAgICAgICAgICBNM1tjb3VudCsrXSA9IE0xW2ldOwogICAgICAgIH0KICAgIH0KCiAgICAvLyDQktGL0LLQvtC00LjQvCDRgNC10LfRg9C70YzRgtCw0YIKICAgIGZvciAoaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7CiAgICAgICAgcHJpbnRmKCIlLjJmICIsIE0zW2ldKTsKICAgIH0KCiAgICBwcmludGYoIlxuIik7CiAgICByZXR1cm4gMDsKfQo=