1. Apresente três opções para o usuário escolher, numeradas de 1 a 3 . Use a função input () para obter a escolha do usuário. Usando uma condicional, execute a função (ou rotina) ou a sequência de instruções correspondente à opção desejada. Por exemplo, uma opção pode ser desenhar um quadrado, outra desenhar um círculo, e a terceira desenhar um polígono.

Passo 1

O enunciado pede que eu faça um programa que:
  • Apresente três opções numeradas de 1 a 3 para o usuário escolher.
  • Use a função input() para obter a escolha do usuário.
  • Use uma condicional para executar a rotina correspondente à opção escolhida.
    O enunciado dá como exemplo opções do tipo: desenhar um quadrado, desenhar um círculo, desenhar um polígono. Vou usar exatamente essas três opções no programa. Não vou te perguntar nada — farei o programa completo e explicarei passo a passo como ele funciona.

Passo 2

Por que vou escolher Python com o módulo turtle para desenhar?
  • É um método simples e visual: você vê o resultado (desenho) sem instalar bibliotecas externas.
  • Usa apenas conceitos básicos pedida pela questão: input() e condicional (if/elif/else).
  • É prático para estudar: dá pra entender função por função e cada comando tem efeito direto no desenho.
    Então o plano: mostrar um menu, ler a opção com input(), converter para inteiro, e usar if/elif/else para chamar a função de desenho adequada.

Passo 3

Entendendo input() e conversão:
  • input(prompt) mostra prompt ao usuário e retorna uma string (texto).
  • Se queremos tratar escolhas numéricas (como 1, 2, 3), precisamos converter a string para inteiro com int(...).
  • Conversão pode falhar (por exemplo, se o usuário digitar “abc”). Para isso, usamos try/except para capturar ValueError e tratar a entrada inválida.
    Exemplo rápido:
s = input("Digite um número: ")
try:
    n = int(s)
except ValueError:
    print("Entrada inválida")
No programa, farei isso ao ler a escolha do menu e também ao ler tamanhos/raios.

Passo 4

Entendendo condicionais (if / elif / else):
  • Estrutura básica:
if escolha == 1:
    # faz algo
elif escolha == 2:
    # faz outra coisa
else:
    # alternativa padrão
  • == compara valores (verifica igualdade). Não confundir com = que é atribuição.
  • Vou usar if para verificar se a escolha é 1, elif para 2 e 3, e else para tratar opções desconhecidas.

Passo 5

Dividindo em funções (boa prática e importante para prova):
  • Funções deixam o código organizado e permitem reuso.
  • Vou criar três funções de desenho:
    • draw_square(turtle_obj, size) — desenha um quadrado de lado size.
    • draw_circle(turtle_obj, radius) — desenha um círculo de raio radius.
    • draw_polygon(turtle_obj, sides, size) — desenha um polígono com sides lados e lado de comprimento size.
      Explicando cada parâmetro:
  • turtle_obj é o objeto Turtle() que fará os movimentos (evita usar variáveis globais direto).
  • size e radius são números inteiros que controlam o tamanho do desenho.
  • sides é o número de lados do polígono (deve ser inteiro >= 3).

Passo 6

Noções básicas do turtle que usarei:
  • import turtle importa o módulo.
  • screen = turtle.Screen() cria a janela.
  • pen = turtle.Turtle() cria a “caneta” que desenha.
  • pen.forward(x) move a caneta para frente x pixels.
  • pen.right(angle) gira a caneta para a direita angle graus.
  • pen.circle(r) desenha um círculo de raio r.
  • screen.exitonclick() mantém a janela aberta até o usuário clicar — útil para ver o desenho.
    No polígono regular, cada ângulo de giro é 360 / sides graus (cálculo simples: completa-se uma volta).

Passo 7

Como será o fluxo do programa ( passo a passo executivo ):
  1. Mostrar um menu com as três opções (1, 2, 3) usando input().
  2. Tentar converter a entrada para int. Se inválida, imprimir mensagem e encerrar (ou poderia repetir — optei por encerrar para manter simples e claro).
  3. Se escolha for 1: pedir o tamanho do lado e desenhar um quadrado chamando draw_square.
  4. Se escolha for 2: pedir raio e desenhar o círculo chamando draw_circle.
  5. Se escolha for 3: pedir número de lados e tamanho do lado; validar sides >= 3; chamar draw_polygon.
  6. Se escolha for outra coisa, informar que a opção é desconhecida.
  7. Ao final, usar screen.exitonclick() para manter a janela até o clique do usuário.

Passo 8

Dicas para a prova (como escrever um código semelhante rápido):
  • Não esqueça de converter o input() para int se for comparar números.
  • Sempre trate entradas inválidas com try/except ou verificando str.isdigit() quando apropriado.
  • Separe funcionalidades em funções curtas — facilita a leitura e a correção.
  • Para desenhos, lembre que para um polígono regular o ângulo de rotação é 360 / n.
  • No enunciado da prova pode ser suficiente só escrever o pseudocódigo ou um esqueleto; seja claro no menu, conversão e condicionais.

Passo 9

Vou entregar agora o programa final pronto para execução. Ele usa input() para receber a escolha e usa condicionais para executar a rotina escolhida. Se quiser rodar, copie o código para um arquivo .py e execute em um ambiente que suporte turtle (IDLE, terminal com GUI, etc.). O próximo bloco contém somente o código exigido pelo enunciado.

Resposta

import turtle
def draw_square(turtle_obj, size):
for _ in range(4):
turtle_obj.forward(size)
turtle_obj.right(90)
def draw_circle(turtle_obj, radius):
turtle_obj.circle(radius)
def draw_polygon(turtle_obj, sides, size):
angle = 360 / sides
for _ in range(sides):
turtle_obj.forward(size)
turtle_obj.right(angle)
def main():
screen = turtle.Screen()
pen = turtle.Turtle()
pen.speed(3)
menu = "Escolha uma opção:\n1 - Quadrado\n2 - Círculo\n3 - Polígono\nDigite o número da opção: "
choice_str = input(menu)
try:
    choice = int(choice_str)
except ValueError:
    print("Entrada inválida: digite 1, 2 ou 3.")
    screen.bye()
    return

if choice == 1:
    size_str = input("Tamanho do lado (por exemplo, 100): ")
    try:
        size = int(size_str)
    except ValueError:
        print("Entrada inválida para tamanho. Usando 100.")
        size = 100
    draw_square(pen, size)

elif choice == 2:
    r_str = input("Raio do círculo (por exemplo, 50): ")
    try:
        r = int(r_str)
    except ValueError:
        print("Entrada inválida para raio. Usando 50.")
        r = 50
    draw_circle(pen, r)

elif choice == 3:
    sides_str = input("Número de lados (inteiro >= 3, por exemplo, 5): ")
    size_str = input("Tamanho do lado (por exemplo, 80): ")
    try:
        sides = int(sides_str)
        size = int(size_str)
    except ValueError:
        print("Entrada inválida. Usando 5 lados e tamanho 80.")
        sides = 5
        size = 80
    if sides < 3:
        print("Um polígono precisa ter pelo menos 3 lados.")
    else:
        draw_polygon(pen, sides, size)

else:
    print("Opção desconhecida. Digite 1, 2 ou 3.")

screen.exitonclick()
if name == “main”:
main()

Exercícios relacionados