Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] Praticando JavaScript: Condicionais - Resolução 04 - Horário de funcionamento da loja

Praticando JavaScript: Condicionais - Resolução 04 - Horário de Funcionamento da Loja

O código conta com duas functions, uma para verificar o horário de funcionamento da loja conforme o dia da semana, e outra para verificar se o dia da semana (em números) inserido pelo usuário seja válido.

let diaDaSemana = Number(prompt("Digite o dia da semana (0 para Domingo, 1 para Segunda-feira, ..., 6 para Sábado): "));
diaDaSemana = verificarSeEhNumero(diaDaSemana);

const resultado = verificarHorarioFuncionamento(diaDaSemana);
console.log(resultado);

function verificarSeEhNumero(diaDaSemana) {
    while (isNaN(diaDaSemana) || diaDaSemana < 0 || diaDaSemana > 6) {
        diaDaSemana = Number(prompt("Dia da semana inválido. Por favor, digite um dia da semana válido: "));
    }
    return diaDaSemana;
}

function verificarHorarioFuncionamento(diaDaSemana) {
    return diaDaSemana === 0 || diaDaSemana === 6 
    ? "A loja está aberta em horário especial das 10h às 14h." 
    : "A loja está aberta das 9h às 18h.";
}
2 respostas

Olá, Pedro! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso da função para validar corretamente os dias da semana, utilizou muito bem a estrutura condicional para diferenciar horários e ainda compreendeu a importância da interação com o usuário por meio do prompt.

Uma dica interessante para o futuro é trabalhar com arrays para mapear os dias da semana, tornando o código mais legível. Assim:

function verificarHorarioFuncionamento(diaDaSemana) {
    const dias = ["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"];
    return (diaDaSemana === 0 || diaDaSemana === 6) 
        ? `${dias[diaDaSemana]}: A loja está aberta em horário especial das 10h às 14h.` 
        : `${dias[diaDaSemana]}: A loja está aberta das 9h às 18h.`;
}

Isso faz com que a resposta seja mais clara e informativa para o usuário.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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

Atualização de Código

const dias = ["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"];

let diaDaSemana = Number(prompt("Digite o dia da semana (0 para Domingo, 1 para Segunda-feira, ..., 6 para Sábado): "));
diaDaSemana = verificarSeEhNumero(diaDaSemana);

const resultado = verificarHorarioFuncionamento(diaDaSemana, dias);
console.log(resultado);

function verificarSeEhNumero(diaDaSemana) {
    while (isNaN(diaDaSemana) || diaDaSemana < 0 || diaDaSemana > 6) {
        diaDaSemana = Number(prompt("Dia da semana inválido. Por favor, digite um dia da semana válido: "));
    }
    return diaDaSemana;
}

function verificarHorarioFuncionamento(diaDaSemana, dias) {
    return (dias[0] === dias[diaDaSemana] || dias[6] === dias[diaDaSemana]) 
    ? `Hoje é ${dias[diaDaSemana]}. A loja está aberta em horário especial, das 10h às 14h.` 
    : `Hoje é ${dias[diaDaSemana]}. A loja está aberta no horário normal, das 9h às 18h.`;
}