Loading...
gsimeonov avatar gsimeonov 8 Точки

Introduction to Programming Homework - Ruse, 2015 [Problem 15 - AgeAfter10Years]

Здравейте, колеги! Забелязах, че 15-та задача се стори доста на интересна на всички, и всеки предлага доста уникални и креативни решения. Тъй като разглеждането на MSDN библиотеката беше част от упражненията, реших да си поиграя с форматирането на датата в задачата. Поствам кода си, и ще съм благодарен ако някой ми каже дали програмата не е прекалено "тромава". 

 

https://www.dropbox.com/s/e03anxthe0f4472/AgeAfter10Years.txt?dl=0

Тагове:
1
Programming Basics
falseuser avatar falseuser 2 Точки

Здравей! Решението ти много ми допада - много е близко до моето като код и начин на написване. При теб ми харесва повече това, че използваш в началото Console WriteLine, за да напишеш, че трябва да се вкара рождения ден в определен формат. 

0
valcho62 avatar valcho62 178 Точки

Тази задача се оказа предизвикателство .Ако се смята само годините е лесно, но аз се заинатих и я усложних като добавих месеци и дни. В голямото четене се оказа, че DataTime  метода няма директно изваждане на дати. Ето и моето решение : http://pastebin.com/uMz57LRG

0
falseuser avatar falseuser 2 Точки

Да, наистина е предизвикателство - заради това и ни харесва толкова. :)
Решението ти ми допада и наистина програмата работи (което винаги е учудващо, когато аз ги пиша като начинаещ в програмирането).

Пробвах с моята рождена дата, но ми изчислява дните с малко разминаване (14.05.1986 - Now 29 years, 6 months, 6 days). А днес е 17ти, не 20ти.

Аз не съм се опитвал да я правя толкова прецизна в дни и месеци, но ако искаш можеш да видиш и моето решение:
 

using System;
class AgeAfter10Years
{
    static void Main()
    {
        Console.Write("Enter Your Birthday in dd.mm.yyyy format:");
        string BirthDateText = Console.ReadLine();

        DateTime birthDate = DateTime.Parse(BirthDateText);
        DateTime currentDate = DateTime.Now;

        int currentAge = currentDate.Year - birthDate.Year;
        if (currentDate.Month <= birthDate.Month && currentDate.Day < birthDate.Day)
        {
            currentAge = currentAge - 1;
        }
        Console.WriteLine("Your Current Age Is:"+currentAge);

        int futureAge = (currentDate.Year - birthDate.Year) + 10;
        if (currentDate.Month <= birthDate.Month && currentDate.Day < birthDate.Day)
        {
            futureAge = currentAge + 10;
        }
        Console.WriteLine("Your Age After 10 Years Would Be:"+futureAge);
    }
}

Благодаря за споделеното решение! 

 

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