Loading...
Anjela_Aleksandrova avatar Anjela_Aleksandrova 71 Точки

Problem 5.Special Numbers?

Здравейте, исках да попитам за задача 5-та от втората лекция - Data Types and Methods.Не разбирам частта с while-цикъла, ако може някой да разясни ще е супер.smiley Ето го и кода: http://pastebin.com/m1LuWjNK .

Тагове:
2
Programming Fundamentals 24/05/2016 20:28:43
indieza avatar indieza 46 Точки

Здравей колега,

Ако трябва да говорим за стилизиран код бих ти препоръчала моя. Разгледай го дано да ти помогне.  

1
mgerin avatar mgerin 4 Точки

Колега, този код наистина е стилизиран, но дава верен резултат само за двуцифрените числа. Станат ли трицифрени, вече сумата не е коректна.

0
slav.petkov avatar slav.petkov 26 Точки

Здравей, indieza,

добре изглежда кодът ти. Бих ти дал още няколко препоръки:

  1. bool isSpecial = firstDigit + lastDigit == 5 || firstDigit + lastDigit == 7 || firstDigit + lastDigit == 11;  Този ред би могъл да го пренапишеш по следния начин:

    int sumOfFirstAndLastDigit = firstDigit + lastDigit;
    bool isSumOfFirstAndLastDigitEqualToFive =
    (sumOfFirstAndLastDigit == 5);
    bool isSumOfFirstAndLastDigitEqualToSeven = (
    sumOfFirstAndLastDigit == 7);
    bool isSumOfFirstAndLastDigitEqualToEleven =
    (sumOfFirstAndLastDigit == 11);

    bool isSpecial = isSumOfFirstAndLastDigitEqualToFive || isSumOfFirstAndLastDigitEqualToSeven ||

                isSumOfFirtAndLastDigitEqualToEleven;

    Може да е по-дълго за писане, но ще улесниш себе си след време, когато си го четеш, пък и други хора, като нас, които искаме да ти помогнем.

    Горният дълъг израз лично на мен ми стоеше малко неясен, затова го разбих на три отделни израза. Скобите във всеки един от тях съм ги сложил, за да може този, който чте кода, да не губи време да се чуди какъв е приоритетът на операциите. Така МНОГО ясно подчертавам, че искам резултатът от сравнението да се присвои на променливата, а не първо да се присвои sumOfFirstAndlastDigits и чак тогава да се сравни с литерала.

     
  2. Console.WriteLine(i + " -> " + isSpecial);

    Това би могъл да го напишеш по следния начин:
    Console.WriteLine("{i} -> {isSpecial}");
    Пак стои по-четимо.
     

Браво, че се стараеш да пишеш стилизиран код.

ПРОДЪЛЖАВАЙ ТАКА!

Поздрави!

 

 

 

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