Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

StoyanSt11 avatar StoyanSt11 0 Точки

Дата след 5 дни, Java

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

Успях да стигна до решението на задачата, за съжаление обаче не мога да направя форматирането на датата в Sout.println() оператора така, че конзолата да ми изведе например датата 17.11 или 28.05? 

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

Благодаря предварително!

Условието:

Дадени са две числа d (ден) и m (месец), които формират дата. Да се напише програма, която отпечатва датата, която ще бъде след 5 дни. Например 5 дни след 28.03 е датата 2.04. Приемаме, че месеците: април, юни, септември и ноември имат по 30 дни, февруари има 28 дни, а останалите имат по 31 дни. Месеците да се отпечатат с водеща нула, когато са едноцифрени (например 01, 08).

Вход

Входът се чете от конзолата и се състои от два реда:

  • На първия ред стои едно цяло число d в интервала [1 … 31] – ден. Номерът на деня не надвишава броя дни в съответния месец (напр. 28 за февруари).
  • На втория ред стои едно цяло число m в интервала [1 … 12] – месец. Месец 1 е януари, месец 2 е февруари, …, месец 12 е декември. Месецът може да съдържа водеща нула (напр. април може да бъде изписан като 4 или 04).

Изход

Отпечатайте на конзолата един единствен ред, съдържащ дата след 5 дни във формат ден.месец. Месецът трябва да бъде двуцифрено число с водеща нула, ако е необходимо. Денят трябва да е без водеща нула.

Тагове:
0
Programming Basics with Java
fbinnzhivko avatar fbinnzhivko 1586 Точки
Best Answer

Важно е да форматираме изхода правилно, за да се появява водещата нула в първите 9 месеца. Това става, като добавим форматиращ стринг %02d при втория елемент. 0 указва с каква цифра да бъде запълнено отделеното място за нея, а 2 указва броя на местата, които трябва да бъдат запълнени от въпросната цифра.

0
StoyanSt11 avatar StoyanSt11 0 Точки

Благодаря много, но имаш впредвид, че трябва да стане System.out.printf("%2d.%02d", day, month); ?

0
fbinnzhivko avatar fbinnzhivko 1586 Точки

Разгледа ли линка от предния ми коментар?
Линк

0
StoyanSt11 avatar StoyanSt11 0 Точки

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

Ето и моят код:

https://pastebin.com/uCNUpmMp

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