Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

andreiko489 avatar andreiko489 17 Точки

[ИЗЛЪГАХ JUDGE]

В упражненията за прости проверки е дадена следната задача:

7. Сумиране на секунди
Трима спортни състезатели финишират за някакъв брой секунди (между 1 и 50). Да се напише програма, която чете времената на състезателите, въведени от потребителя, и пресмята сумарното им време във формат "минути:секунди". Секундите да се изведат с водеща нула (2 →  "02", 7 → "07", 35 → "35").

Примерен вход и изход:

35 → 2:04
45
44

22 → 1:03
7
34

50 → 2:29
50
49

14 → 0:36
12
10

КОДА МИ Е СЛЕДНИЯ:

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

namespace SumSeconds
{
    class Program
    {
        static void Main(string[] args)
        {
            int sec1 = int.Parse(Console.ReadLine());
            int sec2 = int.Parse(Console.ReadLine());
            int sec3 = int.Parse(Console.ReadLine());
            int sumSec = sec1 + sec2 + sec3;
            if (sumSec < 10)
            {
                Console.WriteLine("0:0" + sumSec);
            }
            if (sumSec >= 10 && sumSec < 60)
            {
                Console.WriteLine("0:" + sumSec);
            }
            if (sumSec == 60)
            {
                Console.WriteLine("1:00");
            }
            if (sumSec > 60 && sumSec <= 120)
            {
                int sumSecNew = sumSec - 60;
                if (sumSecNew < 10)
                {
                    Console.WriteLine("1:0" + sumSecNew);
                }
                else
                {
                    Console.WriteLine("1:" + sumSecNew);
                }
            }
            if (sumSec > 120)
            {
                int sumSecNew = sumSec - 120;
                if (sumSecNew < 10)
                {
                    Console.WriteLine("2:0" + sumSecNew);
                }
                else
                {
                    Console.WriteLine("2:" + sumSecNew);
                }
            }
        }
    }
}

JUDGE ми дава 100/100 НО аз знам, че кода е грешен. Take that Judge!
Интересен би бил следния въпрос: Може ли да откриете къде е грешката и при какви входни данни ще се прояви/изпечати?
 

 

Тагове:
0
Programming Basics 26/05/2018 16:30:24
ToniStoyanov avatar ToniStoyanov 8 Точки

Е случват се и грешки казал таралежа и слязъл от четката :) :). Предполагам ако подадеш 3 пъти по 40сек. стават точно 120 и изхода ще ти бъде 1:60сек. а не 2:00.

0
andreiko489 avatar andreiko489 17 Точки

Абсолютно. Изобщо за всички случаи, в които сбора на подадените данни е 120 sec. Тъй като умишлено не се разглежда отделно този случай, но без да се изключва. Следователно JUDGE e жена, не може да му се има доверие :D.

 

0
26/05/2018 16:53:31
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

няма нищо общо с жена,просто няма такъв unit test след година ще разбереш какво е това :Д споко

0
andreiko489 avatar andreiko489 17 Точки

тъкмо се чудех кога ще го разбера, мерси

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