Loading...

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

JulianK avatar JulianK 2 Точки

06. Number Generator

https://pastebin.com/0eEtHNKT -  код. 50/100 ми дава джъдж.

 

https://judge.softuni.bg/Contests/Practice/Index/540#5

Задача 6. Генератор на числа

Да се напише програма, която прочита от конзолата три цели числа M, N и L, и генерира всички числа в диапазона от MNL до 111. От конзолата се чете едно специално и едно контролно число. За всяка комбинация от тройката числа се прави проверка:

  1. Ако се дели на 3 без остатък – към специалното число се добавя 5;
  2. Ако завършва на 5 – от специалното число се вади 2;
  3. Ако е четно число – специалното число се умножава по 2.

Трябва да се има предвид, едно число може да отговаря на повече от една проверка. В такъв случай трябва да се гледа приоритетът на операциите. Първо дали се дели на 3, после дали завършва на 5 и накрая дали е четно числото. Например:

972 се дели на 3 и е четно. В такъв случай изпълняваме само операцията с най-голям приоритет и към специалното число добавяме 5, но НЕ го умножаваме по 2 след това.

315 се дели на 3 и завършва на 5. Към специалното число добавяме 5.

В случай, че не отговаря на нито една от посочените проверки, НЕ се извършва операция и програмата продължава. Ако специалното число стане равно или по-голямо от контролното програмата приключва.

Вход

От конзолата се четат 5 числа, всяко на отделен ред:

  1. Мцяло число в интервала [1 … 9];
  2. Nцяло число в интервала [1 … 9];
  3. Lцяло число в интервала [1 … 9];
  4. Специално числоцяло число в интервала [0 … 100];
  5. Контролно числоцяло число в интервала [0 … 1000];

Изход

Отпечатването на конзолата зависи от резултата:

  • Ако контролното число е достигнато се отпечатват 1 ред:
  • “Yes! Control number was reached! Current special number is {специалното число}.
  • Ако контролното число НЕ е достигнато се отпечатва 1 ред:
  • “No! {специалното число} is the last reached special number.”

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

Вход

Изход

Обяснения

9

7

3

2

44

Yes! Control number was reached! Current special number is 48.

973 –  не се дели на 3, не завършва на 5 и не е четно => върху него не се извършват никакви операции. Специалното число е по-малко от контролното и програмата продължава.

972  - дели се на 3 =>  2 + 5 = 7. Специалното число е по-малко от контролното и програмата продължава.

971 – не отговаря на условията и не се извършват операции

963 - дели се на 3 => 7 + 5 = 12

962 - четно => 12 * 2 = 24

961 - не отговаря на условията и не се извършват операции

952 - четно => 24 * 2 = 48

48 >= 44

Вход

Изход

Обяснения

1

1

7

1

308

No! 35 is the last reached special number.

117 - дели се на 3 => 1 + 5 = 6

116 - четно => 6 * 2 = 12

115 - завършва на 5 => 12 – 2 = 10

114 - дели се на 3 => 10 + 5 = 15

113 - не отговаря на нито една проверка и програмата продължава

112 - четно => 15 * 2 = 30

111 - дели се на 3 => 30 + 5 = 35

35 < 308

 

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