Задачите от книгата "Въведение в програмирането с java"
Здравейте! Аз знаех малко java преди да започна да я чета тази книга и ми направи впечатление, че задачите на края на глава 3 съдържат следната задача:
"Напишете програма, която за подадени дължина и височина на правоъгълник, изкарват на конзолата неговият периметър и лице."
Единственото решение за което се сещах беше използването на Scanner, но той не беше дори споменаван в книгата до глава 3. Разрових се и го намерих на глава 4. Та излиза, че задачите от края на глава 3 изискват знания от глава 4. Някакъв скрит гениален замисъл ли има зад това или просто е грешка? За 2ри път срещам такъв случай, а не съм минал и 5 глави от самата книга. Сега нямам проблем с него, но по-натам, когато няма да знам какво се изисква да използвам в задача ще трябва да я прескоча и да се връщам после да я решавам. Някой знае ли защо са подредени така лошо задачите или просто има някаква грешка при написването?
ЕДИТ: Забелязах че от 13те задачи повечето са за Scanner, а той се учи във 4та глава. Тъкмо мислех, че има някакъв смисъл да ги решавам тия задачи и 'гениалният' начин по който са подредени ме отказа.
Има наистина известен смисъл в такава идея въпреки че не съм и голям фен, защото хора като мен - които винаги се обръщат към търсачката за помощ на по-трудни въпроси и спестяване на време могат да се затруднят. Аз си казах - сега няма да отварям google, за да видя колко добре съм запомнил това което четох ,а като прочетох задачата си казах чакай малко това го нямаше никъде и от там 1-2 часа главоболия и упоритост докато разбера какво са искали да направят.
Добрият програмист не помни, а мисли
Затова е важно да може да използваме търсачки и всякакви методи за добиване на информация максимално добре. ^^
Все пак, това не е география или история, за да се стараеш да запомниш урока.
Съгласен съм. Всякакви назубряния от сорта на "това става с масив", "онова става с матрица" довеждат само до частни решения и помагат единствено в това да си вземеш изпитите в СофтУни, понеже следват някакъв патърн на решаване, но не и да станеш програмист.
Всъщност, дори наизустяването на това, че вход от конзолата се взима със Scanner е абсолютно по същия начин безполезно. Така не се замисляш какво са стандартния инпут и аутпут и как можеш да ги контролираш. Всъщност, имам новина за теб - Scanner не е единствения вариант за четене на вход от конзолата.
http://stackoverflow.com/questions/16122256/getting-input-from-user-in-console-without-using-scanner
Тук може би наистина е трябвало в книгата да обяснят за входа и изхода преди да преминат към задачи свързани с това.
Знам че има други начини на вход от конзолата. Просто той е единственият за който съм учил. Аз всъщност учих сравнително голямо количество неща за basic java - знам всичко необходимо за променливи, масиви, всички цикли и т.н. Даже помня малко от networking уроците дето ги гледах по YT, но не бях писал java код от 1 година и си казах - няма лошо да я мина тази книга. Колко му е 1000 страници ще ги изстрелям за 1-2 месеца като се има в предвид, че поназнайвам java. И до момента мисля, че беше добра идея. Задачите не са много лесни, но това е целта - да размърдам мозъка, че не съм го използвал от много време. Както и да е мерси за отговорите на всички. Ще решавам задачите на максимална продуктивност и не вярвам да ме затруднят след като знам, че целта им е да ме карат да ровя за информация.