Софтуерно Инженерство
Loading...
+ Нов въпрос
Ivelin_Dimitrov avatar Ivelin_Dimitrov 127 Точки

Ще може ли и условието на задачата да ни покажеш :)

0
28/02/2018 22:07:30
TonyTroev avatar TonyTroev 26 Точки

Където действието ти е деление и модулно деление нямаш нужда от if...else, защото те не правят абсолютно нищо в твоя случай. А ако искаш да провериш дали нещо е четно, или нечетно, използвай модулно деление, а не деление. Не знам какво точно е условието, но мисля, че тук ти е грешката.

1
Ivelin_Dimitrov avatar Ivelin_Dimitrov 127 Точки

напълно съм съгласен със колегата :) но за предпочитане е да дават малко повече инфо..

Предполагам само във последният else ще му е нужна още една проверка за odd/even. 

0
Stanil7 avatar Stanil7 -1 Точки

Напишете програма, която чете две цели числа (n1 и n2) и оператор, с който да се извърши дадена математическа операция с тях. Възможните операции са: събиране (+), изваждане(-), умножение (*), деление (/) и модулно деление (%). При събиране, изваждане и умножение на конзолата трябва да се отпечата резултата и дали той е четен или нечетен. При обикновено деление – единствено резултата, а при модулно деление – остатъка. Трябва да се има предвид, че делителят може да е равен на нула (= 0), а на нула не се дели. В този случай трябва да се отпечата специално съобщение

 

Извинявам се. това е условието.

0
AlucardDracula avatar AlucardDracula 392 Точки

Коя задача е тази? Не успях да я намерия Judge.

0
Ivelin_Dimitrov avatar Ivelin_Dimitrov 127 Точки

Проверките за odd/even са ти грешни. Нито една от тях при деление на 2 няма да ти даде 0,

пример: (10+12) / 2 = 11 и ще ти принтира, че е нечетно, а във случаят 22 е четно... винаги ще е != 0 освен когато му подадеш и двете числа да са 0 

Проверява се дали остатакът при деление на 2 е равен на нула, това се постига чрез модулно деление. Късмет е, че си хванал 90/100 :) 

Колегата TonyTroev те насочи, послушай го

0
28/02/2018 22:45:27
Stanil7 avatar Stanil7 -1 Точки

https://judge.softuni.bg/Contests/Practice/Index/509#2

Ето я.

0
MapoBG avatar MapoBG 1 Точки

Здравейте.

Бих искал да помоля за помощ относно същата задача:

Задача: операции между числа

Напишете програма, която чете две цели числа (n1 и n2) и оператор, с който да се извърши дадена математическа операция с тях. Възможните операции са: събиране (+), изваждане (-), умножение (*), деление (/) и модулно деление (%). При събиране, изваждане и умножение на конзолата трябва да се отпечата резултата и дали той е четен или нечетен. При обикновено деление – единствено резултата, а при модулно деление – остатъка. Трябва да се има предвид, че делителят може да е равен на нула (= 0), а на нула не се дели. В този случай трябва да се отпечата специално съобщение.

Изходни данни

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

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

Решението ( на JS):

https://pastebin.com/uNRbJarq

Проблема в Judge:

- дава ми резултат 90/100(само тест N5 е грешен, но не виждам входните данни за него), но също и дава грешка на всички нулеви тестове " NaN undefined NaN = 0

Тествал съм всички нулеви тестове на VS 2017 и всичко излиза ОК на конзолата.......

0
06/12/2018 18:37:31
am_stanchev avatar am_stanchev 17 Точки

Ето едно решение на C#

https://pastebin.com/ZmNUXnVC

0
MapoBG avatar MapoBG 1 Точки

Благодаря за отговора.

Проблема при мен е, че всичко ми работи ОК на IDE-то на което е написана програмата(VS 2017) - каквито и входни данни да задам, изходните са както е по условие и реално не виждам каквато и да е грешка, но Judge дава 90/100 и което е още по странно - казва, че всички нулеви тестове се провалят, в което няма логика - най-малкото ако нулевите тестове се провалят на 100% - как успява програмата да се справи след това с 9 от 10 от реалните тестове, а от друга страна при изпълнение на програмата от VS с входните параметри от нулевите тестове, всичко е 100% ОК.......

Поздрави,

0
am_stanchev avatar am_stanchev 17 Точки

Съжалявам, но в pastebin кода е изтрит и не мога да го погледна, но по принцип ако нулевите тестове се провалят е може би нещо в изхода - тире точка интервал, а иначе при 90/100 по принцип е някоя гранична стойност или трябва да има равно или без него. 

Успех

0
MapoBG avatar MapoBG 1 Точки

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

Странно за кода - като цъкна на линка от поста ми по-горе го отваря вpastebin без проблем:

https://pastebin.com/uNRbJarq

0