Programming Basics Exam - 7 May 2017 - Number Generator
Здравейте имам проблем с решаването на шеста задача от изпит 07 май 2017.
https://pastebin.com/uSmzGZaV
Условие:
Задача 6. Генератор на числа
Да се напише програма, която прочита от конзолата три цели числа – M, N и L, и генерира всички числа в диапазона от MNL до 111. От конзолата се чете едно специално и едно контролно число. За всяка комбинация от тройката числа се прави проверка:
- Ако се дели на 3 без остатък – към специалното число се добавя 5;
- Ако завършва на 5 – от специалното число се вади 2;
- Ако е четно число – специалното число се умножава по 2.
Трябва да се има предвид, едно число може да отговаря на повече от една проверка. В такъв случай трябва да се гледа приоритетът на операциите. Първо дали се дели на 3, после дали завършва на 5 и накрая дали е четно числото. Например:
972 се дели на 3 и е четно. В такъв случай изпълняваме само операцията с най-голям приоритет и към специалното число добавяме 5, но НЕ го умножаваме по 2 след това.
315 се дели на 3 и завършва на 5. Към специалното число добавяме 5.
В случай, че не отговаря на нито една от посочените проверки, НЕ се извършва операция и програмата продължава. Ако специалното число стане равно или по-голямо от контролното програмата приключва.
Вход
От конзолата се четат 5 числа, всяко на отделен ред:
- – цяло число в интервала [1 … 9];
- N – цяло число в интервала [1 … 9];
- L – цяло число в интервала [1 … 9];
- Специално число – цяло число в интервала [0 … 100];
- Контролно число – цяло число в интервала [0 … 1000];
Изход
Отпечатването на конзолата зависи от резултата:
- Ако контролното число е достигнато се отпечатват 1 ред:
- “Yes! Control number was reached! Current special number is {специалното число}.”
- Ако контролното число НЕ е достигнато се отпечатва 1 ред:
- “No! {специалното число} is the last reached special number.”