Другие языки программирования и технологии

Вопрос по с++ хелп плиз а то мозг кипит

Данная последовательность целых чисел, за которой следует 0. Найти количество нечетных элементов этой последовательности на с++
#include <iostream>
using namespace std;

int main()
{
setlocale(LC_ALL, "Russian");
int x, n = 0;
cout << "Введите числа последовательности (0 - конец ввода): " << endl;
do
{
cin >> x;
n += x & 1; // или n += abs(x % 2);
} while (x);
cout << "Кол-во нечётных элементов последовательности: " << n;
cin.get();
cin.get();
return 0;
}
Серёга Steel
Серёга Steel
51 590
Лучший ответ
Тут два варианта. Если нечётными считаются значения, то проверить их остатком от деления на два, и те у которых он будет равен единице складывать в переменную-счётчик. Второй вариант, более сомнительный, принять за нечётность порядковые номера. Тогда сумму всех элементов разделить на два и прибавить к результату единицу, но только в том случае, если эта сумма не равна нулю. Поступив так, вы сможете решить задачу на любом языке, а не только на С++.
2114 Леший
99 820
Можно так
for(counter=0; a << cin ; )if( a % 2 ) counter++;
или через массив предзаданного
for(counter=0,int i=0; a[ i] && i < razm_massiva; i++)if( a[ i] % 2 ) counter++;
Игорь Литвинов
Игорь Литвинов
75 320
arr[число] // массив чисел
int count=0;
for (k=0;k<число; k++)
{
if ( arr[k] % 2)
count++;
}
count = к-ство нечетных (эт если массив например у тя)
Simon Kazaryan
Simon Kazaryan
8 401
size_t count(int* sequence)
{
size_t n = 0;
for ( ; *p; p++)
if (*p & 1)
n++;
return n;
}
Артём Зыль
Артём Зыль
1 769