Loading...
stefan.iliev.A avatar stefan.iliev.A 5 Точки

Затруднение със задача Сумиране на секунди !

Здравейте ,

Имам малък проблем с моята задача.....някои секунди излизат правилно на минути и секунди а други не....къде ми е проблема laugh

 

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

namespace Mins_Secs
{
    class Program
    {
        static void Main(string[] args)
        {
            var sec1 = int.Parse(Console.ReadLine());
            var sec2 = int.Parse(Console.ReadLine());
            var sec3 = int.Parse(Console.ReadLine());
            var secs = sec1 + sec2 + sec3;
            var mins = 0;
            if (secs <= 59)
            {
                mins = 0; secs = sec1 + sec2 + sec3;
            }
            else if (secs > 59)  {
              mins++; secs = secs - 60;
            }
            
            else if(secs>119)
            {
                mins += 2;secs = secs - 120;
            }
            if (secs < 10)
                Console.WriteLine(mins + ":" + "0" + secs);
            else
                Console.WriteLine(mins + ":" + secs);
        }
    }
}
 

Тагове:
0
Programming Basics
YavorSpassov+deleted! avatar YavorSpassov+deleted! 133 Точки

Това е моето решение: http://pastebin.com/aaGK3C0v

0
bonyta2442 avatar bonyta2442 0 Точки

Елементарно решение, но съобразно условието и дава 100% в джъджа:

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)
        {
            var a = int.Parse(Console.ReadLine());
            var b = int.Parse(Console.ReadLine());
            var c = int.Parse(Console.ReadLine());
            var total = a + b + c;

            if (total >= 0 && total <= 59)
            {
                int min = 0;
                int sec = total;
                Console.WriteLine("{0}" + ":" + "{1:D2}", min, sec);
            }
            else if (total >= 60 && total <= 119)
            {
                int min = 1;
                int sec = total - 60;
                Console.WriteLine("{0}" + ":" + "{1:D2}", min ,sec);
            }
            else if (total >= 120 && total <= 179)
            {
                int min = 2;
                int sec = total - 120;
                Console.WriteLine("{0}" + ":" + "{1:D2}", min, sec);
            }
        }
    }
}

0
simeon3000 avatar simeon3000 264 Точки

100/100 на един ред:

Console.WriteLine(DateTime.Today.AddSeconds(int.Parse(Console.ReadLine()) + int.Parse(Console.ReadLine()) + int.Parse(Console.ReadLine())).ToString("m:ss"));

Вярно, че е малко дълъг реда smiley

0
21/06/2017 02:27:41
JoskoToshkov avatar JoskoToshkov 0 Точки

Браво!

Много ми хареса.

Макар че може да се приеме, че е чийт, един вид.

0
tsevov avatar tsevov 0 Точки

Много добро и лесно разбираемо решение!

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