Вопрос задан 16.11.2023 в 20:39. Предмет Информатика. Спрашивает Иринка Иринка.

В одновимірному масиві, що складається з N цілих елементів, обчислити: • мінімальний за модулем

елемент масиву; • суму модулів елементів масиву, розміщених після першого елемента, що дорівнює нулю. C
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Брагарчук Даня.

Відповідь:

С code:

#include <stdio.h>

#include <math.h>

#include <stdlib.h>

#include <time.h>

#include <windows.h>;

void randarr(int *arr,const int size){

for(int i = 0; i < size; i++){

 arr[i] = rand() % 30 - 20;

}

}

void printarr(int *arr,const int size){

for(int i = 0; i < size; i++){

 printf("%d\t",arr[i]);

}

printf("\n");

}

int min_abs(int *arr,const int size){

int min = abs(arr[0]);

for(int i = 0; i < size; i++){

 if(abs(arr[i]) < min){

  printf("%d %d\n",arr[i],min);

  min = abs(arr[i]);

 }

}

return min;

}

int first_null(int *arr,const int size){

int index = -1;

for(int i = 0; i < size; i++){

 if(arr[i] == 0){

  index = i;

  return index;

 }

}

return index;

}

int sum_abs(int *arr,const int size){

int ind = first_null(arr,size),sum = 0;

if(ind == -1){

 return sum;

}

else{

 for(int i = ind; i < size; i++){

  sum += abs(arr[i]);

 }

}

return sum;

}

int main(){

srand(time(NULL));

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

int N;

printf("Введiть розмiр масиву: ");

scanf("%d",&N);

int *arr = new int[N];

randarr(arr,N);

printarr(arr,N);

int sum = min_abs(arr,N);

printf("Мiнiмальний за модулем елемент масиву:%d\n",min_abs(arr,N));

printf("Сума модулiв елементiв пiсля першого нульового елементу:%d\n",sum_abs(arr,N));

delete[] arr;

return 0

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для розв'язання цієї задачі потрібно пройтись по всіх елементах масиву та знайти мінімальний за модулем елемент. У цій задачі нульовий елемент не враховуємо при пошуку мінімального елемента. Також потрібно обчислити суму модулів елементів, які розташовані після першого елемента, що дорівнює нулю.

1. Ініціалізувати змінну min_modulus значенням, яке буде більше за будь-які можливі значення масиву. Наприклад, можна встановити min_modulus як INT_MAX (якщо ви працюєте з цілими числами).

2. Проходити по всіх елементах масиву. Перевіряти елементи на те, чи вони не рівні нулю.

3. Якщо поточний елемент не рівний нулю, перевіряти чи його модуль менший за min_modulus. Якщо так, оновлювати min_modulus значенням модулю цього елемента.

4. Після закінчення перебору, min_modulus буде містити найдешевший за модулем елемент.

5. Ініціалізувати змінну sum_modulus значенням 0.

6. Проходити по всіх елементах масиву, починаючи з першого елемента після першого елемента, що дорівнює нулю.

7. Додавати модуль поточного елемента до sum_modulus.

8. Після закінчення перебору, sum_modulus буде містити суму модулів елементів, які розташовані після першого елемента, що дорівнює нулю.

Отримані значення min_modulus і sum_modulus є відповідями.

Наприклад, для масиву [5, -2, 9, 0, -7], мінімальний за модулем елемент буде -2, оскільки |(-2)| = 2, що є мінімальним значенням модуля серед всіх елементів масиву. Сума модулів елементів після першого нульового елемента буде дорівнювати |9| + |(-7)| = 9 + 7 = 16.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос