Цель: посчитать произведение элементов, стоящих между нулевыми элементами массива
код:
Код:
#include<conio.h>
#include<stdio.h>
#include<math.h>
#define n 10
int a[n];
void g(int pe, int pe1)
{
int i,s=1;
for(i=pe;i<pe1;i++)
s*=a[i];
printf("%d",s);
}
main()
{
int pe,i,pe1;
puts("Vvedite massiv");
for(i=0;i<n;i++)
{
printf("a[%d] ",i);
scanf("%d",a);
}
for(i=0;i<n;i++)
{if(a[i]==0)
{
pe=i+1;
break;
}
}
for(i=n;i>0;i--)
{if(a[i]==0)
{
pe1=i-1;
break;
}
}
printf("%d %d\n",pe,pe1); //выводим индексы нулевых элементов (выводит не правильно)
g(pe,pe1);
getch();
return 0;
}
Где кроется ошибка?