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

Area of Figures.

Здравейте, 

Имам проблем със задачата Area of Figures. В Visual Stidio работи без грешки, а в Jujge ми дава 50/100 points.

Ще се радвам, ако някой ми каже къде бъркам, защото очевидно правя грешка някъде :)

Това е решението ми:

http://pastebin.com/GXxfsH2Y

Благодаря ви!

 

 

 

Тагове:
0
Programming Fundamentals 03/06/2016 12:51:47
kaloyannikov avatar kaloyannikov 528 Точки

[ Console.WriteLine("Area = " + Math.PI * r * r) ]

Махни болднатото съобщение

0
rado84 avatar rado84 1 Точки

Мда, тая задача беше малко tricky. Къде са ти грешките не мога да кажа, защото не съм толкова напреднал. Мога само да ти дам моето решение (100/100 след 5-ия опит), с което да сравняваш и евентуално да откриеш къде бъркаш.

Ето:

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

namespace ShapesAreas
{
    class Program
    {
        static void Main(string[] args)
        {
            //variables
            string square;
            string rectangle;
            string circle;
            string triangle;
            double area;

            //user input
            string userinput = Console.ReadLine();   
            
            //square area
            if (userinput == "square")
            {
                double SideA = double.Parse(Console.ReadLine());
                area = Math.Pow(SideA, 2);
                Console.WriteLine("{0:0.###}", area);
            }

            //rectangle area
            if (userinput == "rectangle")
            {
                double SideA = double.Parse(Console.ReadLine());
                double SideB = double.Parse(Console.ReadLine());
                area = SideA * SideB;
                Console.WriteLine("{0:0.###}", area);
            }

            //circle area
            if (userinput == "circle")
            {
                double Radius = double.Parse(Console.ReadLine());
                area = Math.PI * Math.Pow(Radius, 2);
                Console.WriteLine("{0:0.###}", area);
            }

            //triangle area
            if (userinput == "triangle")
            {
                double SideA = double.Parse(Console.ReadLine());
                double Height = double.Parse(Console.ReadLine());
                area = (SideA * Height) / 2.0;
                Console.WriteLine("{0:0.###}", area);
            }
        }
    }
}

 

0
03/06/2016 13:02:18
Nikola_Andreev avatar Nikola_Andreev 671 Точки

Здравей!

Rectangle не е написано правилно, изтървала си 1 буква. А и сметките вътре не са ти верни. Парсваш го към инт, а трябва към дабъл,само за rectangle говоря.

*Сега гледам че и за square трябва да ти е double

 

0
03/06/2016 13:07:41
EllyM.Lyubenova avatar EllyM.Lyubenova 0 Точки

Благодаря ви!

Сега ще опитам да направя корекциите :)

0
elena.nikolova2 avatar elena.nikolova2 63 Точки

В такива случай judge-а е много полезен инструмент, за да си намериш грешките. Като цъкнеш "Детайли" срещу грешното решение можеш да видиш при кой точно изход ти гърми програмата. Виж какво е било подадено като вход и по какво твоят изход се различава от очаквания. Така ще знаеш къде да се съсредоточиш, като търсиш грешката в кода :) Естествено има и  задачи, за които jugje-а не показва къде и как си сгрешил, за това по-добрата практика е да ползваш Debugger-a в такива случаи. И последен съвет от мен, когато трябва да бъде въведена или изпечатана дума или изречение за избягване на правописните грешки, направо си ги копирай от условието, пък и става доста по-бързо :)

Успех :)

0
turbinii avatar turbinii 17 Точки

Едно решение и от мен:

https://pastebin.com/BiBAhsVn

0