Количество и сумма положительных чисел массива - C (СИ)

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

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

решить то, что на картинке
. На примере вот такого:Поменять местами строки квадратной матрицы A (N=10), содержащие максимальный и минимальный элементы матрицы. Будем хранить элементы матрицы A в двумерном массиве a[10][10], а текущие значения максимального и минимального элементов и номера их строк в переменных max, min, m и n соответственно. Предположим, что максимальный и минимальный элементы массива есть его первый элемент. Далее во вложенных циклах будем сравнивать эти значения с остальными элементами и, когда очередной элемент массива окажется больше или меньше значения max и min соответственно, исправим их на новые значения. Одновременно в переменных m и n будем сохранять номер строки этого элемента. И, наконец, если m не равно n, то переставим местами соответствующие строки матрицы.
Листинг программы
  1. # include <stdio.h>
  2. #include <stdlib.h>
  3. int main(int argc, char *argv[])
  4. {
  5. int i, j, m = 0, n = 0;
  6. float a[4][4], max, min, u;
  7.  
  8. /*Ввод элементов матрицы*/
  9. for(i = 0; i < 10; i++ )
  10. {
  11. printf(”\n”);
  12. for(j = 0; j < 10; j++)
  13. scanf(”%f ”, &a[i][j]);
  14. }
  15. /*Поиск максимального и минимального элементов матрицы */
  16. /*и номеров их строк */
  17. max = min = a[0][0];
  18. for(i = 0; i < 10; i++)
  19. for(j = 0; j < 10; j++)
  20. {
  21. if (a[i][j] > max)
  22. {
  23. max = a[i][j]; m = i;
  24. }
  25. else if (a[i][j] < min)
  26. {
  27. min = a[i][j]; n = i;
  28. }
  29. }
  30. /*Перестановка местами строк матрицы*/
  31. if (m != n)
  32. for (i = 0; i < 10; i++)
  33. {
  34. u = a[m][i];
  35. a[m][i] = a[n][i];
  36. a[n][i] = u;
  37. }
  38. /*Вывод элементов новой матрицы*/
  39. for (i = 0; i < 10; i++ )
  40. {
  41. printf (”\n”);
  42. for (j = 0; j < 10; j++ )
  43. printf(" %6.2f ", a[i][j]);
  44. }
  45. printf ("\nmax=%f\tmin=%f",max,min);
  46. system("PAUSE");
  47. return 0;
  48. }
Я честно пыталась! У меня вышло вот что:
Листинг программы
  1. # include <stdio.h>
  2. #include <stdlib.h>
  3. int main(int argc, char *argv[])
  4. {
  5. int i, j, n = 0;
  6. float x[5][5], pol;
  7. for(i = 0; i < 5; i++ )
  8. {
  9. printf("\n");
  10. for(j = 0; j < 5; j++)
  11. scanf("%f ", &x[i][j]);
  12. }
  13. pol= x[0][0];
  14. for(i = 0; i < 5; i++)
  15. for(j = 0; j < 5; j++)
  16. {
  17. if (x[i][j]>=0 && x[i][j]<=1)
  18. {
  19. pol = x[i][j]; n = i;
  20. }
  21. }
  22. printf ("\npol=%.f, \tn=%.f\n",pol,n);
  23. system("PAUSE");
  24. return 0;
  25. }
И оно не работает... Помогите пожалуйста

Решение задачи: «Количество и сумма положительных чисел массива»

textual
Листинг программы
  1. for (int i=0; i < 5; ++i) {
  2.     for (int j=0; j < 5; ++j) {
  3.         if (x[i][j] > 0) {
  4.             sum += x[i][j];
  5.             ++count;
  6.         }
  7.     }
  8. }
  9. printf("\nsum=%f, \tcount=%d\n", sum, count);

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

  1. В этом коде используется два вложенных цикла for для прохода по элементам массива x размером 5х5.
  2. Переменная x[i][j] проверяется на положительность с помощью оператора больше (>).
  3. Если элемент x[i][j] положительный, то к сумме (sum) прибавляется его значение, а переменная count увеличивается на единицу.
  4. После завершения циклов, выводится значение суммы и количества положительных элементов массива x с помощью функции printf.

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


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

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

9   голосов , оценка 4 из 5

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

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

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