#javascript #typescript #if-statement
#javascript #typescript #if-statement
Вопрос:
У меня возникла проблема со следующим вопросом: за каждый час, когда велосипедист едет на своем велосипеде, ему нужно будет выпить 0,5 литра воды. Итак, если велосипедист едет в общей сложности 1 час, ему / ей нужно будет выпить 0,5 литра воды. Если они будут работать в течение 3 часов, Это будет в общей сложности 1,5 литра и т. Д.
Моей первой мыслью было использовать оператор if / else, подобный этому:
export function liters(time: number): number {
if (time === 1){
return 0.5 liters
} else if (time === 1.5) {
return 1 liters
}
}
const answer = liters(1)
console.log(answer)
Но потом я понял, что не могу продолжать писать операторы if / else вечно, особенно если кто-то регистрирует 100 часов циклирования. Я уверен, что есть лучший способ подойти к этой проблеме и сделать ее динамической. Есть ли у кого-нибудь какие-либо рекомендации? В настоящее время я изучаю TypeScript, поэтому, пожалуйста, не говорите мне ответ, я бы предпочел, чтобы некоторые подсказки или указывали в правильном направлении, чтобы я мог решить сам. Спасибо!
Комментарии:
1. Почему бы и нет
time * 0.5
?2. ^ И
time
напиши перед этим.3. @choz зависит от постановки задачи. Также может быть приемлемо не округлять — если велосипедист едет полчаса, ему все равно, вероятно, потребуется выпить 250 мл воды.
4. На самом деле я должен был сказать
ceil
время. Учитывая егоelse if
утверждение. Но да, нужно больше разъяснений с требованием.
Ответ №1:
Вам просто нужно умножить количество литров на час
export function liters(time: number): number {
const litersPerHour = 0.5;
const total = litersPerHour * time
return total
}