Loading...
malkstor avatar malkstor 348 Точки

Колега, имаше ли проблеми да изкараш символите на боите в конзолата правилно? Аз каквото и да правя не се получава.

edit: пфу, намерих го - в настройките на IntelliJ: File -> Settings -> search for "encoding" -> File Encodings -> падащото меню Project Encoding -> UTF-8.

2
03/09/2015 11:03:27
WindWallk avatar WindWallk 95 Точки

Кое IDE ползваш, InteliJ или Eclipse?

1
malkstor avatar malkstor 348 Точки

Току що го намерих и си редактирах предния пост, оказа се че е от настройките от самото IDE - IntelliJ.

2
Filkolev avatar Filkolev 4482 Точки

На Еклипс конзолата по подразбиране е уникодска, така че хората, които го ползват, няма да имат такива проблеми.

3
EBojilova avatar EBojilova 330 Точки

4. **Full House with Jokers

Не ми стана много ясно условието, тъй като има някои повтаряния . 

Като се гледа отделната ръка и замяната в нея с джокери не се повтаря. 

Има повторение като се гледат всички ръце на местата с джокерите, но мисля, че съм стигнала до това което се иска. 

Реших я в два варианта:

-битове: https://github.com/EBojilova/Java/blob/master/3.LoopsMethodsClasses/src/_04FullHouseWithJockers.java

-рекурсия https://github.com/EBojilova/Java/blob/master/3.LoopsMethodsClasses/src/_04FullHouseWithJockersRecursion.java  

1
06/09/2015 12:51:19
WindWallk avatar WindWallk 95 Точки

Аз тамън я мъдрех тази задача... Рекурсивния ти начин много ми допада, позволяваш ли да препиша от теб laugh

1
WindWallk avatar WindWallk 95 Точки

Забелязах, че counter-a ти е на грешното място, така не броиш всички комбинации. Направи го глобална променлива и го вкарай във функцията "FindCombinations", която по конвенция на джава трябва да е с малка буква :)

1
05/09/2015 01:33:48
EBojilova avatar EBojilova 330 Точки

Поправих я, благодаря :)

Не е най-удачната рекурсия, но тази я преписах от SubSums в C# advanced. 

Искаше ми се по-добра рекурся, която да замества с * вътре в temporary, но си играх над 2 часа и засега я оставям така.

0
05/09/2015 01:29:04
KatyaMarincheva avatar KatyaMarincheva 572 Точки

Здравейте, колеги,

ето и от мен задачи (без изпитните засега):

Problem 1.Symmetric Numbers in Range

(четох много решения, и накрая я направих по различен начин)

Problem 2.Generate 3-Letter Words

Problem 3.Full House

Problem 4.** Full House with Jokers

Problem 5.Angle Unit Converter (Degrees ↔ Radians)

(малко по-различно решение)

Problem 6.Random Hands of 5 Cards

Problem 7.Days between Two Dates

