Преобразовать массив, умножив все его элементы на минимальный элемент - C (СИ)

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

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

Дан целочисленный массив, состоящий из n элементов. Преобразовать его, умножив все его элементы на минимальный элемент. Минимальный элемент массива не изменять.

Решение задачи: «Преобразовать массив, умножив все его элементы на минимальный элемент»

textual
Листинг программы
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include<stdio.h>
  3. #define N 5
  4.  
  5. int main(){
  6.     int arr[N], min, i;/*массив, мин число, индекс*/
  7.     printf("Enter a numbers: ");
  8.     for (i = 0; i < N; i++)/*луп для ввода*/
  9.         scanf("%d", &arr[i]);
  10.     min = arr[0];/*допустим что первое число в массиве самое мелкое*/
  11.     for (i = 1; i < N; i++){/*луп для поиска мин числа*/
  12.         if (min>arr[i])
  13.             min = arr[i];
  14.     }
  15.     for (i = 0; i < N; i++)/*луп умножения на мин число*/
  16.         arr[i] = arr[i] * min;
  17.     for (i = 0; i < N; i++)/*вывод на экран*/
  18.         printf("%d ", arr[i]);
  19.     printf("\n");
  20.     return 0;
  21. }

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

  1. Предупреждение: #define _CRT_SECURE_NO_WARNINGS
  2. Включение файла: #include<stdio.h>
  3. Определение размера массива: #define N 5
  4. Объявление переменных:
    • int arr[N] - массив целых чисел, размер которого определяется в строке #define N 5
    • min - минимальное число
    • i - индекс
  5. Вывод сообщения и запрос ввода:
    • printf(Enter a numbers: ) - вывод сообщения
    • for (i = 0; i < N; i++)/*луп для ввода*/ - цикл для получения ввода от пользователя
    • scanf(%d, &arr[i]) - получение ввода в виде целого числа и сохранение его в массиве
  6. Установка начального значения минимального числа:
    • min = arr[0]; - первое число в массиве устанавливается как минимальное
  7. Поиск минимального числа:
    • for (i = 1; i < N; i++)/*луп для поиска мин числа*/ - цикл для сравнения каждого числа в массиве с текущим минимальным числом
    • if (min>arr[i]) - если текущее число меньше минимального, то оно становится новым минимальным числом
    • min = arr[i]; - обновление значения минимального числа
  8. Умножение каждого числа в массиве на минимальное число:
    • for (i = 0; i < N; i++)/*луп умножения на мин число*/ - цикл для перебора каждого числа в массиве
    • arr[i] = arr[i] * min; - умножение текущего числа в массиве на минимальное число
  9. Вывод результатов на экран:
    • for (i = 0; i < N; i++)/*вывод на экран*/ - цикл для вывода каждого числа в массиве
    • printf(%d , arr[i]); - вывод числа в массив на экран, с добавлением пробела после числа
  10. Завершение программы:
    • return 0; - завершение работы программы

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


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

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

6   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы