Найти число элементов массива больше t и просуммировать все эти элементы - C (СИ)
Формулировка задачи:
Дан случайный вещественный массив А(n,n) со значениями от-10 до 10. Найти число элементов массива больше t и просуммировать все эти элементы.
я создал двухмерный массив и попытался найти число элементов больше t но что то пошло не так!
посмотрите пожалуйста!
подсчет указан как комментарий
#include <stdio.h> #include<locale.h> #include <math.h> #include <stdlib.h> #include <time.h> #define _USE_MATH_DEFINES #define a -10 #define b 10 int main( int argc, char**argv) { int n; double **A; int i=0; int j=0; int t; int counter=0; srand( time( 0 ) ); rand(); rand(); rand(); rand(); rand(); printf ("Enter n:"); scanf ("%d",&n); printf ("Enter t:"); scanf ("%d", &t); A=(double**)malloc(n*sizeof(double*)); for(i = 0; i<n; i++) A[i]=(double*)malloc(n*sizeof(double)); for(j = 0; j<n; j++) { A[i][j]= rand()% (b - a+1) + a; printf("%d\n",A[i][j] ); /*{ int i=0; counter=0; for(i=j; i<t; i++) { counter++; printf("%d\n", counter); } }*/ } system("pause"); free (A); return 0; }
Решение задачи: «Найти число элементов массива больше t и просуммировать все эти элементы»
textual
Листинг программы
int sum, nsum; for (sum = nsum = i = 0; i < n; i += 1) for(j = 0; j < n; j += 1) if(A[i][j] > t){ sum += t; ++nsum; }
Объяснение кода листинга программы
В данном коде выполняется два вложенных цикла. Первый цикл проходит по всем элементам массива и проверяет условие, если элемент больше t, то к переменной sum прибавляется значение t, а переменная nsum увеличивается на единицу. Второй цикл выполняет итерацию по каждому элементу массива.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д