Разработать функцию map - C (СИ)

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

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

Разработать функцию map, которая позволяет все отрицательные значения заменить на те же положительные значения в массиве целых чисел. Функция map получает в качестве аргументов массив, его размер, указатель на функцию cut. Функция cut применяется ко всем элементам массива внутри функции map. Функция cut получает в качестве аргумента указатель на целое число, и, если это число оказывается отрицательным оно заменяется на тоже положительное число. Протестировать разработанную функцию map.

Решение задачи: «Разработать функцию map»

textual
Листинг программы
#include <stdio.h>
 
void cut(int* const value)
{
    if (*value < 0) *value = -(*value);
}
 
void map(int* const array, const size_t size, void (*replacementFunction)(int* const))
{
    for (size_t i = 0; i < size; i++) replacementFunction(&array[i]);
}
 
int main(void)
{
    int a[] = {-1, -2, -3, -4, -5, -6};
    size_t N = sizeof(a) / sizeof(*a);
    
    map(&a[0], N, cut);
    
    for (size_t i = 0; i < N; i++) printf("%d ", a[i]);
    
    return 0;
}

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


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

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

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