например,
4 5 -5 -5 4
1 1 1 -8 -9
4 -4 -4 5 5
2 -4 -5 1 2
здесь кол-во соседств 2-х положительных 7, отрицательных 4.
вот программа:
#include <STDIO.H>
#define NUM 20
void main()
{
int a[NUM],i;
printf ("Vvedite 20 chelih 4isel :\n" );
for (i = 0; i < NUM; i++)
{
printf ("%d-oe 4islo --> ", i);
scanf ("%d", &a[i]);
}
int count, count1;
for( i = 0, count = 0, count1 = 0; i < NUM ; i++) {
if ((a[i] > 0) && (a[i+1] > 0))
count+=1;
if ((a[i] < 0) && (a[i+1] < 0))
count1+=1;
}
printf ("In this massiv \n");
for(i = 0; i < NUM; ++i)
printf(" %3d%s", a[i], ((i + 1)%5) ? "" : "\n");
printf("Kolichestvo sosedstv 2-h polositel'nih elementov = %d\n", count);
printf ("Kolichestvo sosedstv 2-h otricatel'nih elementov = %d\n", count1);
}
но работает несовсем корректно: чаще выдаёт верное количество , но бывает и неправильный результат, например в верхнем массиме программа выдаёт 8 соседств положительных вместо правильных 7....
В чём же дело?
Сообщение отредактировано: 18192123 -