Read 10 integers and get the largest number between them

1

Using a function, make a program that reads 10 integers and print the largest of them on the screen. For equal values, print any of the larger values. If the largest number is multiple of the first number n read, print n on the screen. Ten integer numbers, consider that the first number read will never be 0.

Can anyone help me with this? I'm still a layman in Python.

n = int(input())
b = int(input())
c = int(input())
d = int(input())
e = int(input())
f = int(input())
g = int(input())
h = int(input())
i = int(input())
j = int(input())

lista = [n,b,c,d,e,f,g,h,i,j]

print (max(lista))
    
asked by anonymous 29.09.2017 / 15:01

3 answers

1

Another way would be:

# Define a função:
def exercicio():

    # Lista com os números lidos:
    numeros = []

    # Lê o primeiro número, garantindo que não seja zero:
    numero = 0
    while numero == 0:
        numero = int(input("Entre com o 1º número: "))
        if numero == 0:
            print("O 1º número não pode ser zero.")
    numeros.append(numero)

    # Lê os outros nove números:
    for i in range(9):
        numero = int(input("Entre com o %dº número: " % (i+2)))
        numeros.append(numero)

    # Obtém o maior valor e exibe-o na tela:
    maior = max(numeros)
    print("O maior valor é", maior)

    # Verifica se o maior valor é múltiplo do primeiro:
    multiplo = maior % numeros[0] == 0

    # Se for, exibe o primeiro valor na tela:
    if multiplo:
        print("O maior valor é múltiplo do primeiro, que é", numeros[0])

# Chama a função definida:
exercicio()

See working at Ideone | Repl.it

I think with the comments in the code you can understand it. The reading of the first value was done separately because it responds to conditions different from the other values.

    
29.09.2017 / 15:42
1

Initially you need to mount a função :

def maxNum_input(): #declara a função
    list_num = [] #declara a lista que vai receber os números
    i = 0 # um contador(há outras formas de fazer)
    while i < 10: # o loop
        number = int(input("Digite um número diferente de 0: ")) # a entrada você pode criar algo para impedir que o usuário digite 0
        list_num.append(number) # adiciona cada entrada a lista
        i += 1 # incrementa o contador
    if (max(list_num) % list_num[0]) == 0: # verifica se é múltiplo
        print("O maior número é múltiplo de :",list_num[0])
    print(max(list_num)) # a saída   
maxNum_input() # a chamada da função
    
29.09.2017 / 15:41
0

I could do it this way:

cont = 0
lista_numeros =[]
while cont != 10: #Para poder pegar 10 numeros
    numero = int(input('Digite um numero: '))
    lista_numeros.append(numero)
    cont = cont + 1

maior = max(lista_numeros) # O max retorna o numero máximo em uma lista
if maior % lista_numeros[0] == 0 :
     print ('É múltiplo')
else:
     print ('Não é múltiplo')

The '%' operator returns the remainder of the division, so you can test whether the largest number is divisible by the first.

    
29.09.2017 / 15:20