Loading...
tanita85 avatar tanita85 0 Точки

Задача "Хореография"

Здравейте,

може ли някой да обясни защо в задачата "Хореография" когато се намират "Процент стъпки на ден" - стъпките се умножават по 1.0, след което се делят на дните и после на стъпките.  Пробвах да задам без 1 - ца, но ми дава грешка. Каква е ролята на тази единица във формулата, може ли някой да ми поясни.   Какви действия извършват символите " I  I "   и "&&" (няма връзка с тази задача, срешнах го в друга).Благодаря!

Тагове:
0
Programming Basics with Java 25/01/2018 14:33:39
Plamen95 avatar Plamen95 11 Точки

Здравей,

За първия въпрос ако можеш дай линк към задачата или към решението си за да ти отговорим каква е ролята на единицата. А относно символите ако не се лъжа се наричат логически оператори. Ползват се когато правиш някаква по-сложна проверка с повече от едно условия. Символът " | | " означава "или", когато го използваш трябва поне едно от условията ти да е вярно за да върне проверката "true". Символът "&&"  означава "И", трябва всичките ти условия да са верни.

0
tanita85 avatar tanita85 0 Точки

 https://pastebin.com/WP5G5T7L  - линка към решението

0
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

Значи за логическите символи колегата е прав означават точно това.За  повече инфо в книгата на Наков има я и за Джава и трябва да се прочете поне в басик курсовете. Иначе доколкото познавам джава аз пиша С# и python малко. това по 1.0 прави steps double защо не са ги прочели double steps още в началото идея си нямам.Или това е правилно или съм много близо до правилния отговор :Д

0
KeepCoding avatar KeepCoding 554 Точки
double stepsOnDays = Math.ceil((steps *1.0 / days) / steps * 100);

"steps", "days", "100" са всички цели числа. А в едно уравнение, в което участват само цели числа и има и деление, ще се получи целоцислено деление, което прецаква сметките. Ако има число от тип "double", което да участва в уравнението, уравнението става нормално и сметките ще са си наред. Но това число от тип "double" трябва да е в началото на уравнението. "1.0" е същото като "(double)". И двете "кастват", т.е. превръщат един тип данни в друг (в този случай от тип int в тип double). Отново ще се получат 100/100 ако замениш редът с 

double stepsOnDays = Math.ceil(((double) steps / days) / steps * 100);

 

0
tanita85 avatar tanita85 0 Точки

Благодаря, сега ми се изясниха нещата yes

0
bbelevski avatar bbelevski 0 Точки

Ето и още един вариант за тази задача :   https://pastebin.com/nm3GY4Q2

 

0
04/02/2018 18:47:19
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.