Trilhas
/
JavaScript
JavaScript
/
Exercícios
/
Compra de veículo
Compra de veículo

Compra de veículo

Exercício de aprendizagem

Introdução

Comparação

Em JavaScript, números podem ser comparados usando os seguintes operadores relacionais e de igualdade.

Comparação Operador
Maior que a > b
Maior ou igual a a >= b
Menor que a < b
Menor ou igual a a <= b
Igual (estrito) a === b
Diferente (estrito) a !== b

O resultado da comparação é sempre um valor Boolean: true ou false.

1 < 3;
// => true

2 !== 2;
// => false

1 === 1.0;
// => true
// All numbers are floating-points, so this is different syntax for
// the exact same value.

Em JavaScript, os operadores de comparação acima também podem ser usados para comparar strings. Nesse caso, aplica-se uma ordem de dicionário (lexicográfica). Você encontra uma lista com a ordem exata de todos os caracteres aqui.

'Apple' > 'Pear';
// => false

'a' < 'above';
// => true

'a' === 'A';
// => false

Condicionais

Uma forma comum de executar lógica condicionalmente em JavaScript é a condicional. Ela consiste na palavra-chave if, uma condição entre parênteses redondos (()) e um bloco de código entre chaves ({}). O bloco de código só será executado se a condição resultar em true.

if (condition) {
  // code that is executed if "condition" is true
}

Ela pode ser usada sozinha ou combinada com a palavra-chave else.

if (condition) {
  // code that is executed if "condition" is true
} else {
  // code that is executed otherwise
}

Para aninhar outra condição na cláusula else, você pode usar else if.

if (condition1) {
  // code that is executed if "condition1" is true
} else if (condition2) {
  // code that is executed if "condition2" is true
  // but "condition1" was false
} else {
  // code that is executed otherwise
}

Instruções

Neste exercício, você vai escrever um pouco de código para ajudar a se preparar para comprar um veículo.

Você tem três tarefas: uma para determinar se vai precisar tirar uma carteira de motorista, uma para ajudar a escolher entre dois veículos e uma para estimar o preço aceitável de um veículo usado.

1. Determine se você vai precisar de carteira de motorista

Alguns tipos de veículo exigem carteira de motorista para serem conduzidos. Considere que apenas os tipos 'car' e 'truck' exigem carteira, todo o resto pode ser conduzido sem carteira.

Implemente a função needsLicense(kind), que recebe o tipo de veículo e retorna um Boolean indicando se você precisa de carteira de motorista para aquele tipo de veículo.

needsLicense('car');
// => true

needsLicense('bike');
// => false

2. Escolha entre dois possíveis veículos para comprar

Você avalia as opções de veículos disponíveis. Você consegue reduzir a duas opções, mas precisa de ajuda para tomar a decisão final. Para isso, implemente a função chooseVehicle(option1, option2), que recebe dois veículos como argumentos e retorna uma decisão que inclui a opção que vem primeiro na ordem alfabética.

chooseVehicle('Wuling Hongguang', 'Toyota Corolla');
// =>  'Toyota Corolla is clearly the better choice.'

chooseVehicle('Volkswagen Beetle', 'Volkswagen Golf');
// =>  'Volkswagen Beetle is clearly the better choice.'

3. Calcule uma estimativa do preço de um veículo usado

Agora que você tomou sua decisão, quer garantir que vai pagar um preço justo na concessionária. Como você quer comprar um veículo usado, o preço depende da idade do veículo. Para uma estimativa aproximada, considere que, se o veículo tiver menos de 3 anos, ele custa 80% do preço original que tinha quando era novo. Se tiver mais de 10 anos, custa 50%. Se o veículo tiver pelo menos 3 anos, mas não mais de 10 anos, custa 70% do preço original.

Implemente a função calculateResellPrice(originalPrice, age), que aplica essa lógica usando if, else if e else (existem outras formas, caso você queira praticar). Ela recebe o preço original e a idade do veículo como argumentos e retorna o preço estimado na concessionária.

calculateResellPrice(1000, 1);
// => 800

calculateResellPrice(1000, 5);
// => 700

calculateResellPrice(1000, 15);
// => 500
Editar via GitHub O link abre em uma nova janela ou aba
JavaScript Exercism

Tudo pronto para começar Compra de veículo?

Crie sua conta no Exercism para aprender e dominar JavaScript com 37 conceitos159 exercícios e mentoria humana de verdade, tudo de graça.