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

3 Equal Numbers

Имам въпроси относно тази задача от домашното :

"Еднакви 3 числа

Три еднакви числа: да се въведат 3 числа и да се отпечата дали са еднакви (yes / no)."

 

Първият ми въпрос е дали задачата може да се реши на 2-3 реда (предполагам , че може) и ако може , моля някой да обясни как.

Вторият ми въпрос е за решението и с подробно изписване (ако е възможно) , както аз опитах да я реша. 

Това е моят код http://pastebin.com/ht6dQy50 . Получавам 40/100 в "judge" , но не мога да я поправя сам. 

Благодаря предварително !

Тагове:
puffed avatar puffed 289 Точки
Best Answer

Трябва да сравниш и трите числа едновременно в един и същи if statement, за да си сигурен, че изписваш "yes", само когато и трите са еднакви. Аз точно я предадох така с 100/100 точки:

using System;


class Program
{
    static void Main()
    {
        var num1 = double.Parse(Console.ReadLine());
        var num2 = double.Parse(Console.ReadLine());
        var num3 = double.Parse(Console.ReadLine());

        if (num1 == num2 && num2 == num3)
        {
            Console.WriteLine("yes");
        }
        else
        {
            Console.WriteLine("no");
        }
    }
}

 

Ако не искаш да използваш едно единствено условие, би могло да бъде нещо такова (повече прилича на твоето решение), но пак трябва да са навързани в един главен if:

if (num1 == num2)
        {
            if (num2 == num3)
            {
                Console.WriteLine("yes");
            }
            else
            {
                Console.WriteLine("no");
            }
        }
        else
        {
            Console.WriteLine("no");
        }

0
30/06/2016 16:26:49
kaloyannikov avatar kaloyannikov 528 Точки

може още по-кратко с използване на тернарен оператор : 

Console.WriteLine(num1==num2&&num2==num3 ? "yes" : "no");

 

0
whitez avatar whitez 1 Точки

Благодаря.

0
neonco avatar neonco 0 Точки

И аз я направих по първият описан начин, първоначално вместо double.Parse  бях написал int.Parse и ми даде грешка във Visual studio, но след като го поправих всичко е точно..

0
CvetyVlas avatar CvetyVlas 2 Точки

Ако трябва да се придържаме към раздела, в който се намира задачата, по вероятно е да бъде това решение:

https://pastebin.com/4uidrUDe

0