Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2017, 11:04   #1
Rainbow_
Пользователь
 
Регистрация: 18.03.2017
Сообщений: 35
Вопрос Сумма четных и нечетных елементов массива

Здравствуйте. Я написала для этой программы вот такой код. Но для нечетных сумма считается правильно, а для четных нет. Подскажите пожалуйста, в чём ошибка.
Код:
#include <iostream>
using namespace std;
void main()
{
	const int size=10;
	int ar[size];
	for (int i=0;i<size; i++)
	{
	cout<<"Enter element\n";
	cin>>ar[i];
	}
	cout<<"\n\n";
	int summ_p=0, summ_np=0;
		for (int i=0; i<size; i++)
		{
		if(i%2)
			{
			summ_np+=i;
			}
		else 
			{
				summ_p+=i;
			}
		}
	cout<<"Summa parnuh="<<summ_p<<"\n";
	cout<<"Summa neparnuh="<<summ_np<<"\n";
}
Rainbow_ вне форума Ответить с цитированием
Старый 15.05.2017, 11:42   #2
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 735
По умолчанию

Цитата:
Сообщение от Rainbow_ Посмотреть сообщение
Код:
summ_np+=i;
- ничего не понял, зачем номера массива-то прибавлять?!!!!!!! Вам, по-моему, четко сказали взять значение массива.
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
Cuprum5 вне форума Ответить с цитированием
Старый 15.05.2017, 11:43   #3
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 735
По умолчанию

Вот так нужно написать условие, по-моему:
Код:
if(i%2)
  summ_np += ar[i];
else 
  summ_p += ar[i];
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
Cuprum5 вне форума Ответить с цитированием
Старый 18.05.2017, 08:35   #4
Rainbow_
Пользователь
 
Регистрация: 18.03.2017
Сообщений: 35
По умолчанию

Точно, спасибо большое!
Rainbow_ вне форума Ответить с цитированием
Старый 18.05.2017, 09:23   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

нет, не верно.
если нужно посчитать для "Сумма четных и нечетных элементов массива"
тогда надо так:
Код:
if(ar[i]%2)
  summ_np += ar[i];
else 
  summ_p += ar[i];
а приведённый выше код считает сумму элементов, стоящих на чётных местах и сумму элементов, стоящих на нечётных местах.
(при этом первый элемент считается стоящим на чётном месте - ибо индекс идёт от нуля, второй элемент массива - на нечётном и т.д.)
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.05.2017, 09:47   #6
Rainbow_
Пользователь
 
Регистрация: 18.03.2017
Сообщений: 35
По умолчанию

Да, спасибо, и там исправила.
Rainbow_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка четных элементов массива по возрастанию, а нечетных-по убыванию - C (СИ) DimaIT Общие вопросы C/C++ 13 13.11.2015 22:22
найти номера нечетных элементов , стоящих на четных местах массива voytik Паскаль, Turbo Pascal, PascalABC.NET 5 26.09.2015 07:18
посчитать к-во четных и нечетных элементов массива kwain Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 15.12.2011 10:41
Сумма четных столбцов (в нечетных - текст) VictorM Microsoft Office Excel 6 23.10.2010 00:08