4
respostas

09 Desafio: hora da prática

diaDaSemana = prompt ('Qual dia da semana?'); if ( diaDaSemana == 'Sabádo') { alert ('Bom finall de Semana'); } else if (' diadasemana== Domingo'); { alert ('Bom final de Semana') } else { alert ('Boa semana'); }

numero = prompt ('Digite positivo ou negativo'); { if ('numero > 0 = positivo'); } alert ('Número Positivo') { else alert ('numero < 0 = negativo') }

pontuacao = 111; if (' pontuacao >= 100'){ console.log ('Parabéns'); { } if ( 'pontuacao <= 100') { console.log ('Errrrouuuu'); }

let saldadaconta = 1000; alert ('Seu saldo é de $${saldoda conta}');

lte nome = prompt ('Qual seu nome?'); alert (' Boas vindas ${nome}');

4 respostas

Olá, Marcos! Tudo bem? Vou analisar cada um dos seus exercícios e ter dar um feedback =D

1 - Há um pequeno erro na maneira em que você escreveu o código. Quando vamos definir uma variável, é necessário a identificarmos por 'let' e a seguir definir o nome da variável. Ficando dessa maneira:

let diaDaSemana

Além disso, uma sugestão que eu daria, para diminuir as linhas do seu código, é colocar a condição do dia da semana ser domingo ou sábado na mesma estrutura, já que ambas pertencem ao fim de semana. Em resumo, o código ficaria assim:

let diaDaSemana = prompt('Qual dia da semana?'); 

if ( diaDaSemana == 'Sábado' || diaDaSemana == 'Domingo') {
    alert ('Bom final de Semana'); 
}else{
    alert ('Boa semana'); 
}

Esse símbolo "||" é utilizado para condições onde eu quero que ocorra uma coisa OU outra. Ele pertence a um subtema da programação chamado "operadores lógicos". Recomendo dar uma conferida nesse site para compreender melhor: Resumo Básico de Operadores em Programação

2 - Inicialmente, tem o mesmo problema que mencionei anteriormente, de identificar a variável com "let"

let numero =  prompt('Digite positivo ou negativo');

Além disso, têm pequenos erros na escrita das estruturas condicionais. Primeiramente, há o uso errado das chaves e em seguida, uma atribuição no meio da estrutura, quando você digita 'numero > 0 = positivo'. Também foi colocado um ";" numa estrutura 'if-else', porém tal condicional não recebe ";", apenas parênteses e chaves. Outro fator importante, é que quando estamos comparando valores, e utilizamos o método 'prompt', é necessário transformar esse valor gerado pela entrada no prompt em um número inteiro, a partir do método parseInt() - esse método foi ensinado durantes as aulas, sugiro dar uma revisada no módulo. Corrigindo, ficaria assim:

let numero = parseInt(prompt ('Digite positivo ou negativo'));

if(numero > 0){
    alert('Número positivo');
}else{
    alert('Número negativo'); 
    }

Vale destacar que também existe uma condição onde o número não será negativo nem positivo, mas sim, nulo - ou seja, igual a zero. Não foi mencionado no exercício, mas é necessário ter essa noção. Então, a melhor lógica seria:

let numero = parseInt(prompt ('Digite positivo ou negativo'));

if(numero == 0){
    alert('Número nulo');
}else if(numero > 0){
    alert('Número positivo');
}else{
    alert('Número negativo'); 
}

3 - Novamente, o mesmo problema em identificar a variável.

pontuacao = 111;

Corrigida:

let pontuacao = 111;

Analisando as outras partes:

if ('pontuacao >= 100'){

Acima temos um erro bastante comum, que é colocar aspas duplas ou simples dentro de uma condicional. Mas lembre-se que estamos tratando de variáveis e números do tipo inteiro. No exercício 1 os dias das semanas eram delimitadas por aspas simples (' ') por se trataram de strings (texto), porém nesse exercício, estamos relacionando números. Logo, a estrutura não recebe aspas. Ficando assim:

if(pontuacao >= 100){

Após isso, temos o seguinte trecho:

if(pontuacao >= 100){
    console.log ('Parabéns'); {

Acredito que deva ter errado na hora da digitação, mas para fechar uma estrutura 'if' usamos a chave assim: }. Corrigindo:

if(pontuacao >= 100){
    console.log ('Parabéns'); }

Na segunda estrutura if:

if ( 'pontuacao <= 100'){ 
    console.log ('Errrrouuuu'); 
}

Além do equívoco em colocar aspas simples dentro do parênteses, existe um erro de lógica. No exercício é pedido pra imprimir 'Parabéns' caso a pontuação seja MAIOR ou IGUAL a 100. Caso o contrário, ou seja, caso a pontuação seja MENOR que 100, imprimimos 'Tente novamente para ganhar.'. Você se enganou e colocou na segunda estrutura o sinal de "menor OU igual", sendo que é pedido que seja APENAS menor. Corrigindo, ficaria assim:

if(pontuacao < 100){
    console.log('Tente novamente para ganhar.')
}

Gostaria de mencionar que uma boa prática seria colocar essa chaves abaixo e mesclar com a estrutura 'else'. Dessa forma, acredito que podemos ter uma visão mais clara do código - mas isso é uma opinião pessoal. Ficaria assim:

if(pontuacao >= 100){
    console.log ('Parabéns'); 
}else{
    console.log('Tente novamente para ganhar.')
}

Não tem problema em adicionar duas estruturas if. Adicionar um else é só uma questão de boa prática que vai ser desenvolvida melhor com o tempo. Pense o seguinte: se o número não for maior, nem igual a 100 só se resta ser menor. Logo, o else se encaixaria, pois eu teria uma condição (pontuacao >= 100) OU outra (pontuacao < 100).

4 - Vamos dar uma olhada no seu código.

let saldadaconta = 1000; 
alert ('Seu saldo é de $${saldoda conta}');

Quando vamos nomear uma varíavel, usamos a prática CamelCase, que consiste em iniciar o nome de uma variável com letra minúsculas, e as demais palavras inseridas na variável iniciariam com letra maiúscula. Exemplo:

- Sem CamelCase:
    let nomedousuario = 'João'
- Com CamelCase:
    let nomeDoUsuario= 'João'

Então, apesar do nome da sua varíavel não estar totalmente incorreta, não é a melhor prática. O ideal seria:

let saldoDaConta = 1000; 

Assim, a leitura da variável se torna bem melhor. Na segunda parte do seu código:

alert ('Seu saldo é de $${saldoda conta}');

Você utiliza de aspas simples para imprimir a mensagem. Porém, quando utilizamos template string - método para consultar e imprimir o valor de uma variável como em ${saldoDaConta} - para incluir o valor de uma variável, devemos colocar a mensagem dentro de uma crase (´). Além disso, foi adicionado dois símbolos $, um ao lado do outro. Para imprimir corretamente, o primeiro $ deve ter um espaço antes do ${saldoDaConta}. No geral, o trecho corrigido ficaria da seguinte maneira:

alert(`Seu saldo é de $ ${saldoDaConta}`);

5 - Vamos analisar seu código:

lte nome = prompt ('Qual seu nome?'); 
alert (' Boas vindas ${nome}');

Primeiramente, acredito que houve apenas um erro de digitação rápida na primeira parte, então tudo bem. No segundo trecho, houve o erro que mencionei no exercício 4, que é deixar de colocar a mensagem entre crases, dado que estamos usando um template string. Corrigindo:

let nome = prompt('Qual seu nome?');
alert(`Boas vindas ${nome}`);

Espero que eu tenha ajudado de alguma forma =D Bons estudos!!

Desafio 1 - dia da semana let diaDaSemana = prompt("Qual é o dia da semana?");

if (diaDaSemana === "Sábado" || diaDaSemana === "Domingo") { alert("Bom fim de semana!"); } else { alert("Boa semana!");

Desafio 2 - verifica número digitado let numero = prompt("Digite um número:");

if (numero > 0) { alert("O número é positivo."); } else if (numero < 0) { alert("O número é negativo."); } else { alert("O número é zero."); }

Desafio 3 - sistema de pontuação let pontuacao = prompt("Qual é a sua pontuação?");

if (pontuacao >= 100) { alert("Parabéns, você venceu!"); } else { alert("Tente novamente para ganhar."); }

Desafio 4 - mensagem let saldo = prompt("Digite o saldo da sua conta:");

alert(Seu saldo atual é: R$${saldo});

Desafio 5 - boas vindas let nome = prompt("Qual é o seu nome?");

alert(Bem-vindo(a), ${nome}!);