(това решение много си го харесвам, защото без да инсталирам допълнителна библиотека получих в общи линии функционалността на C# DateTime parser - няма значение какви разделители ще въведете в датата, няма значение дали ден и/или месец ще имат една или две цифри - парсва всичко което е в day month year format)

Problem 8.Sum Numbers from a Text File

(тук имам !Strings.isNullOrEmpty(lineContent) като в C#, с import com.google.common.base.Strings; (Guava))

8-ма до 11-та задача включително имам много добро решение за затваряне на stream, reader, writer....

class Product

Problem 9.List of Products

Problem 10.* Order of Products

(с методи)

Problem 11.*** Excel

И по принцип форматирането нa output-a ми е различно навсякъде.

Problem 12* – Cognate Words

(Малко по-различно решение на 12-та задача)

Problem 13** – Durts

(с custom class Rectangle - много капризно се оказа ползването на допълнителен клас - иска празен контруктор, и да се изнесе всяко инстанцииране на променливи от тип Rectangle като static variables)

Problem 13** – Durts (без клас Rectangle)

Problem 14** – Exam Score

(с class Student, и с използване на Java 8 lambda за групиране, average; с TreeMap за сортиране)

2
07/09/2015 00:00:01
onefen avatar onefen 27 Точки

Скъпа Катя на задача 14 Exam Score не знам защо си го направила по-толкова сложен начин. Задачата може да се реши много по-лесно без допълнителни класове и дори без lamda изрази (умишлено съм ги избегнал, защото в java не съм ги разучил добре още). Просто трябва да се изполват два Map-а вкарани един в друг (вторият е value на първия), а понеже сортирането и на точките и на студентите е в нормален ред може да просто да се използват TreeMap - ве без lamdi., т.е.:

Map<Integer, Map<String, Double>> scores = new TreeMap<>();

като вътрешните речници си ги правиш също TreeMap.

Може би умишлено търсиш трудни решения, но в случая това ми се струва доста излишно.

Ето ги и целия код.

https://github.com/onefen/Homework_Java_LoopsMethodsClasses/blob/master/src/ExamScore.java

0
26/09/2015 12:02:28
npaunov avatar npaunov 51 Точки

Ето и 15. ***Straight Flush от мен.

Малко по-бавно работи, защото не съм ползвал HashSet, не съм ги разучил още.

Между другото в някои от тестовете, карти са разделени с повече от един space, което си е гаден номер, след като в условието е в единично число. Та трябваше да ползвам "\\W+" за разделител.

2
nstanevski avatar nstanevski 37 Точки

Колеги, ето и моето решение на иначе доста семплата зад. 8 (Reading Numbers from a Text File). По-различното тук е използването на някои от новостите в Java 8 - интерфейсът Stream и lambda expressions. Смятам да направя и зад. 9 по този начин. Нищо против горните решения, но защо да инсталирам последната версия на JDK, ако ще ползвам FileReader, BufferedReader etc, които са налични още от JDK 1.1?

3
KatyaMarincheva avatar KatyaMarincheva 572 Точки

@nstanevski,

Много супер! +1 от мен.

За затварянето на Stream (и всичко друго) обаче, четох че се прави след catch, във finally, за да затвориш И в случай на exception.

1
nstanevski avatar nstanevski 37 Точки

@Катя:

благодаря, поправено

1
EBojilova avatar EBojilova 330 Точки

Страхотно решение!

И от мен +1

Сподели и другите решения с новостите в Java 8, че нямам много време да ги разучавам, а ми стана интересно.

0
vladopanov avatar vladopanov 21 Точки

На 7-ма задача Days Between Two Dates - форматирането на датата, така че да бъде с опция 1 или 2 числа за деня, най-кратко може да стане по този начин - "['d']d-MM-yyyy". Опционалните символи се заграждат с "[]".

3
EBojilova avatar EBojilova 330 Точки

Става и само "d-MM-yyyy"

Също така, забелязах, че ако ползвам Date класа, на последния тест ми се губи 1 ден.

Четох в нета и имаше информация да не се ползва този клас, тъй като бил счупен.

По-добре да се ползва LocalDate.

0
08/09/2015 10:44:24
milen.stefanov avatar milen.stefanov 40 Точки

Като се отваря поток към файл, как му се задава пътя, спрямо коя папка - на конкретния проект, на конкретния пакет, на workspace-a или на home директорията на юзера?

0
milen.stefanov avatar milen.stefanov 40 Точки

Като се отваря поток към файл, как му се задава пътя, спрямо коя папка - на конкретния проект, на конкретния пакет, на workspace-a или на home директорията на юзера?

0
KatyaMarincheva avatar KatyaMarincheva 572 Точки

Здравей, Милене,

на мен всички imput files са ми в папката на проекта дирекктно, викам ги без да подавам път - само давам името на файла, output files също се създават директно в папката на проекта ако подам само име на файл - значи по подразбиране без зададен път отиват там.

https://github.com/KatyaMarincheva/Java/tree/master/Java-Loops-Methods-Classes-HW

 

 

1
08/09/2015 16:02:22
a1mbiser avatar a1mbiser 63 Точки

Здравей Милене (мисля че с теб бяхме от доброволците по окабеляване на залата за съжаление успях да дойда само веднъж :) ) ето как можеш да получиш path-a в който се намира проекта ти дано ти е полезно:   SumNumberFromTextFile

ето и едно интересно (според мен) решение на 7ма задача :)

Days between Two Dates

 

1
08/09/2015 17:06:47
milen.stefanov avatar milen.stefanov 40 Точки

Здравей, аз също нямах възможност да дойда повторно да окабеляваме, но явно момчетата са се справили и без нас! :) Иначе благодаря за инфото. :)

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