import array
spisok = array.array('I') # Массив положительных чисел.
for i in range(int(input())):
if not len([0 for z in range(1, i + 1) if not i % z]) % 2: spisok.append(i)
# not len(...) % 2 тоже что и len(...) % 2 == 0, но быстрее в 2 раза.
# [0 for z in ...] поскольку z нам не нужен, нам нужна лишь длина, я заменил его 0-ом.
print(len(spisok))
Или
Есть , ускорить код в 20 раз, cython.
from cpython.array cimport array
n = int(input()) + 1
spisok = array('I')
cdef unsigned int i, z
for i in range(n):
if not len([0 for z in range(1, i + 1) if not i % z]) % 2: spisok.append(i)
print(len(spisok))
Сохранишь этот код в файл с расширением pyx (например my_file.pyx)
В консоли введёшь команду:
pip install cython # библиотека
cythonize -i my_file.pyx || py -m cythonize -i main.pyx
И создай любой .py файл, добавь туда import того файла:
import my_file
Відповідь:
#include <iostream>
#include<string>
#include<cmath>
int main() {
setlocale(0,"");
double suma;
int misyac;
std::string s;
while(1){
try{
std::cout<<"Введіть суму вкладу:\n";
std::cin>>s;
suma = std::stod(s);
if(suma<=0) throw 4;/*Помилка від'ємного числа*/
break;
}
catch(int/*Ловимо помилку від'ємного числа'*/){
std::cout<<"Недопустиме значення, повторіть введення.\n";}
catch(.../*Ловимо будь-що*/){
std::cout<<"Невірний ввід, повторіть будь ласка.\n";
}}
while(1){
try{
std::cout<<"Введіть кількість місяців:\n";
std::cin>>s;
misyac = stoi(s);
if(misyac<0) throw 4;
break;
}
catch(int/*Ловимо помилку від'ємного числа*/){
std::cout<<"Недопустиме значення, повторіть введення.\n";}
catch(.../*Ловимо будь-що*/){
std::cout<<"Невірний ввід, повторіть будь ласка.\n";
}}
std::cout<<"За "<<misyac<<" місяців зі сумою вкладу розміром "<<
suma<<" гривень при депозиті у 10% за місяць у вас буде "<<suma*pow(1.1,misyac);
return 0;
}