Loading...
Adnankata avatar Adnankata 2 Точки

4. Еднакви суми на четни и нечетни позиции /04. Equal Sums Even Odd Position JAVA

Някой може ли да представи решение на четвърта задача от от упражнението по Вложени Цикли на Java? Нямам предсатава накъде да тръгна.

Благодаря.

 

 

1.Еднакви суми на четни и нечетни позиции

Напишете програма, която чете от конзолата две шестцифрени цели числа в диапазона от 100000 до 300000. Винаги първото въведено число ще бъде по малко от второто. На конзолата да се отпечатат на 1 ред разделени с интервал всички числа, които се намират между двете, прочетени от конзолата числа и отговарят на следното условие:

  • сумата от цифрите на четни и нечетни позиции да са равни. Ако няма числа, отговарящи на условието на конзолата не се извежда резултат.

Примерен вход и изход      

Вход

Изход

Обяснения

100000

100050

100001 100012 100023 100034 100045

Първото число, което генерираме е числото 100000. Сумата от цифрите на четни позиции (жълто) е 0+0+0=0. Сумата от цифрите на нечетни позиции (зелено) е 0+0+1=1. Тъй като двете суми са различни числото не се отпечатва.

Следващото, число е 100001. Сумата на четни позиции е  1+0+0=1, а на нечетни 0+0+1=1. Двете суми са равни и числото се отпечатва.

Следващото число за проверка е 100002. То не отговаря на условието и не се отпечатва.

……

При числото 100045 сумата от четните позиции е 5+0+0=5, а на нечетни 4+0+1=5. Двете суми са равни числото се отпечатва. И т.н.

Вход

Изход

Вход

Изход

Вход

Изход

123456

124000

123464 123475 123486 123497 123530 123541 123552 123563 123574 123585 123596 123640 123651 123662 123673 123684 123695 123750 123761 123772 123783 123794 123860 123871 123882 123893 123970 123981 123992

299900

300000

299970 299981 299992

100115

100120

Няма изход

Тагове:
0
Programming Basics
kkaraivanov avatar kkaraivanov 486 Точки

Трябва да направиш for цикъл с диапазон от първото до второто число. След тов създаваш string променлива в тялото на цикъла и присвояваш стойноста върната от цикъла и си създаваш две int променливи, също в тялото на цикъла за even и odd позициите. Създаваш нов цикъл в тялото на първия цикъл с диапазон - дължината на създадената string променлива - 1 до 0, като цикъла намалява. В if else конструкция проверяваш стойността от втория цикъл дали % дели на 2 == 0. Ако % 2 == 0, присвояваш на even, в противен случай присвояваш на odd. Излизаш от втория цикъл и с нов if проверяваш even == odd. Ако е вярно, печаташ стринговата променлива + ' ', но без да минаваш на нов ред. 

Ако искаш мога да ти дам кода за ориентир, но е на C# и ще трябва да го преведеш на Java.

0
28/10/2019 18:27:10
Adnankata avatar Adnankata 2 Точки

Да, би помогнал един код благодаря

0
mark79 avatar mark79 639 Точки

Здравей,

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

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

Поздрави :)

0
29/10/2019 06:20:49
Adnankata avatar Adnankata 2 Точки

Благодаря ви за бързите отговори, помогнахте ми много.

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