Софтуерно Инженерство
Loading...
+ Нов въпрос
VladimirPetukhov avatar VladimirPetukhov 28 Точки

[Programming Basics] Exam-23.07 - Energy Loss

https://judge.softuni.bg/Contests/Practice/Index/715#3

Това е условието на 4 задача.Така и не мога да рзбера къде бъркам.Ето го и решението ми:

 


© 2011-2017 - Open Judge System (OJS) 1.5.20150729.95737d0 - running on Windows. Проект с отворен код.

Тагове:
0
Основи на програмирането 25/07/2017 07:31:34
JordanBratanov avatar JordanBratanov 1 Точки

 stayEnergy = startEnergy - (sum);

Умножи sum * А. 

 

Ето и моето решение - https://pastebin.com/U23XLGyd

0
VasilValchanov avatar VasilValchanov 558 Точки

Първо трябва да направиш цикъла да върти до <= n, и вътре в ифовете да проверяваш дали i % 2 == или != 0

 if (stayDancer <= 50)
            {
                Console.WriteLine($"They feel good!Energy left: {(stayDancer):f2}");
            }
            if (stayDancer > 50)
            {
                Console.WriteLine($"They are wasted! Energy left: {(stayDancer):f2}");
            }

Също така тези кейсове трябва да са на обратно и след "good!" трябва да има разстояние 

 

0
b.s.rachev avatar b.s.rachev 3 Точки

Здрасти! Проверих ти целия код и направих около 3-4-5 дребни корекции:
https://pastebin.com/ux5h3Tm2
Едната от тях беше в цикъла, две в проверките и още някоя, която може да забравям. Можеш да ги видиш на линка горе, използвах твоя код, така че ще ти е лесно за сравняване.

Кодът е проверен в Judge и дава 100/100. smiley

П.П.: Много объркващи имена имаш на променливите. laugh

0
24/07/2017 18:51:28
AleksandarGG avatar AleksandarGG 1 Точки

Здравейте,

ще помоля за малко яснота и по моя код. Някъде ми се губи логиката.

Благодаря предварително на отзовалите се.

https://pastebin.com/nSD30KDP

 

0
ivanrk avatar ivanrk 65 Точки

Проверката за нечетни трябва да е days % 2 == 1. При days % 3 == 0 проверяваш дали се дели на 3.

В if-овете трябва да направиш така, че да си запазваш стойността и към нея да прибавяш при всяка проверка, т.е.  evenEven += dancers * 68; (или evenEven = evenEven + dancers * 68, същото е в случая). И другите променливи по същия начин съответно. При твоя случай само я променяш стойността и запазваш само последната стойност, а не прибавяш към предишните. Break-овете също са излишни.

В последната проверка if (energyLeftPerDancer <= 50) трябва да провериш дали общата енергия (100) - energyLeftPerDancer e <= 50. Това е, което виждам.

0
01/08/2017 20:20:07
Mr.Rusev avatar Mr.Rusev 7 Точки

https://pastebin.com/iY5ixMK7

Това е моя код виж го. Ще откриеш разликите защото сме решавали по много подобен начин. 

Видях че си ползвал 2 for цикъла (което е не нужно), после си ползвал за всяка стойност различна променлива (oddodd, eveneven, evenOdd ... ) мисля че може и така но не съм сигурен колко ще работи. Трябва и да смяташ в една променлива (като в моя код currentEnergy) цялата сума като мине през циклите. Също виж моя цикъл от къде до къде върти, пак ще ти просветне малко. И последно това за дали е на четна или нечеттна позиция 3 (i % 3 == 0) не е проверка която ти казва че реда е не четен защото ако i = 6 тогава числото е четно и отговаря на условието i % 3 == 0 и влиза в проверката а ти не искаш това. По-добре ползвай i % 2 != 0. 

Ами като цяло имаш доста грешки. Пусни си пак лекцията за цикли и как смятахме там. Разгледай и кода ми ще се досетиш какво става.

0
Yotov avatar Yotov 3 Точки

https://pastebin.com/mwUvQFct

C#

0
traykova44 avatar traykova44 93 Точки

И аз бях така, защото обърках и вместо i , пороверявах броя тренировки. Ето сега и моя работещ

код https://pastebin.com/qTX9NuaH

C#

0