Найти сумму положительных элементов массива - C (СИ) (73285)
Формулировка задачи:
#include "locale.h" // для корректного вывода в консоль русского языка #include <stdio.h> // для вывода в консоль #include <conio.h> // для доступа к команде _getch() #include <time.h> // для доступа к time #include <stdlib.h> int main() { int n, //размер массива i, S=0, //сумма пол. элементов массива P=1,//произведение min, indexMin=0, max, indexMax=0; int *array1; char *loc; // переменная для корректного вывода в консоль русского языка loc = setlocale(LC_ALL,"Russian"); printf("Введите размерность массива: "); scanf_s("%d", &n); array1=(int*)malloc(n*sizeof(int)); srand(time(NULL)); // встряхивание генератора for (i=0; i<n; i++) { array1[i] = rand() %100 - 50; printf(" %d", &array1[i]); if (array1[i]>0) //нахождение суммы положительных элементов { S+=array1[i]; } } printf("\nСумма положительных элементов массива: %i\n", S); min = abs(array1[0]); max = abs(array1[0]); for (i=0; i<n; i++) { if (abs(array1[i])>abs(max))//нахождение максимального элемента { max = array1[i]; indexMax=i; } if (abs(array1[i])<abs(min))//нахождение минимального элемента { min = array1[i]; indexMin=i; } } printf("Минимальный по модулю элемент массива: %d", &min); printf("\n его индекс: %d\n", &indexMin); printf("Максимальный по модулю элемент массива: %d", &max); printf("\n его индекс: %d\n", &indexMax); //вычисление произведения if (indexMin<indexMax) { for (i=indexMin; i<indexMax; i++) { P*=array1[i]; } } else { for (i=indexMax; i<indexMin; i++) { P*=array1[i]; } } printf("\nПроизведение элементов массива между минимальным и максимальным: %d", &P); free(array1); _getch(); return 0; }
Решение задачи: «Найти сумму положительных элементов массива»
textual
Листинг программы
printf("Минимальный по модулю элемент массива: %d", &min); * * printf("\n его индекс: %d\n", &indexMin); * * printf("Максимальный по модулю элемент массива: %d", &max); * * printf("\n его индекс: %d\n", &indexMax);
Объяснение кода листинга программы
- Вначале программа находит минимальный по модулю элемент массива и сохраняет его значение в переменной
min
, а его индекс в переменнойindexMin
. - Затем программа находит максимальный по модулю элемент массива и сохраняет его значение в переменной
max
, а его индекс в переменнойindexMax
. - После этого программа выводит на экран сообщение с минимальным элементом массива и его индексом.
- Затем программа выводит на экран сообщение с максимальным элементом массива и его индексом.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д