Jaba//04. Easter Eggs Battle//Programming Basics Online Exam - 20 and 21 April 2019
Здравейте! Тази задача с while или for може да се реши? Може ли някакъв примерен вариант? Благодаря предварително!
Здравейте! Тази задача с while или for може да се реши? Може ли някакъв примерен вариант? Благодаря предварително!
https://softuni.bg/downloads/svn/programming-basics-v4/course-directories/may-2019/2019-03/Exam/Solutions/Author's-Solutions.zip
Благодаря! Но не ми е ясно защо победителят пак се чете преди последния if?
Вход
Първоначално се четат два реда:
Брой яйца, които има първият играч - цяло число в интервала [1 … 99]
Брой яйца, които има вторият играч - цяло число в интервала [1 … 99]
След това до получаване на команда "End of battle" се четe многократно един ред:
Победител - текст - "one" или "two"
Тук не определяме ли дали победителят е първият или вторият?
Защо пак трябва да се чете това?
winner = scanner.nextLine();
При получаване на команда "one" -> първият играч печели => яйцата на втория намаляват с едно
При получаване на команда "two" -> вторият играч печели => яйцата на първия намаляват с едно
winner = scanner.nextLine();
=> Първоначално се четат два реда. След това до получаване на команда "End of battle" се четe многократно един ред (Победител - текст - "one" или "two")
Благодаря! Може ли да помогнете?
https://pastebin.ubuntu.com/p/7Fm8N75mXk/
Много Ви благодаря! Имам още един въпрос, но не ми дава да го задам отделно, затова го качвам тук.
https://pastebin.pl/view/58b053b2
Защо тук не въвеждаме, че трябва да прочетем всяко едно число? currentNumber = Integer.parseInt(scanner.nextLine()); - в края на while цикъла. Имаме първо 10, откъде знаем, че после имам 20 и пр.?
"Напишете програма, която чете цяло число от конзолата и на всеки следващ ред цели числа, докато тяхната сума стане по-голяма или равна на първоначалното число."
входните данни са cамо примери, може да cа 1000, 10101, 222, 3213 ...
Благодаря! На тази задача можете ли да ми пратите pastebin? Понеже ме затруднява.
JAVA//While-Loop - More Exercises//03. Stream Of Letters
"Search" Button next to Live button.
Type in "stream of letters"
Result from other collegues:
https://pastebin.com/ecZJ0CPz
https://pastebin.com/icaDjgXi
MartinBG:
Какво показва това в задачата ?
И сътветно нещата, свързани с него. Например това.
При първото получаване на една от тези букви, тя се маркира като срещната, но не се запазва в думата
При всяко следващо нейно срещане се записва нормално в думата. След като са налични и трите символа от командата, се печата думата и интервал
победителят се чете преди последната проверка за да не изпаднеш е безкраен цикъл, а последната проверка е когато цикъла е приключил тоест едното от условията е изпълнено цикъла е приключил
@axiomatik Здравейте! Можете ли да помогнете с тази задача?
01. Unique PIN Codes//
Nested Loops - More Exercises
2. Letters combination, many comments/provided in the forum:
MartinBG:
Както е отбелязал и колегата fbinnzhivko, основният проблем с Java решението на тази задача е в подготовката и отпечатването на резултатите. Решението със StringBuilder е логичен избор, когато ни се налага да съединяваме множество символи/стрингове, а освен това позволява отпечатването на резултата да се направи наведнъж.
Конкретно за тази задача има и друго възможно решение - използване на char[4], тъй като знаем, че всеки валиден резултат ще има 3 букви + " ".
В горните решения ще забележиш и една допълнителна оптимизация - преди всеки вложен цикъл има валидация на текущия символ и ако той не е валиден не се изпълняват циклите от по-долни нива. Това помага да се намали общият брой на изпълнените итерации по време на изпълнение на програмата.
fbinnzhivko:
1. Unique Pin Codes
Easier than Letters Combination, using 3 for-loops as in Letters combination.
Първата и третата цифра трябва да бъдат четни.
Втората цифра трябва да бъде просто число в диапазона [2...7].
Вход : 3 5 5
Във всички трицифрени PIN кодове, които сме получили първата цифра ни е 2, защото това е единственото възможно четно число.
При втората цифра важи друго правило. Там трябва да подберем всички възможни прости числа в диапазона от 2 до 7. В нашия случай тези числа са както следва 2, 2, 3, 3, 5, 5.
При третата цифра важи правилото за четните числа и ако го спазваме, получаваме, че възможните числа са: 2, 4, 2, 4, 2, 4.
А защо тук в скобичките имаме 0?
https://www.javatpoint.com/java-string-charat
The java string charAt() method returns a char value at the given index number.
The index number starts from 0 and goes to n-1, where n is length of the string. It returns StringIndexOutOfBoundsException if given index number is greater than or equal to this string length or a negative number.
Входът се чете от конзолата и съдържа точно 3 реда:
Малка буква от английската азбука за начало на интервала – от ‘a’ до ‚z’.
Малка буква от английската азбука за край на интервала – от първата буква до ‚z’.
Малка буква от английската азбука – от ‘a’ до ‚z’ – като комбинациите съдържащи тази буквата се пропускат.
Вход:
a => char start = reader.readLine().charAt(0);
c => char end = reader.readLine().charAt(0);
b => char skip = reader.readLine().charAt(0);
Например ако имаме Hello, на H отговаря 0? В моя случай имам само B, и то се явява 0 ли? Затова в скобите пиша 0?
Correct, index starts at 0 position and continues to length-1
Hello:
length => 5 (1, 2, 3, 4, 5)
index => (length - 1) 0, 1, 2, 3, 4
Hello(0) => H
Hello(4) => o
Благодаря! А можете ли да помогнете с тази задача?
07. Safe Passwords Generator//Java//
Nested Loops - More Exercises
Понеже я решавам, но когато x и у достигнат а и б, цикълът продължава и не знам как да го спра.
@ Axiomatik
Благодаря! А можете ли да помогнете с тази задача?
07. Safe Passwords Generator//Java//
Nested Loops - More Exercises
Понеже я решавам, но когато x и у достигнат а и б, цикълът продължава и не знам как да го спра.