Loading...
MishoMoney avatar MishoMoney 16 Точки

7. Суми прости и непрости числа

Колеги,

Имам проблем със 7-ма задача. Кодът ми работи и според мене прави точно това, което се иска. Но джъдж ми дава само 60/100.

Някакви идеи в какво греша?

 

input_num = None
sum_non_prime = 0
sum_prime = 0

while not input_num == 'stop':
    input_num = input().lower()
    if not input_num == 'stop':
        input_num = int(input_num)
    else:
        break
    if input_num < 0:
        print('Number is negative.')
    else:
        for i in range(2, input_num):
            if input_num % i == 0:
                sum_non_prime += input_num
                break
            if i == input_num - 1:
                sum_prime += input_num

print(f'Sum of all prime numbers is: {sum_prime}')
print(f'Sum of all non prime numbers is: {sum_non_prime}')
Тагове:
0
MishoMoney avatar MishoMoney 16 Точки

Благодаря, твоят код дава 100/100. А и ми помогна да намеря грешката си. Моят код не ловеше 1 и 2. 

Сега го оправих и дава 100/100. Но товят начин е по-елегантен

 

input_num = None
sum_non_prime = 0
sum_prime = 0

while not input_num == 'stop':
    input_num = input().lower()
    if input_num == 'stop':
        break
    input_num = int(input_num)

    if input_num < 0:
        print('Number is negative.')
    elif input_num == 1:
        sum_non_prime += input_num
    else:
        for i in range(2, input_num):
            if input_num % i == 0 and not input_num == 2:
                sum_non_prime += input_num
                break
            if i == input_num - 1:
                sum_prime += input_num

        if input_num == 2:
            sum_prime +=2

print(f'Sum of all prime numbers is: {sum_prime}')
print(f'Sum of all non prime numbers is: {sum_non_prime}')
0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.