Вопрос по информатике:
Ввести одномерный массив 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" индексом
- 22.03.2016 14:56
- Информатика
- remove_red_eye 13095
- thumb_up 22
Ответы и объяснения 2
По мнению авторитетного GCC, C++ считает, что 0 % 3 = 0.
Либо добавить нулевой элемент вручную, либо же заполнять массив, начиная с единицы.
- 23.03.2016 13:20
- thumb_up 4
А что удивляет? Вы рассматриваете элементы с номерами, не кратными 3. Операция нахождения остатка от целочисленного деления при делении нуля на n всегда дает ноль, поэтому ноль получается кратен любому числу.
Вы рассматриваете элементы с индексами 1,2,4,5,7,8,10,11,13 - всего 9 элементов.
И да - при таком условии элемент с нулевым индексом в эту совокупность элементов не входит.
- 24.03.2016 22:42
- thumb_up 11
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.