Loading...

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

MihailKM avatar MihailKM 1 Точки

Time + 15 minutes Задача 16 (Programming basics)

Здравейте,

Ще може ли да ударите едно рамо за логиката зад задачата. Моята идея, която се оказа доста непълна, беше двете стойности(hours и seconds) да се четът от конзолата, при което всеки път когато seconds е >=60 да се прибавя 1 час към стойноста на hours чрез if проверка. До тук добре но преблемът идва при това как да нулирам секундите след вкарване на равна или по-голяма стойност от 60 и как да вкарам една нуличка пред часовете ако стойността им е под 10 без тази нула да остава след 10.

Тагове:
0
Programming Basics
MihailKM avatar MihailKM 1 Точки

Добре

Измислих го :D 

        seconds = 15 + seconds;


        if (seconds > 60)
        {
             seconds = seconds % 60;
             hours += 1;
        }

Остана работата с нуличките. 

0
borislav9212 avatar borislav9212 745 Точки

първото което ми хрумва:

 if (minute < 10)
            {
                Console.WriteLine("{0}:0{1}", hour, minute);

            }
            else
            {
                Console.WriteLine("{0}:{1}", hour, minute);
            }

А за минутите ако са >59, увеличаваме часовете и изваждаме minutes -= 60. И една проверка да не се прехвълят часовете. Ако hour > 23 -> hour = 0.

0
25/06/2016 00:06:35
KrasimirPetkov avatar KrasimirPetkov 328 Точки

Мисля, че говориш за задача 14. Time + 15 minutes, от Simple Conditional Statements.

Ако това е случаят, то не работиш със секунди, а само часове и минути. Решава се с две if-проверки.

При първата проверяваш дали минутите, след като добавиш 15 към тях, стават над 60:

if (minutes >= 60)
{
   minutes -= 60; 
   hours++;
}

При втората проверяваш, дали часовете не стават 24:

if (hours > 23)
{
    hours = 0;
}

След това трябва само да изведеш резултата. За водещата нула при минутите, можеш да използваш placeholder-a "D2" (заделя 2 позиции за числото, а ако то е едноцифрено - поставя водеща нула пред него):

Console.WriteLine("{0}:{1:D2}",hours,minutes);

Успех със задачата!

0
25/06/2016 00:15:37
MihailKM avatar MihailKM 1 Точки

Да minutes са, грешно ги бях инициализирал.

Това е крайният и вид след помощта:

using System;

class Time_Plus_15_Minutes4
{
    static void Main()
    {
         int hours = int.Parse(Console.ReadLine());
         int minutes = int.Parse(Console.ReadLine());

         minutes = 15 + minutes;

         if (minutes >= 60)
         {
             minutes = minutes % 60;
             hours += 1;
         }

         if (hours >= 24)
         {
             hours = 0;
         }

         Console.WriteLine("{0}:{1:D2}", hours, minutes);

    }
}

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