Advertisement
teotod

зад.6-от 7.05.2017

Nov 1st, 2017
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.38 KB | None | 0 0
  1. Изпит по "Програмиране за начинаещи"  – 7 май 2017
  2. Задача 6. Генератор на числа
  3. Да се напише програма, която прочита от конзолата три цели числа – M, N и L, и генерира всички числа в диапазона от MNL до 111. От конзолата се чете едно специално и едно контролно число. За всяка комбинация от тройката числа се прави проверка:
  4. 1.  Ако се дели на 3 без остатък – към специалното число се добавя 5;
  5. 2.  Ако завършва на 5 – от специалното число се вади 2;
  6. 3.  Ако е четно число – специалното число се умножава по 2.
  7. Трябва да се има предвид, едно число може да отговаря на повече от една проверка. В такъв случай трябва да се гледа приоритетът на операциите. Първо дали се дели на 3, после дали завършва на 5 и накрая дали е четно числото. Например:
  8. 972 се дели на 3 и е четно. В такъв случай изпълняваме само операцията с най-голям приоритет и към специалното число добавяме 5, но НЕ го умножаваме по 2 след това.
  9. 315 се дели на 3 и завършва на 5. Към специалното число добавяме 5.
  10. В случай, че не отговаря на нито една от посочените проверки, НЕ се извършва операция и програмата продължава. Ако специалното число стане равно или по-голямо от контролното програмата приключва.
  11. Вход
  12. От конзолата се четат 5 числа, всяко на отделен ред:
  13. 1.  М – цяло число в интервала [19];
  14. 2.  N – цяло число в интервала [19];
  15. 3.  L – цяло число в интервала [19];
  16. 4.  Специално число – цяло число в интервала [0100];
  17. 5.  Контролно число – цяло число в интервала [01000];
  18. Изход
  19. Отпечатването на конзолата зависи от резултата:
  20. • Ако контролното число е достигнато се отпечатват 1 ред:
  21. o   “Yes! Control number was reached! Current special number is {специалното число}.
  22. • Ако контролното число НЕ е достигнато се отпечатва 1 ред:
  23. o   “No! {специалното число} is the last reached special number.
  24. Примерен вход и изход
  25. Вход    Изход  Обяснения
  26. 9
  27. 7
  28. 3
  29. 2
  30. 44  Yes! Control number was reached! Current special number is 48.  973 –  не се дели на 3, не завършва на 5 и не е четно => върху него не се извършват никакви операции. Специалното число е по-малко от контролното и програмата продължава.
  31. 972  - дели се на 3 =>  2 + 5 = 7. Специалното число е по-малко от контролното и програмата продължава.
  32. 971 – не отговаря на условията и не се извършват операции
  33. 963 - дели се на 3 => 7 + 5 = 12
  34. 962 - четно => 12 * 2 = 24
  35. 961 - не отговаря на условията и не се извършват операции
  36. 952 - четно => 24 * 2 = 48
  37. 48 >= 44
  38. Вход    Изход  Обяснения
  39. 1
  40. 1
  41. 7
  42. 1
  43. 308 No! 35 is the last reached special number.  117 - дели се на 3 => 1 + 5 = 6
  44. 116 - четно => 6 * 2 = 12
  45. 115 - завършва на 5 => 122 = 10
  46. 114 - дели се на 3 => 10 + 5 = 15
  47. 113 - не отговаря на нито една проверка и програмата продължава
  48. 112 - четно => 15 * 2 = 30
  49. 111 - дели се на 3 => 30 + 5 = 35
  50. 35 < 308
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement