3
respostas

[Projeto] Desafio 3 - Reiniciando o Jogo

Primeira vez postando. Admito que este deu trabalho. Ainda não consigo resolver os desafios de forma direta e objetiva. Preciso pensar no início, meio e fim. Como há muitos recursos que não foram ensinados, acaba tomando bastante tempo para quem está tendo o primeiro contato com programação e JavaScript. Demorei 3 dias para entender e encontrar essas respostas. Acabei tendo que ler bastante do MDN Web Docs e pedir explicações ao GPT hahahahaa.

Os desafios eu faço tudo junto na mesma seção do Visual Studio Code, faço uma cópia do material de aula e uso a página web que vem junto nesse material para testar os códigos, não sei fazer de outra forma.

obs: n consegui fazer a questao 4 ter como saida metros quando for metros. Se uso o exemplo de base10m e altura 2m, onde a resposta deveria ser 20m e 24m respectivamente, sai sempre cm².

1 - Cálculadora de IMC

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 - Cálculo Fatorial

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

3 - Conversor de dólar

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

4 - Área e perímetro de um retângulo

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

5 - Área e perímetro de um círculo

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

6 - Tabuada

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

3 respostas

Fala, Marcos! Tudo bom contigo, cara?

Primeiramente, meus parabéns por estar se propondo a fazer os desafios, e ainda mais parabéns por estar buscando tanto aprender pra poder realizar eles da melhor forma possível. Inclusive, se tem um coisa que você pode sim se acostumar é estar pesquisando no MDN e no ChatGPT hahaha. Eu gostei muito deles, cara, ficaram muito bons, vou só te passar aqui "correções" que poderiam ser feitas, tá certo:

PRIMEIRO DESAFIO Aqui, a única mudança ao meu ver seria substituir esses 'else's e 'ifs aninhados por 'else if's. Isso é um comando que particularmente descobri recentemente também e me ajudou muito. Daí, você poderia, por exemplo, substituir isso:

if (imc <=16.9) {
    alert (`Seu IMC é ${imc}, está classificado como muito abaixo do peso`);
} else {
    if (imc <= 24.9) {

Por isso:

if (imc <=16.9) {
    alert (`Seu IMC é ${imc}, está classificado como muito abaixo do peso`);
} else if (imc <= 24.9) {

Assim, você tem um único bloco de condição com várias condições, sem ter vários blocos de condição aninhados.

DESAFIO QUATRO e DESAFIO CINCO Aqui, a mudança seria na declaração de 'area' e 'perimentro', colocando 'let [area, perimetro]' ao invés de 'let {area, perimetro}', além de também fazer essa mesma mudança no retorno da função. E também fazer essa mesma mudança no desafio cinco, pras variáveis 'areaCirculo' e 'perimetroCirculo'

Enfim, essas são algumas correções mais na parte de sintaxe do código que eu tenho pra te passar, infelizmente eu não vou conseguir agora analisar a respeito daquele problema que você estava tendo na questão quatro agora, e como eu ainda estou aprendendo, eu não consegui identificar o erro olhando por alto, então peço desculpas por isso. Mas espero que tenha te ajudado de alguma forma, cara, e se tu quiser, me fala aqui que te mando meu contato no Linkedin ou no Discord, que daí a gente troca uma ideia e tenta se ajudar depois, fechou. Espero que tenha conseguido te ajudar de alguma forma, bons estudos, e abraços, meu amigo!

Fala Iury, tudo certo irmão?

Eu não conhecia o "else if". Pelo que entendi, ele serve para dar uma enxugada/organizada no código, e realmente fica mais claro. Pretendo começar a usar!

Até esse desafio, eu via o "return" como algo que retornava/devolvia valores e ponto. Quando tentei montar esse código pela primeira vez, foram erros atrás de erros. Daí, fui pesquisar e aprendi que, para conseguir retornar mais de um valor, precisaria declarar as variáveis. Para entender melhor, procurei exemplos, e neles, eram usadas as chaves, por isso repliquei automaticamente.

Quando comentaste sobre a mudança para colchetes, acabei me dando conta de que não sabia NADA da diferença entre eles, de quando usar um ou outro, hahaha.

Dei uma pesquisada aqui e, pelo que entendi, a principal diferença está relacionada aos nomes usados nos valores e nas variáveis. Quando os nomes dos valores lembram os nomes das variáveis e a ordem de saída não importa, é melhor usar as chaves. Agora, se os valores não têm essa relação e se a ordem importa, então usa-se colchetes.

Li pouco sobre isso, a explicação que passei ainda não está bem clara dentro da minha cabeça. Vou ter que estudar mais sobre.

E com relação ao LinkedIn, cometi o erro de não ter dado muita atenção a ele. Vim do Direito, terminei a faculdade e já saí empregado. Mudei pouco de emprego e sempre conseguia outro rapidamente, não via a necessidade. No entanto, está nos meus planos dar uma organizada nele.Te importa de me passar seu contato para que eu te adicione assim que der uma mexida ?

De qualquer forma, agradeço muito pelo incentivo e pela ajuda. Aprendi com a tua resposta e ela me fez ir atrás de coisas novas.

Tudo certo também, Marcos, muito obrigado!

Pô, bacana demais, cara, não sabia também dessa questão dos colchetes e chaves, tá aí algo que também vou pesquisar depois pra dar uma olhada, muito obrigado! Quanto à questão do Linkedin, assim que tiver tudo tranquilo então, me procura lá, meu usuário é 'Iury Gontijo Silva', daí a gente troca uma ideia. Abração, cara, e muito obrigado novamente pela informação aí, falou! Tamo junto!