You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/br/2-js-basics/2-functions-methods/assignment.md

4.7 KiB

Diversão com Funções

Instruções

Neste exercício, você praticará a criação de diferentes tipos de funções para reforçar os conceitos que aprendeu sobre funções em JavaScript, parâmetros, valores padrão e declarações de retorno.

Crie um arquivo JavaScript chamado functions-practice.js e implemente as seguintes funções:

Parte 1: Funções Básicas

  1. Crie uma função chamada sayHello que não recebe nenhum parâmetro e simplesmente exibe "Olá!" no console.

  2. Crie uma função chamada introduceYourself que recebe um parâmetro name e exibe uma mensagem como "Oi, meu nome é [name]" no console.

Parte 2: Funções com Parâmetros Padrão

  1. Crie uma função chamada greetPerson que recebe dois parâmetros: name (obrigatório) e greeting (opcional, com valor padrão "Olá"). A função deve exibir uma mensagem como "[greeting], [name]!" no console.

Parte 3: Funções que Retornam Valores

  1. Crie uma função chamada addNumbers que recebe dois parâmetros (num1 e num2) e retorna a soma deles.

  2. Crie uma função chamada createFullName que recebe os parâmetros firstName e lastName e retorna o nome completo como uma única string.

Parte 4: Misturando Tudo

  1. Crie uma função chamada calculateTip que recebe dois parâmetros: billAmount (obrigatório) e tipPercentage (opcional, com valor padrão de 15). A função deve calcular e retornar o valor da gorjeta.

Parte 5: Teste suas Funções

Adicione chamadas de função para testar cada uma das suas funções e exibir os resultados usando console.log().

Exemplo de chamadas de teste:

// Test your functions here
sayHello();
introduceYourself("Sarah");
greetPerson("Alex");
greetPerson("Maria", "Hi");

const sum = addNumbers(5, 3);
console.log(`The sum is: ${sum}`);

const fullName = createFullName("John", "Doe");
console.log(`Full name: ${fullName}`);

const tip = calculateTip(50);
console.log(`Tip for $50 bill: $${tip}`);

Rubrica

Critério Exemplar Adequado Precisa Melhorar
Criação de Funções Todas as 6 funções são implementadas corretamente com sintaxe e convenções de nomenclatura adequadas 4-5 funções são implementadas corretamente com pequenos problemas de sintaxe 3 ou menos funções implementadas ou erros graves de sintaxe
Parâmetros e Valores Padrão Usa corretamente parâmetros obrigatórios, opcionais e valores padrão conforme especificado Usa parâmetros corretamente, mas pode ter problemas com valores padrão Implementação de parâmetros incorreta ou ausente
Valores de Retorno Funções que devem retornar valores fazem isso corretamente, e funções que não devem retornar valores apenas executam ações A maioria dos valores de retorno está correta, com pequenos problemas Problemas significativos com declarações de retorno
Qualidade do Código Código limpo, bem organizado, com nomes de variáveis significativos e indentação adequada Código funciona, mas poderia ser mais limpo ou melhor organizado Código difícil de ler ou mal estruturado
Testes Todas as funções são testadas com chamadas de função apropriadas e os resultados são exibidos claramente A maioria das funções é testada adequadamente Testes limitados ou incorretos das funções

Desafios Extras (Opcional)

Se você quiser se desafiar ainda mais:

  1. Crie uma versão com função arrow de uma das suas funções
  2. Crie uma função que aceita outra função como parâmetro (como os exemplos de setTimeout da aula)
  3. Adicione validação de entrada para garantir que suas funções lidem com entradas inválidas de forma adequada

💡 Dica: Lembre-se de abrir o console do desenvolvedor do seu navegador (F12) para ver a saída das suas declarações console.log()!


Aviso Legal:
Este documento foi traduzido utilizando o serviço de tradução por IA Co-op Translator. Embora nos esforcemos para garantir a precisão, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original em seu idioma nativo deve ser considerado a fonte autoritativa. Para informações críticas, recomenda-se a tradução profissional feita por humanos. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução.