python

Como Criar Funções em Python

As funções são uma parte essencial da programação em Python. Elas permitem organizar o código em blocos reutilizáveis, evitando repetições e tornando o programa mais eficiente e legível. 

QUESTÃO 1 - Calculadora de Tempo de Download

Um usuário deseja estimar o tempo necessário para baixar um arquivo grande.

Regras:

  • Calcular tempo em minutos

  • Considerar que 1 byte = 8 bits

  • Mostrar resultado com 2 casas decimais

Passos:

  1. Criar função calcular_tempo_download(tamanho_arquivo, velocidade)

  2. Implementar função main() para interação

  3. Garantir execução condicional

Exemplo:
				
					Digite o tamanho do arquivo (MB): 100

Digite a velocidade de download (Mbps): 50

Tempo estimado: 0.27 minutos (ou 16.00 segundos)
				
			
Resposta:
				
					def calcular_tempo_download(tamanho_arquivo, velocidade):
    # 1 MB = 8 Mb (1 byte = 8 bits)
    tamanho_megabits = tamanho_arquivo * 8
    # Tempo em segundos (tamanho em megabits / velocidade em megabits por segundo)
    tempo_segundos = tamanho_megabits / velocidade
    # Converte para minutos
    return tempo_segundos / 60

def main():
    tamanho = float(input("Tamanho do arquivo (MB): "))
    velocidade = float(input("Velocidade de download (Mbps): "))
    
    tempo = calcular_tempo_download(tamanho, velocidade)
    
    if tempo < 1:  # Se for menos de 1 minuto, mostra em segundos
        print(f"Tempo estimado: {tempo*60:.2f} segundos")
    else:
        print(f"Tempo estimado: {tempo:.2f} minutos")

if __name__ == "__main__":
    main()
				
			

QUESTÃO 2 - Sistema de Controle de Estoque Básico

Uma loja de componentes eletrônicos precisa controlar entradas e saídas no estoque.

Regras:

  • Não permitir estoque negativo

  • Atualizar quantidade após cada operação

  • Validar se há quantidade suficiente para saída

Passos:

  1. Criar função atualizar_estoque(estoque_atual, movimento, tipo)

  2. Implementar função main() com menu simples

  3. Garantir execução condicional

Exemplo:
				
					Estoque inicial: 100

1 - Entrada | 2 - Saída | 0 - Sair
Opção: 1
Quantidade: 23
Estoque atual: 123

1 - Entrada | 2 - Saída | 0 - Sair
Opção: 2
Quantidade: 3
Estoque atual: 120

1 - Entrada | 2 - Saída | 0 - Sair
Opção: 0
				
			
Resposta:
				
					def atualizar_estoque(estoque_atual, movimento, tipo):
    if tipo == 'entrada':
        return estoque_atual + movimento
    elif tipo == 'saida':
        if estoque_atual >= movimento:
            return estoque_atual - movimento
        else:
            return -1  # Código para estoque insuficiente

def main():
    estoque = int(input("Estoque inicial: "))
    
    while True:
        print("\n1 - Entrada | 2 - Saída | 0 - Sair")
        opcao = input("Opção: ")
        
        if opcao == '0':
            break
            
        quantidade = int(input("Quantidade: "))
        
        if opcao == '1':
            estoque = atualizar_estoque(estoque, quantidade, 'entrada')
            print(f"Estoque atual: {estoque}")
        elif opcao == '2':
            novo_estoque = atualizar_estoque(estoque, quantidade, 'saida')
            if novo_estoque == -1:
                print("Estoque insuficiente!")
            else:
                estoque = novo_estoque
                print(f"Estoque atual: {estoque}")

if __name__ == "__main__":
    main()
				
			

QUESTÃO 3 - Verificador de Velocidade de Internet

Uma empresa de telecomunicações precisa verificar se a velocidade contratada está sendo entregue ao cliente.

Regras:

  • Velocidade mínima deve ser 80% do contratado

  • Exibir “Dentro do padrão” ou “Abaixo do esperado”

  • Considerar margem de erro de 2% para baixo

