Loading...
Vasetoo0 avatar Vasetoo0 5 Точки

Задача Кодиране - Nested Loops

Здравейте, може ли малко помощ за тази задача, някакво примерно решение, защото съм от онлайн записаните и не съм присъствал на упражненията и яко зациклих. Благодаря предварително.

 

1.Кодиране

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

  • символът, който трябва да се отпечата на даден ред се намира от ASCII таблицата. Неговият десетичен ASCII код се намира като към цифрата от въведеното число, която съответства на даден ред се прибави 33
  • символът се отпечатва толкова на брой пъти колкото е цифрата, съответстваща за този ред
  • ако за даден ред съответства цифра 0 на този ред се отпечатва еднократно "ZERO"

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

Вход

Изход

Обяснения

2049

*********

%%%%

ZERO

##

Числото 2049 е четирицифрено следователно ще отпечатваме 4 реда.

На първи ред съответства цифрата 9. Към 9 прибавяме 33 и получаваме 42. Това е десетичният ASCII код на символът, който трябва да отпечатаме на първия ред. От ASCII таблицата намираме, че на 42 кореспондира символ *. Понеже на първи ред съответства цифра 9 отпечатваме 9 на брой *.

Цифрата 4 е за втори ред. 4+33=37. От ASCII таблицата намираме, че символът за печат е %. Отпечатваме 4 на брой %.

На трети ред съответства цифра 0. В този случай не търсим нищо в ASCII таблицата и на този ред отпечатваме еднократно ZERO.

Последната цифра от числото е 2. 2+33=35. От ASCII таблицата намираме символа за печат- # и го отпечатваме н 2 пъти.

Вход

Изход

Вход

Изход

9347439

*********

$$$

%%%%

(((((((

%%%%

$$$

*********

123456789

*********

))))))))

(((((((

''''''

&&&&&

%%%%

$$$

##

"

Подсказки:

  • Използвайте метода ToString, за да превърнете прочетеното число в стринг и след това запазете дължината му в променлива с метода Length. Потърсете информация за тях в интернет.
  • За да вземете последната цифра на числото, го разделете модулно на 10 (num % 10) и я запазете в една променлива. След това извадете поледната цифра от първоначалното число и го разделете на 10 (num / 10), за да може следващия път отново да вземете последната цифра.

Тествайте решението си в judge системата: https://judge.softuni.bg/Contests/Compete/Index/1165#3.

Тагове:
0
Programming Basics with Java
JimBeam avatar JimBeam 1 Точки

А как е решението под C# на същата задача и същото условие? :)

0
MiroslavDinev avatar MiroslavDinev 115 Точки

Ето и решение на C# https://pastebin.com/2A8j8KQz

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