Сформировать одномерный массив. В заданном массиве замените с k1 по k2 на противоположные по знаку - C (СИ)
Формулировка задачи:
Сформировать одномерный массив размерностью n>100 с помощью генератора случайных чисел в диапазоне [-99;99].В заданном массиве замените с k1 по k2 на противоположные по знаку.На экран вывести исходный массив и результирующий.
Решение задачи: «Сформировать одномерный массив. В заданном массиве замените с k1 по k2 на противоположные по знаку»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <time.h> int gen_rand_range(int start, int stop) { return (start + (rand() % (stop - start))); } void init_array(int size, int start, int stop, int a[size]) { for(unsigned int i = 0; i < size; ++i) { a[i] = gen_rand_range(start, stop); } } int swap_sign(int num) { return -num; } void swap_num_range(int size, int start, int stop, int a[size]) { for(unsigned int i = start; i < stop; ++i) { a[i] = swap_sign(a[i]); } } void print_array(int size, int a[size]) { int line = 10; for(unsigned int i = 0; i < size; ++i) { if(!(i % line)) { fprintf(stdout, "\n"); } fprintf(stdout, "%4d ", a[i]); } fprintf(stdout, "\n"); } int main(int argc, char *argv[]) { srand(time(NULL)); int SIZE = 150; int array[SIZE]; init_array(SIZE, -99, 100, array); fprintf(stdout, "Исходный массив:\n"); print_array(SIZE, array); swap_num_range(SIZE, 10, 30, array); fprintf(stdout, "Измененный массив:\n"); print_array(SIZE, array); return EXIT_SUCCESS; }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы с C
- Определяем функцию генерации случайного числа в заданном диапазоне
- Определяем функцию инициализации массива случайными числами
- Определяем функцию замены знака числа на противоположный
- Определяем функцию замены знаков чисел в заданном диапазоне массива
- Определяем функцию печати массива на экран
- В функции main инициализируем размер массива, создаем массив и инициализируем его случайными числами
- Выводим исходный массив на экран
- Меняем знак чисел в заданном диапазоне массива
- Выводим измененный массив на экран
- Завершаем программу успехом
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д