Итак, я пытаюсь разделить числа в векторе с вероятностями и равными. Когда я делал логическое значение, чтобы увидеть, четное или нечетное число. Тогда я получаю сообщение об ошибке
project.cpp: In function 'int main()':
project.cpp:17:33: error: a function-definition is not allowed here before '{' token
bool OddsOrEvens (int x){
^
project.cpp:26:1: error: expected '}' at end of input
}
^
project.cpp:26:1: error: expected '}' at end of input
Вот мой код
#include <iostream>
#include <vector>
using namespace std;
int main(){
std::vector<int> numbers;
for (int i = 1;i <= 10; i++){
numbers.push_back(i);
}
int x = 0;
while(x < numbers.size()){
cout << numbers[x] << '\n';
bool OddsOrEvens (int x){
bool status = true;
if (numbers[x] / 2 = 0){
bool status = false
}
return status;
}
}
return 0;
}
1) В C++ не может быть вложенных функций. 2) while(x < numbers.size()) Это бесконечный цикл, поскольку x никогда не меняется. 3) if (numbers[x] / 2 = 0) Не будет компилироваться из-за = и не будет работать из-за /.
Переместите все определение функции OddsOrEvens () до int main ()





Вы определяете функцию в файле main. Перепишите функцию вне main, а затем вызовите ее в своем main. Также рекомендуется ставить скобки на новые строки, если ваша функция не является только одной строкой. Также не рекомендуется объявлять переменные вне функции, как в строке 11, если только эта переменная не останется постоянной.
Как это:
bool OddsOrEvens (int x)
{
//function logic here
}
//main should go after the function here
int main()
{
//logic...
}
Что такое
OddsOrEvens?