M7) Finding the first even number

Each version of find_first_even in Listing 1 receives a list of integers. The function should print the first even number and stop. If the list has no even number, it should print No even number found.

Listing 1: Alternative implementations of the find_first_even function. The function finds and prints the first even number in a finite list, or prints No even number found. if the list contains no even number (Question 1).
(a)
def find_first_even(numbers):
    for number in numbers[:4]:
        if number % 2 == 0:
            print(number)
            # Stop after printing a match.
            return

    print("No even number found.")
(b)
def find_first_even(numbers):
    for number in numbers:
        if number % 2 == 0:
            print(number)
            # Stop after printing a match.
            return

    print("No even number found.")
(c)
def find_first_even(numbers):
    for i in range(1, len(numbers)):
        if numbers[i] % 2 == 0:
            print(numbers[i])
            # Stop after printing a match.
            return

    print("No even number found.")
(d)
def find_first_even(numbers):
    for number in numbers:
        if number % 2 != 0:
            print(number)
            # Stop after printing a match.
            return

    print("No even number found.")

The list can have any length. Which implementation meets the rule?