Подскажите в чем ошибка в коде - C (СИ)

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

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

переменная pz должна выводить произведение четных индексов массива ar
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include <string.h>
  5. int main()
  6. {
  7. int i,j,max,p,pz;
  8. int ar[4];
  9. for(i=0;i<4;i++)
  10. ar[i]=rand()%10+0;
  11. for(i=0;i<4;i++)
  12. printf("ar->[%2i]=%i\n",i,ar[i]);
  13. for(i=0;i<4;i++)
  14. if(ar[i]>max)
  15. {for(i=0;i<4;i++)
  16. max=ar[i];
  17. p=i;
  18. }
  19. for(i=0;i<4;i++)
  20. if (i % 2 ==1)
  21. {
  22. for(i=0;i<3;i++)
  23. pz= i * pz;
  24. printf("pz = %d\n", pz);
  25. }
  26.  
  27. return 0;
  28. }

Решение задачи: «Подскажите в чем ошибка в коде»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. #include <string.h>
  5. int main()
  6. {
  7.     int i,j,max,p,pz;
  8.     int ar[4];
  9.     max=0; //необходимо обнулить
  10.     pz=1; //инициализировать единицей, т.к. планируется перемножение
  11.     for(i=0;i<4;i++)
  12.         ar[i]=rand()%10;
  13.     for(i=0;i<4;i++)
  14.          printf("ar->[%2d]=%d\n",i,ar[i]);
  15.  
  16.     for(i=0;i<4;i++)
  17.         if(ar[i]>max)
  18.          {
  19.                 max=ar[i];
  20.                 p=i;
  21.          }
  22.  
  23.      for(i=0;i<4;i++)
  24.         if (i % 2 == 0)
  25.         {
  26.            pz= ar[i] * pz; //ar[i] вместо i
  27.         }
  28.         printf("pz  = %4d\n", pz);
  29.         printf("Max = %4d\n",max);
  30.         return 0;
  31.  }

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

  1. Объявлены переменные:
    • i, j, max, p, pz (тип int)
    • ar[4] (массив из 4 элементов типа int)
  2. Переменная max инициализируется значением 0, а pz - единицей.
  3. С помощью цикла for заполняется массив ar случайными числами от 0 до 9.
  4. С помощью двух циклов for выводятся значения массива ar.
  5. С помощью двух условий if находится максимальное значение в массиве ar и его индекс, а также обновляется значение переменной pz.
  6. С помощью цикла for и условия if производится перемножение четных элементов массива ar и значение переменной pz.
  7. Выводятся значения переменных pz и max.
  8. Функция main() возвращает 0, заканчивая работу программы.

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


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

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

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

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

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

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