[Homework] Java Syntax март 2016
Здвейте колеги.Качвам моето домашно.Някои да покаже решение на 7-ма задача ,аз не можах да я реша правилно.Приемем всякъкви съвети за оптимизации и по добри решения.
Здвейте колеги.Качвам моето домашно.Някои да покаже решение на 7-ма задача ,аз не можах да я реша правилно.Приемем всякъкви съвети за оптимизации и по добри решения.
Заповядай колега ;)
https://gist.github.com/alexeitcekov/9c5922362e289e89ab55
Погледнах решението ти ... защо вадиш едно от друго числата,които си вкарал от конзолта .... тези числа са твоя диапазон ...
например от 0 до 10 включително ..... а след това можеш да кажеш колко числа искаш да ти се изпринтират можеш и 5 можеш и 200 .... но всички тези числа, които ще се изпринтират ще са между 0 и 10 ... поне аз така разбирам задачата . ;)
И ако твойто "startNum" е по-голямо от "endNum" ?.. не си обърнал внимание на този проблем.
Колега, бях писал относно тази задача, но пак ще обясня. "Write a program that takes as input two integers N and M, and randomizes the numbers between them." Задачата изисква при въведен интервал - [N, M], на случаен принцип да ти изпринтира всички числа в него( без повторения), включително N и М, например при n = 1 и m = 3, output-a ще ти е - 2 3 1 (като може да не са в този ред, защото целта е да са randomized). Относно твоето решение или трябва да си добавиш проверка, за да не ти се повтарят числата или просто да решиш задачата като използваш метода shuffle() на класа Collections, ЦЪК.
С тоя метод shuffle() много лесно бе :D. Аз как съм си играл с random()-а и после с някакви проверки .. ако го има го вади от листата и завърти още един път цикъла да измислиш ново число и е такива простотии :D
Колега, само да уточня, че в условието на задача 7 няма изискване числата да се принтират без повторения. Условието на задачата в превод гласи: "Напишете програма, която приема като вход две цели числа N и M, и отпечатва на случаен принцип на числата между тях. Имайте предвид, че М може да бъде по-малко от или равно на Н."
Колегата, който ми проверява домашното беше написал същото като теб - че не трябва да има повторения, а това според мен не е много коректно.
Иначе браво за метода shuffle().
Колега, виж изхода и в двата примера, каква е вероятността и двата пъти да няма повтарящо се число, когато използваш рандом метода ?
10
20
12 13 20 10 11 18 15 17 14 19 16
Ето ти примера, ясно се вижда, че няма повтарящи се числа, пък в условието е казано "randomizes the numbers between them", "the numbers" - числаТА (сиреч всички числа), а не "numbers" - числа, произволни числа в този интервал. Може и да не съм прав, но по пътя на логиката не мисля, че точно тук греша.
Поздрави !
Здравей колега. В примерите към тази задача авторът й може да напише всичко - това все пак са само примери. Но поради "случайния характер", всяка програма дава различни резултати, което не изключва да има повтарящи се цифри. Това е моята логика. Не се опитвам да ти я наложа, просто аз така си обяснявам условието на задачата.
Поздрави!