Да, в ЯП есть разные типы, типа int, Double и тд, а тут как я понял только либо string либо number ну и boolean и тд. так вот, как получать на выходе целые числа? чтоб например на входе было 25 делим на 3 получаем не 8.333… а 8 целое число. Можно ли это как-то обозначить? keks.getint(); типа того что-ли) надеюсь вы поняли вопрос)
а, ну типов так то шесть:
примитивы:
- числа (integer, float, double, infinity и пр. они все в один тип объединены, еще NaN это число xD),
- строки (как частный случай массива),
- булев тип,
- 2 “магических” типа (undefined, null),
и самый чоткий
- объект (это вообще зверина, туда все относится - и массивы и функции и методы и пр. и пр.).
причем язык сам слаботипизирован и примитивы свободно превращаются в зависимости от синтаксиса в друг друга (на первый взгляд непредсказуемо).
что касается вашего вопроса, тут в общем то та же проблема с побитовым делением, т.е. 0.1 + 0.2 != 0.3
поэтому применяют округление в бесконечных дробях с помощью математических встроенных методов Math.метод(аргумент)
Math.round(25/3)
округлит результат вычисления в скобках до целого по общему правилу, т.е. 8.333333(3) станет 8. есть еще 2 метода: Math.floor(num)
- в меньшую сторону и Math.ceil(num)
в большую.
можно еще parseInt(число, основание_системы_счисления);
- тупо обрезает дробную часть (и вообще может принимать на вход строку).
Спасибо за ответ) Узнал что меня интересовало)
Капец, народ, вы бы в подсказке еще ответ написали чтоб просто его копипастнуть. Я обращение пишу, пишу что ответ получен, не зная нужно это делать или нет. В итоге взглянул на подсказку чтоб узнать требуется ли это вообще. И моим решением стало вот это:
var jumps= ((foodInGrams / 10) * 3);var pulls= (sleepInHours * 2);
var runs= (pulls * 0.5 + jumps);
Матерь божья, аська в 2019, это что же такое делается то…
))))я и забыл за нее, думал за мозилу засмеют) в свое оправдание скажу, что где-то когда-то наличие в ней аккаунта давало какое-то преимущество)
нет, как раз иметь много разных браузеров фронтэндер обязан =)
по коду: лишние скобки не ставьте, интерпретатор JS знает о приоритетах операторов, арифметику он по всем законам математики вычисляет.
достаточно:
var jumps = foodInGrams / 10 * 3;
var pulls = sleepInHours * 2;
var runs = pulls * 0.5 + jumps;
Спасибо за совет:+1:
var foodInGrams = 100;
var sleepInHours = 15;
var jumps = foodInGrams / 10 * 3;
var pulls = sleepInHours * 2;
var runs = jumps + pulls /2;
Добрые люди! Ну зачем изобретать заново велосипед?
Делайте код максимально простым, чтобы он не только Вами легко читался)
var foodInGrams = 100;
var sleepInHours = 15;
var jumps;
jumps = (foodInGrams/10)*3;
console.log('Нужно сделать прыжков = ’ + jumps);
var pulls;
pulls = sleepInHours*2;
console.log('Нужно сделать подтягиваний = ’ + sleepInHours);
var runs;
runs = jumps+(pulls/2);
console.log('Нужно пробежать кругов = ’ + runs);
Вот и вся программа) Всем удачи и побед!
а зачем вы отдельно объявляете переменную и на следующей строке же присваиваете ей значение?
var foodInGrams = 100;
var sleepInHours = 15;
var jumps = foodInGrams / 10 * 3;
var pulls = sleepInHours * 2;
var runs = jumps * 1 + pulls / 2;
console.log('Босс сколько корма Вы сегодня съели? ’ + foodInGrams);
console.log(‘Сколько Босс поспал? ’ + sleepInHours);
console.log(‘Босс Вам нужно сделать ’ + jumps + ’ прыжков, а еще ’ + pulls +’ подтягиваний и надо бы пробежать ’ + runs + ’ раз по кругу Босс!’);
Привет. Не могу редактировать код, курсор в файле script.js не активен
Новый кексофит.
/**
- KeksoFit v0.1
- Author: @keksobot
- License: CatoFree, NoDogs
*/
let timeInMinutes = 180;
let jumps = (timeInMinutes / 10) * 3;
let message = ‘За ’ + timeInMinutes + ’ минут в соцсетях полагается ’ + jumps + ’ прыжков.’;
console.log(message);