1
resposta

[Dúvida] Função para parabenizar aniversariante

bool souAniversariante = true;


bool isAniversariante(bool aniversariante) {
    if (aniversariante == true) {
        print("Parabéns para você!");
        print("Nessa data querida!");
        print("Muitas felicidades!");
        print("Muitos anos de vida!");
    } else {
        print("Sem parabéns para você, hehe!");
    }
}

print(isAniversariante(souAniversariante));

Seria assim?

1 resposta

Oii, Augusto.

A resposta que você deu funcionava, mas não era a solução ideal para o exercício, e vale entender por quê.

O objetivo dessa atividade é simples: criar uma função que apenas concentre o código repetido, no caso, os print da música de parabéns.
Ou seja, a função deveria somente imprimir a música, nada mais.

Na sua resposta, porém, você acrescentou dois elementos que não eram pedidos:

  1. Você colocou um parâmetro (bool aniversariante)

O exercício não pedia para verificar se a pessoa é aniversariante.
Ele apenas pedia para transformar aqueles quatro print em uma função.
Adicionar lógica extra foge do objetivo e pode confundir quem está aprendendo o conceito naquele momento.

  1. A função foi declarada como bool, mas não retornava nada

Como ela só imprimia mensagens, o correto seria que ela fosse do tipo void.
Isso também é um indício de que você estava resolvendo algo mais complexo do que o exercício pedia.

Portanto, a resposta correta para este exercício é simplesmente:

void darParabens() {
  print("Parabéns para você!");
  print("Nessa data querida!");
  print("Muitas felicidades!");
  print("Muitos anos de vida!");
}

Essa versão cumpre exatamente o que o enunciado pedia:
concentrar os prints dentro de uma função para evitar repetição.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!