Loading...
hristo2201 avatar hristo2201 0 Точки

09. Operations Between Numbers

Успях да го докарам до 60/100 в Judge и зациклих. Като въвеждам данни ми дава вярни резултати, но judge-a нещо пак не харесва. Може ли за малко помощ.

Кода:

https://pastebin.com/3iniyA5S

Условието:

https://softuni.bg/trainings/resources/officedocument/35586/exercise-problem-descriptions-programming-basics-bulgaria-october-2018/2158

Тагове:
0
Programming Basics
vangel avatar vangel 51 Точки

При операциите деление и модулно деление, трябва първо да провереш дали второто число е 0 и ако не е 0 само тогава да извършиш операцията, а ти първо делиш и после проверяваш. При деление на 0 се хвърля грешка, а ти трябва да изпишеш съобщение "Cannot divide {n1} by zero"

 

            else if (symbol == "/")
            {
                if (n2 != 0)
                {
                    result = n1 / n2;
                    Console.WriteLine("{0} {1} {2} = {3:f2}", n1, symbol, n2, result);
                }
                else
                {
                    Console.WriteLine("Cannot divide {0} by zero", n1);
                }
            }
            else if (symbol == "%")
            {
                if (n2 != 0)
                {
                    result = n1 % n2;
                    Console.WriteLine("{0} {1} {2} = {3}", n1, symbol, n2, result);
                }
                else
                {
                    Console.WriteLine("Cannot divide {0} by zero", n1);
                }
            }

0
31/10/2018 16:38:19
svetlyoek avatar svetlyoek 20 Точки

И понеже и аз имам 90/100 ,въпреки описания от теб последен вариант пак не дава 100/100 или има друго в моя код:

https://pastebin.com/pGJsNn3b

Благодаря!

0
hristo2201 avatar hristo2201 0 Точки

Поправих кода както vangel спомена, но отново 90/100.

Продължавам борбата.

0
svetlyoek avatar svetlyoek 20 Точки

И аз така

0
vangel avatar vangel 51 Точки

Ето го целият код редактиран, на мен ми дава 100/100

https://www.dropbox.com/s/fic28z100kdrz2l/operationsBetweenNumbers.cs?dl=0

0
31/10/2018 21:22:13
vangel avatar vangel 51 Точки

Проверката дали резултатът е нечетно число трябва да бъде

result % 2 != 0 вместо result % 2 == 1

Ако резултатът е отрицателно нечетно число result % 2 = -1

https://dotnetfiddle.net/wsKj5S

0
31/10/2018 22:26:43
svetlyoek avatar svetlyoek 20 Точки

Да,това е грешката,но аз лично не си обеснявам защо при един подход работи,по друг не при положение,че и двете са еднакви!?Дали ще е result%2==1-т.е. да е нечетно число или result%2!=0-което пак ще даде нечетно.Явно аз мисля грешно.

0
svetlyoek avatar svetlyoek 20 Точки

...сега видях обяснението ти горе,но не мога да си го обясня,а искам

0
31/10/2018 21:59:15
BilyanaDer avatar BilyanaDer 1 Точки

След много мъки изпращам код със 100 точки.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Operations_Between_Numbers
{
    class Program
    {
        static void Main(string[] args)
        {
            double N1 = double.Parse(Console.ReadLine());
            double N2 = double.Parse(Console.ReadLine());
            string operat = Console.ReadLine();
            double result =0;

            if(operat == "+"&& N1>=0 && N2>=0)
            {
                result = N1 + N2;
                if (result % 2 == 0)
                {
                    Console.WriteLine($"{N1} + {N2} = {result} - even");
                }
                else
                {
                    Console.WriteLine($"{N1} + {N2} = {result} - odd");
                }
                    

            }
            else if (operat == "-" && N1>=0 && N2>=0)
            {
                result = N1 - N2;
                if (result % 2 == 0)
                {
                    Console.WriteLine($"{N1} - {N2} = {result} - even");
                }
                else
                {
                    Console.WriteLine($"{N1} - {N2} = {result} - odd");
                }


            }
            else if (operat == "*" && N1 >= 0 && N2 >= 0)
            {
                result = N1 * N2;
                if (result % 2 == 0)
                {
                    Console.WriteLine($"{N1} * {N2} = {result} - even");
                }
                else
                {
                    Console.WriteLine($" {N1} * {N2} = {result} - odd");
                }

            }
            else if (operat == "/" && N1 >= 0 && N2 >= 0)
            {
                result = N1 / N2;
                if (N2 !=0)
                {
                    Console.WriteLine($"{N1} / {N2} = {result:f2}");
                }
                else
                {
                    Console.WriteLine($"Cannot divide {N1} by zero");
                }

            }
            else if (operat =="%" && N1 >= 0 && N2 >= 0)
            {
                result = N1 % N2;
                if (N2 != 0)
                {
                    Console.WriteLine($"{N1} % {N2} = {result}");
                }
                else
                {
                    Console.WriteLine($"Cannot divide {N1} by zero");
                }

                
            }

        }
    }
}
 

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