Регистрация
Войти
Стать экспертом Правила
Информатика

Ввести одномерный массив A из 14 элементов. Определить среднее
арифметическое элементов, стоящих на позициях не кратных трём.

#include<iostream.h>

int main ()

{
int A[14];
int i;
float s, k, SrA;
for (i = 0; i<14; i++)
{
cout<<"\n A["<<i<<"] = ";
cin>>A[i];
}
cout<<"\t massiv A";
for (i = 0; i<14; i++)
cout<<"\t "<<A[i];
s = 0;
k = 0;
for (i = 0; i<14; i++)
if (i%3! = 0)
{
s = s+A[i];
k++;
}
SrA = s/k;
cout<<"\n s = "<<s;
cout<<"\n k = "<<k;
cout<<"\n SrA = "<<SrA;
return 0;
}

не считает первый элемент с "0" индексом

ОТВЕТЫ
А что удивляет Вы рассматриваете элементы с номерами, не кратными 3. Операция нахождения остатка от целочисленного деления при делении нуля на n всегда дает ноль, поэтому ноль получается кратен любому числу.
Вы рассматриваете элементы с индексами 1,2,4,5,7,8,10,11,13 - всего 9 элементов.
И да - при таком условии элемент с нулевым индексом в эту совокупность элементов не входит.
По мнению авторитетного GCC, C++ считает, что 0 3 = 0.
Либо добавить нулевой элемент вручную, либо же заполнять массив, начиная с единицы.
142
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам