Софтуерно Инженерство
Loading...
laziana86 avatar laziana86 4 Точки

Проблем с 8. Конвертор за мерни единици

Здравейте,

Имате ли представа какво се чупи в кода? Пробвах различни закръгления (по начина, който съм оставил сега, както и диретно с Console.WriteLine($"{distance:f8}");

и така и не изкарва коректните стойности.

https://pastebin.com/uGZ8sztD

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

 

iliyangeorgiev avatar iliyangeorgiev 1 Точки

Здравейте колеги и колежки, може ли някой да ми обясни къде е грешката в моя код, за да му хвана логиката по-добре и къде точно съм тъп? Пробвах и със switch, но и там се получи подобно мазало.

https://pastebin.com/3dR6nKe4

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

0
svilendotorg avatar svilendotorg 2 Точки

Ето и моят начин, по който го направих:

            // INPUT
            double dist = double.Parse(Console.ReadLine());
            string inType = Console.ReadLine();
            string outType = Console.ReadLine();

            // DEFINITIONS
            double a = 0;
            double b = 0;

            if (inType == "m") a = 1;
            if (inType == "mm") a = 1000;
            if (inType == "cm") a = 100;
            if (inType == "mi") a = 0.000621371192;
            if (inType == "in") a = 39.3700787;
            if (inType == "km") a = 0.001;
            if (inType == "ft") a = 3.2808399;
            if (inType == "yd") a = 1.0936133;

            if (outType == "m") b = 1;
            if (outType == "mm") b = 1000;
            if (outType == "cm") b = 100;
            if (outType == "mi") b = 0.000621371192;
            if (outType == "in") b = 39.3700787;
            if (outType == "km") b = 0.001;
            if (outType == "ft") b = 3.2808399;
            if (outType == "yd") b = 1.0936133;

            // OUTPUT
            double result = dist/a*b;
            Console.WriteLine($"{result:F3}");
 

0