3
respostas

Desafio: Condicionais e concatenação com Menu

Implementei as tarefas solicitadas utilizando um Menu para escolha da opção desejada.

do{
    menu = prompt("Escolha uma opção:" +
        "\n 1. Dia da Semana." +
        "\n 2. Número Positivo ou Negativo?" +
        "\n 3. Jogo de Pontuação." +
        "\n 4. Saldo conta." +
        "\n 5. Seu nome." +
        "\n 0. Sair.");

    if(menu == 1){
        // 1. Pergunte ao usuário qual é o dia da semana. 
        // Se a resposta for "Sábado" ou "Domingo", mostre "Bom fim de semana!". 
        // Caso contrário, mostre "Boa semana!".
        dia_da_semana = prompt("Digite o dia da semana:").toLowerCase();

        if (dia_da_semana == "sábado" || dia_da_semana == "domingo"){
            alert("Bom final de semana!");

        }if(dia_da_semana == "segunda"
            || dia_da_semana == "terça"
            || dia_da_semana == "quarta"
            || dia_da_semana == "quinta"
            || dia_da_semana == "sexta"){
            alert("Boa semana!");
        }
        else{
            alert("Digite um dia da semana válido!");
        }
    }

    if(menu == 2){
        // 2. Verifique se um número digitado pelo usuário é positivo ou negativo. 
        // Mostre um alerta informando.
        numero_digitado = prompt("Digite um número:");

        if (numero_digitado > 0){
            alert("Número Positivo!");  
        }
        if (numero_digitado < 0){
            alert("Número Negativo!");
        }
        else{
            alert("Seu número é 0!");
        }
    }

    if(menu == 3){
        // 3. Crie um sistema de pontuação para um jogo. 
        // Se a pontuação for maior ou igual a 100, mostre "Parabéns, você venceu!". 
        // Caso contrário, mostre "Tente novamente para ganhar.".

        pontuacao = prompt("Digite seus pontos:");

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

    if(menu == 4){
        // 4. Crie uma mensagem que informa o usuário sobre o saldo da conta, 
        // usando uma template string para incluir o valor do saldo.

        saldo = prompt("Digite seu saldo:")
        alert(`Saldo da Conta: R$${saldo}`);
    }

    if(menu == 5){
        // 5. Peça ao usuário para inserir seu nome usando prompt. 
        // Em seguida, mostre um alerta de boas-vindas usando esse nome.

        nome = prompt("Digite seu Nome:");
        alert("Seja Bem Vindo(a) " + nome);
    }
    
    if(menu == 0){
        break;   
    }
    
    if(menu >5 || menu < 0){
        alert("Digite uma opção válida");
    }
    
}while(menu != 0)
3 respostas

Oi Camilla,

Parabéns pela iniciativa de usar um menu para organizar os desafios! 👏

Seu código está bem estruturado e fácil de entender.

Para saber mais: Documentação sobre switch no JavaScript - Explore a estrutura switch para organizar melhor seu menu.

Continue praticando e explorando as possibilidades da programação! 💻

Uma dúvida Luis, utilizando o switch case como faço pra validar uma opção digitada errada? E como deixo o menu em loop até o usuário digitar a opção de sair utilizando o switch? Obrigada Luis pelas dicas de melhoria. ☺️

opcao = parseInt(prompt("Escolha uma opção:" +
        "\n 1. Dia da Semana." +
        "\n 2. Número Positivo ou Negativo?" +
        "\n 3. Jogo de Pontuação." +
        "\n 4. Saldo conta." +
        "\n 5. Seu nome." +
        "\n 0. Sair."));
        
        switch(opcao){
    
            case 1:
                // 1. Pergunte ao usuário qual é o dia da semana. 
                // Se a resposta for "Sábado" ou "Domingo", mostre "Bom fim de semana!". 
                // Caso contrário, mostre "Boa semana!".
                dia_da_semana = prompt("Digite o dia da semana:").toLowerCase();

                if (dia_da_semana == "sábado" || dia_da_semana == "domingo"){
                    alert("Bom final de semana!");

                }if(dia_da_semana == "segunda"
                    || dia_da_semana == "terça"
                    || dia_da_semana == "quarta"
                    || dia_da_semana == "quinta"
                    || dia_da_semana == "sexta"){
                    alert("Boa semana!");
                }
                else{
                    alert("Digite um dia da semana válido!");
                }
                break;
    
            case 2:
                // 2. Verifique se um número digitado pelo usuário é positivo ou negativo. 
                // Mostre um alerta informando.
                numero_digitado = parseInt(prompt("Digite um número:"));

                if (numero_digitado > 0){
                    alert("Número Positivo!");  
                }
                if (numero_digitado < 0){
                    alert("Número Negativo!");
                }
                else{
                    alert("Seu número é 0!");
                }
                break;
    
            case 3:
                // 3. Crie um sistema de pontuação para um jogo. 
                // Se a pontuação for maior ou igual a 100, mostre "Parabéns, você venceu!". 
                // Caso contrário, mostre "Tente novamente para ganhar.".

                pontuacao = parseInt(prompt("Digite seus pontos:"));

                if (pontuacao >= 100){
                    alert("Parabéns, você venceu!");
                }else{
                    alert("Tente novamente para ganhar.");
                }
                break;
    
            case 4:
                // 4. Crie uma mensagem que informa o usuário sobre o saldo da conta, 
                // usando uma template string para incluir o valor do saldo.

                saldo = parseFloat(prompt("Digite seu saldo:"));
                alert(`Saldo da Conta: R$${saldo}`);
                break;
            
            case 5:
                // 5. Peça ao usuário para inserir seu nome usando prompt. 
                // Em seguida, mostre um alerta de boas-vindas usando esse nome.

                nome = prompt("Digite seu Nome:");
                alert("Seja Bem Vindo(a) " + nome);
                break;
    
            case 0:
                break;
        }

Oi Camilla,

Para validar uma opção digitada incorretamente no switch, você pode usar o default.

O default é executado quando nenhum dos case corresponde à expressão do switch.

Para manter o menu em loop, você pode usar um while ou do...while envolvendo o switch.

Veja um exemplo:

let opcao;

do {
    opcao = parseInt(prompt("Escolha uma opção:\n 1. Dia da Semana.\n 2. Número Positivo ou Negativo?\n 3. Jogo de Pontuação.\n 4. Saldo conta.\n 5. Seu nome.\n 0. Sair."));

    switch (opcao) {
        case 1:
            let dia_da_semana = prompt("Digite o dia da semana:").toLowerCase();
            if (dia_da_semana === "sábado" || dia_da_semana === "domingo") {
                alert("Bom final de semana!");
            } else if (["segunda", "terça", "quarta", "quinta", "sexta"].includes(dia_da_semana)) {
                alert("Boa semana!");
            } else {
                alert("Digite um dia da semana válido!");
            }
            break;
        case 2:
            let numero_digitado = parseInt(prompt("Digite um número:"));
            if (numero_digitado > 0) {
                alert("Número Positivo!");
            } else if (numero_digitado < 0) {
                alert("Número Negativo!");
            } else {
                alert("Seu número é 0!");
            }
            break;
        case 3:
            let pontuacao = parseInt(prompt("Digite seus pontos:"));
            if (pontuacao >= 100) {
                alert("Parabéns, você venceu!");
            } else {
                alert("Tente novamente para ganhar.");
            }
            break;
        case 4:
            let saldo = parseFloat(prompt("Digite seu saldo:"));
            alert(`Saldo da Conta: R$${saldo}`);
            break;
        case 5:
            let nome = prompt("Digite seu Nome:");
            alert("Seja Bem Vindo(a) " + nome);
            break;
        case 0:
            break;
        default:
            alert("Opção inválida!");
    }
} while (opcao !== 0);

Neste exemplo, o do...while garante que o menu seja exibido pelo menos uma vez e continue até que a opção 0 seja escolhida.

O default dentro do switch trata as opções inválidas, exibindo uma mensagem de erro. 👍

Para saber mais: JavaScript do...while Loop.

Continue aprimorando suas habilidades! 🤔