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

Задача от изпит - 06.03 01. Training Lab

Здравейте, judge-a ми открива някаква грешка дава ми 50/100. Някой да има представа къде ми е грешката.

Заздачата е: Учебна зала. Условието е от лекция 2. Simple-Calculations-Exercises.

(1-ва задача от изпит-а от 6-ти март)

Това ми е сорс кода(с 2-те проверки от лекцията е ОК, но в judge не минава):

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

namespace convert_meter
{
    class Program
    {
        static void Main(string[] args)
        {
            var h = double.Parse(Console.ReadLine());
            var w = double.Parse(Console.ReadLine());


            var workplaceH = 1.20;
            var workplaceW = 0.70;
            var Roll = h / workplaceH;
            Roll = Math.Floor(Roll);
            //Console.WriteLine(Roll);
            var SitplaceOnRoll = (w / workplaceW) - 1;
            SitplaceOnRoll = Math.Floor(SitplaceOnRoll);
            //Console.WriteLine(SitplaceOnRoll);
            var numberOfPlace = (Roll * SitplaceOnRoll) - 3;
            Console.WriteLine(numberOfPlace);
        }

    }

}

 

g_todorov avatar g_todorov 98 Точки

Здравей,

съгласен съм с коментара на колегата по-долу. Предполагам,

че има и по-опттимални решения, но прегледай и моето - работи напълно вярно.

Ето го и него:

Успех ти желая

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

namespace Izpiptna_Zala
{
    class Program
    {
        static void Main(string[] args)
        {
            var h =  double.Parse (Console.ReadLine());
            var w =  double.Parse (Console.ReadLine());
            //превръщаме метрите в см.
            var Hcm = h * 100;
            var Wcm = w * 100;

            var row = Hcm / 120;
            var RowRound = Math.Round(row, 0);

            var column = (Wcm - 100) / 70;
            var ColumnRound = Math.Round(column, 0);

            var Seats = (RowRound * ColumnRound) - 3;
            Console.WriteLine(Seats);
             
        }
    }
}

0
george_gramatikov avatar george_gramatikov 1 Точки

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

namespace convert_meter
{
    class Program
    {
        static void Main(string[] args)
        {
            var h = double.Parse(Console.ReadLine());
            var w = double.Parse(Console.ReadLine());
            //var workplaceH = 1.20;
            //var workplaceW = 0.70;
            //h = h * 100;
            //w = w * 100;
            var Roll = h / 1.2;
            Roll = Math.Floor(Roll);
            //Console.WriteLine(Roll);
            var SitplaceOnRoll = (w -1) /0.7;
            SitplaceOnRoll = Math.Floor(SitplaceOnRoll);
            //Console.WriteLine(SitplaceOnRoll);
            var numberOfPlace = (Roll * SitplaceOnRoll) - 3;
            Console.WriteLine(numberOfPlace);
        }

    }

}

Благодаря за отговорите. Намерих си грешката мерси. Това което е закоментирано и 2-та реда нарочно съм ги закоментирал, защото си правех проверки. Но в условието на задачата се иска да изкарва на конзолата само изход за брой места, така че другите не ми трябват.

Грешката ми е тук:

var SitplaceOnRoll = (w -1) /0.7;

Първо трябва да извадя метъра за пътеката, после деля на работното място, а го бях направил обратно.

0