Логическая ошибка. Но где?
Ты ж монетку до входа в цикл один раз бросаешь, а потом сто раз на нее смотришь.
Упрощу твой алгоритм до одной строки:from random import randint
n = 100

reshka = sum(randint(1, 100) % 2 for _ in range(n))

print("\nThere are ", reshka, "reshkas and ", n - reshka, "orels")
Или проще:sum(randint(0, 1) for _ in range(n))