Skip to content

Instantly share code, notes, and snippets.

@rahulwa
Last active November 30, 2022 13:53
Show Gist options
  • Save rahulwa/5c1fcf33c5ae9eb545ea2394f773f488 to your computer and use it in GitHub Desktop.
Save rahulwa/5c1fcf33c5ae9eb545ea2394f773f488 to your computer and use it in GitHub Desktop.
from typing import List
def is_prime(x: int) -> bool:
if x > 1:
for i in range(2, int(x / 2) + 1):
if (x % i) == 0:
return False
break
else:
return True
# If the number is less than 1, its also not a prime number.
else:
return False
def is_even(x: int) -> bool:
return x % 2 == 0
def get_numbers_from_string(input: str) -> List[int]:
last_number = None
list_of_number = []
for i in input:
if i.isdigit():
last_number = f'{last_number}{i}' if last_number else i
continue
else:
if last_number:
list_of_number.append(int(last_number))
last_number = None
return list_of_number
def sum_of_even_and_odd_digits(numbers: List[int]) -> int:
sum = 0
for n in numbers:
if is_even(n) or is_prime(n):
sum += n
return sum
def sum_of_even_prime_numbers_in_string(input: str) -> int:
list_of_number = get_numbers_from_string(input)
sum_of_even_odd_num = sum_of_even_and_odd_digits(list_of_number)
print(f'sum of odd and even numbers in input is {sum_of_even_odd_num}')
return sum_of_even_odd_num
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment