25.07.2017 Views

Intro-CSharp-Book-v2015

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

310 Въведение в програмирането със C#<br />

променливата logo, дефинирана в списъка от параметри, се използва в<br />

тялото на метода чрез името, с което сме я дефинирали.<br />

Метод за сумиране цените на книги в книжарница – пример<br />

По-горе казахме, че когато е нужно, можем да подаваме като параметри на<br />

метода и масиви – int[], double[], string[], ... Нека в тази връзка<br />

разгледаме друг пример.<br />

Ако сме в книжарница и искаме да пресметнем сумата, която дължим за<br />

всички книги, които желаем да закупим, можем да си създадем метод, който<br />

приема като входни данни цените на отделните книги във вид масив от тип<br />

decimal[] и връща общата им стойност, която трябва да заплатим на<br />

продавача:<br />

static void PrintTotalAmountFor<strong>Book</strong>s(decimal[] prices)<br />

{<br />

decimal totalAmount = 0;<br />

foreach (decimal single<strong>Book</strong>Price in prices)<br />

{<br />

totalAmount += single<strong>Book</strong>Price;<br />

}<br />

Console.WriteLine("The total amount of all books is:" +<br />

totalAmount);<br />

}<br />

Поведение на метода в зависимост от входните данни<br />

Когато декларираме метод с параметри, целта ни е всеки път, когато<br />

извикваме този метод, работата му да се променя в зависимост от<br />

входните данни. С други думи, алгоритъмът, който ще опишем в метода,<br />

ще бъде един, но крайният резултат ще бъде различен, в зависимост от<br />

това какви входни данни сме подали на метода чрез стойностите на<br />

входните му параметри.<br />

Когато даден метод приема параметри, поведението му<br />

зависи от тях.<br />

Метод за извеждане знака на едно число – пример<br />

За да стане ясно как поведението (изпълнението) на метода зависи от<br />

входните параметри, нека разгледаме следния метод, на който подаваме<br />

едно цяло число (от тип int), и в зависимост от това, дали числото е<br />

положително, отрицателно или нула, съответно той извежда на конзолата<br />

стойност "Positive", "Negative" или "Zero":<br />

static void PrintSign(int number)<br />

{<br />

if (number > 0)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!