Вc++ #include < iostream> int main(){ using namespace std; int k = 0; //счетчик чисел for (int i = 5584; i < = 6654; i++) { int issimple = 1; for (int j = 2; j < i / 2; j++) if (i % j == 0) { issimple = 0; //значит, число составное break; } if (issimple ! = 0) { int j = i; int sumnum = 0; while (j > 0) { sumnum = sumnum + (j % 10); //находим сумму цифр числа j = j / 10; } if (sumnum % 2 == 0) k = k + 1; } } cout < < k < < endl; return 0; }
ninaandreeva3179
04.09.2022
Попробуй так. думаю должно работать для умеренно небольшого n (во всяком случае до 8 или 9), смотря на сколько хватит стека. при больших n будет вылетать по ошибке памяти, наверное. компилятора под рукой нет, не тестировал, может где баг сидит. попробуй у себя, если что будет не так, то напиши. вводимое число должно быть больше или равно 2, иначе прога сбойнёт. program bobsfeel ; var n: integer ; var s: real ; function sm ( i : integer ) : real ; var znak : integer ; begin if ( i = 2 ) then sm : = 0.5 else begin if ( i % 2 = 1 ) then znak : = -1 else znak : = 1 ; sm : = znak / i + sm ( i - 1 ) ; end ; end ; begin write('vvdiete n > = 2 _') ; readln(n) ; s : = sm ( n ) ; writeln('s= ' , s ) ; end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Информация представленная в форме пригодной для хранения передачи и оброботки компьютером