Здравствуйте, мне нужна помощь с программой на C++.
Мне нужно написать программу, вывод которой должен быть таким: каждый первый элемент массива равен 1, а каждый второй-0. Мне нужно проверить в массиве, если элемент нечетный, то распечатать 1, а если элемент нечетный, то распечатать 0. Мне нужно проверить это условие в if condition.Точно так же, как конечный автомат. Мне это не удается. Любая помощь будет оценена по достоинству.
Что я уже пробовал:
using namespace std; int main(){ cout<<"Enter the size of array"<<"\n"; int n,i; cin>>n; int array[n]; for( i=0; i<n;i++){ if(array[i] % 2!=0 && array[i] % 2==0){ } cout<<"1,0"; } }
0x01AA
один.) if(array[i] % 2!=0 && array[i] % 2==0)
на словах:
если значение нечетное, а значение четное
б.) цитата: "Мне нужно проверить в массиве, есть ли элемент странный затем выведите 1 и если элемент является странный затем распечатайте 0"
Richard MacCutchan
Ваша главная проблема заключается в том, что вы никогда не вводите никаких значений в массив.
0x01AA
Очень хороший момент, который я пропустил :-O
Nabeel Munir
Здравствуйте, не могли бы вы быть немного конкретнее?
После попытки использовать приведенный ниже код:
для(i= 0; i < n; i++)
{
if(array[i] % 2 !=0 || array[i] % 2 ==0){
cout<<"1,0,";
}
}
когда я выполняю код, например пользователь вводит размер массива = 4, вывод, который он дает, равен 1,0,1,0,1,0,1,0... Что все еще неверно. что мне нужно, так это то, что если пользователь вводит значение 4, то вывод должен быть: 1,0,1,0. каждый нечетный должен быть 1, каждый четный должен быть 0.
0x01AA
- каждый нечетный должен быть равен 1, каждый четный-0."
Индекс массива или содержимое массива?
Что это сейчас такое if(array[i] % 2 !=0 || array[i] % 2 ==0)
?
Так будет всегда истинный....
Либо число нечетное, либо четное. Чтобы проверить на четность (value % 2) == 0
хватить. И если результат этой проверки ложен, вы знаете, что число нечетное....
Richard MacCutchan
Вы создали массив из n элементов, но никогда не вкладывали в него никаких значений. Поэтому любые результаты, которые вы получаете, бессмысленны. Как только у вас есть массив, вы должны заполнить его числами от 1 до n. И если тест все-таки неправильно. Вам нужно проверить только одно условие, нечетное или четное, а не для обоих.
Попробуйте сначала написать спецификацию и шаги, необходимые для вашей программы. Затем вы можете использовать эту информацию для построения кода простым логическим способом.