Passos:

  1. Criar função verificar_velocidade(contratada, medida)

  2. Implementar função main() para entrada de dados

  3. Garantir execução apenas quando rodado diretamente

Exemplo:
				
					Velocidade contratada (Mbps): 100

Velocidade medida (Mbps): 55

Abaixo do esperado - Abrir chamado técnico
				
			
Resposta:
				
					def verificar_velocidade(contratada, medida):
    limite_aceitavel = contratada * 0.8 * 0.98  # 80% com margem de 2%
    return medida >= limite_aceitavel

def main():
    velocidade_contratada = float(input("Velocidade contratada (Mbps): "))
    velocidade_medida = float(input("Velocidade medida (Mbps): "))
    
    if verificar_velocidade(velocidade_contratada, velocidade_medida):
        print("Dentro do padrão")
    else:
        print("Abaixo do esperado - Abrir chamado técnico")

if __name__ == "__main__":
    main()
				
			

QUESTÃO 4 - Validador de Endereço de E-mail

Um desenvolvedor precisa criar um sistema de validação básica para endereços de e-mail em um formulário de cadastro.

Regras:
O e-mail deve atender aos seguintes requisitos:

  • Deve conter exatamente um caractere “@”

  • Deve ter pelo menos um ponto “.” após o “@”

  • O domínio (após o último ponto) deve ter entre 2 e 4 caracteres

Passos:

  1. Criar a função validar_email(email) que analisa o endereço e verifica se atende aos critérios

  2. Criar a função main() que solicita o e-mail ao usuário e exibe o resultado

  3. Garantir que o código só seja executado quando o arquivo for rodado diretamente

Exemplo:
				
					Digite seu e-mail: usuario@dominio.com

E-mail válido!
				
			
Resposta:
				
					def validar_email(email):
    # Verifica se tem exatamente um @
    if email.count('@') != 1:
        return False
    
    # Divide em nome e domínio
    partes = email.split('@')
    dominio = partes[1]
    
    # Verifica se tem pelo menos um ponto no domínio
    if '.' not in dominio:
        return False
    
    # Verifica o tamanho do TLD (última parte após ponto)
    tld = dominio.split('.')[-1]
    if not 2 <= len(tld) <= 4:
        return False
    
    return True

def main():
    email = input("Digite seu e-mail: ")
    if validar_email(email):
        print("E-mail válido!")
    else:
        print("E-mail inválido!")

if __name__ == "__main__":
    main()
				
			

QUESTÃO 5 - Calculadora de Consumo de Energia

Calcular consumo mensal de um equipamento em kWh.

Regras:

  • Potência (W) × horas/dia × 30 dias / 1000

  • Mostrar valor estimado em R$ (considerando R$ 0,75 por kWh)

Passos:

  1. Criar função calcular_consumo(potencia, horas)

  2. Implementar função main()

  3. Execução condicional

Exemplo:
				
					Potência do equipamento (W): 20

Horas de uso por dia: 12

Consumo mensal: 7.20 kWh

Custo estimado: R$ 5.40
				
			
Resposta:
				
					def validar_email(email):
    # Verifica se tem exatamente um @
    if email.count('@') != 1:
        return False
    
    # Divide em nome e domínio
    partes = email.split('@')
    dominio = partes[1]
    
    # Verifica se tem pelo menos um ponto no domínio
    if '.' not in dominio:
        return False
    
    # Verifica o tamanho do TLD (última parte após ponto)
    tld = dominio.split('.')[-1]
    if not 2 <= len(tld) <= 4:
        return False
    
    return True

def main():
    email = input("Digite seu e-mail: ")
    if validar_email(email):
        print("E-mail válido!")
    else:
        print("E-mail inválido!")

if __name__ == "__main__":
    main()
				
			

Caso o Python ainda não esteja instalado em seu dispositivo, clique no botão abaixo para realizar a instalação.

Posts Similares

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *