Ошибки компилятора, включая инициализатор перед ‘& lt;’ знак

Я пишу этот фрагмент кода для одной из головоломок Project Euler, чтобы попрактиковаться в программировании, и у меня возникли проблемы с тем, что я считаю парой синтаксических ошибок. Что я здесь не так делаю?

#include <iostream>
#include <string>

using namespace std;

int main()
{
int smallestMultiple = 10000;
int sum = 1;

for (int i = 100, i < smallestMultiple, i+2)
{
for (int j = 20, j >=10, j--)
{
sum = sum + (i % j);

}

if (sum == 1)
{
smallestMultiple = i;
}

else
{
sum = 1;
}
}

cout<< "The smallest number easily divisible by the numbers 1 to 20 is " << smallestMultiple << "." << endl;
}

Я получил следующие ошибки, когда я пытался скомпилировать этот код. Какой тип синтаксиса мне не хватает?

smallMultiple.cpp:6: error: expected ‘;’ before ‘int’
smallMultiple.cpp: In function ‘int main()’:
smallMultiple.cpp:12: error: expected initializer before ‘<’ token
smallMultiple.cpp:32: error: expected primary-expression at end of input
smallMultiple.cpp:32: error: expected ‘;’ at end of input
smallMultiple.cpp:32: error: expected primary-expression at end of input
smallMultiple.cpp:32: error: expected ‘)’ at end of input
smallMultiple.cpp:32: error: expected statement at end of input
smallMultiple.cpp:32: error: expected ‘}’ at end of input

-1

Решение

Синтаксис для использования; чтобы различать три выражения (инициализация, условие и обновление), поэтому вы должны написать:

for (int i = 100; i < smallestMultiple; i+=2)

вместо:

for (int i = 100, i < smallestMultiple, i+2)

если вы хотите перебрать i от 100 до наименьшего кратного с шагом 2

0

Другие решения

Здесь есть несколько вопросов:

  1. Части for цикл должен быть разделен точкой с запятой (;), а не запятая (,)
  2. Во-первых for петли, i + 2 не хранится нигде Предполагая, что вы хотели добавить 2 в iценность, вы должны использовать i+=2,

Итак, в заключение, ваш for петли должны выглядеть так:

for (int i = 100; i < smallestMultiple; i+=2)
{
for (int j = 20; j >=10; j--)
{
// rest of the code
0

По вопросам рекламы [email protected]