Професионална програма
Loading...
+ Нов въпрос
v.angelov92 avatar v.angelov92 6 Точки

Появяване на допълнителен текст във Visual studio 2019

Здравейте, решавам следната задача:

1.   Операции между числа

Напишете програма, която чете две цели числа (N1 и N2) и оператор, с който да се извърши дадена математическа операция с тях. Възможните операции са: Събиране(+), Изваждане(-), Умножение(*), Деление(/) и Модулно деление(%). При събиране, изваждане и умножение на конзолата трябва да се отпечатат резултата и дали той е четен или нечетен. При обикновеното делениерезултата. При модулното делениеостатъка. Трябва да се има предвид, че делителят може да е равен на 0(нула), а на нула не се дели. В този случай трябва да се отпечата специално съобщениe.

Вход

От конзолата се прочитат 3 реда, въведени от потребителя:

  • цяло число в интервала [0...40 000]
  • цяло число в интервала [0...40 000]
  • един символ измежду: „+“, „-“, „*“, „/“, „%

Изход

Да се отпечата на конзолата един ред:

  • Ако операцията е събиране, изваждане или умножение:
    •  "{N1} {оператор} {N2} = {резултат} – {even/odd}"
  • Ако операцията е деление:
    • "{N1} / {N2} = {резултат}" – резултатът е форматиран до вторият знак след дес.запетая
  • Ако операцията е модулно деление:
    • "{N1} % {N2} = {остатък}"
  • В случай на деление с 0 (нула):
    • "Cannot divide {N1} by zero"

 

 

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

вход

изход

вход

изход

вход

изход

10

12

+

10 + 12 = 22 - even

123

12

/

123 / 12 = 10.25

112

0

/

Cannot divide 112 by zero

10

1

-

10 – 1 = 9 - odd

10

3

%

10 % 3 = 1

10

0

%

Cannot divide 10 by zero

7

3

 

 

*

7 * 3 = 21 - odd

 

 

 

Получавам отговите,които са дадени, но на конзолата излиза следния допълнителен текст във случаите с деление на 0:

Желан отговор : Cannot divide 112 by zero          Получен отговор : Cannot divide 112 by zero
                                                                                                           112 / 0 = Infinity

Желан отговор : Cannot divide 10 by zero          Получен отговор : Cannot divide 10 by zero
                                                                                                      10 % 0 = NaN

Двете допълнителни изречения не съм ги писал в кода си.

Прилагам и линк към него: https://pastebin.com/SrEaDfrk

Благодаря за отделеното време и помощ. :)

0
Programming Basics
mark79 avatar mark79 631 Точки
Best Answer

Здравей,

най-лесно е след отпечатване на съобщението, че не може да се дели на 0 да сложиш един return; Това, ще накара програмата да спре до където е стигнала и няма да продължи с проверките. Друг вариант е да сложиш проверката вътре при деленията или пък някаква булева и т.н.

Поздрави :)

0
v.angelov92 avatar v.angelov92 6 Точки

Здравей, с един Return на края на проверката за проверка дали числото е 0 стана. Колко просто решение, но не го знаех. Благодаря за информацията и отделеното време. Поздрави и успех.

0