ПредишенСледващото

Циклите се използват за множество повторения на фрагмент от код.
В C-Sharp има четири цикъла оператор, защото, докато, направете-малко, foreach.

Този цикъл се използва, когато е известно, по-рано колко повторения да правя. Той има следната структура:

за (брояч инициализация; състояние разширение; повторение)
// блок на код, който ще се повтаря
>

Един пример за програма, която показва числата 0, 1, 2, 3, 4:


статично невалидни Майн (струнен [] аргументи)
за (INT I = 0; и <5; i++) // цикл выполнится 5 раз
Console.WriteLine (I);
>
>


Първо, това е създаването и инициализация на брояча, I = 0. Тогава там е проверка на състоянието на (I <5), если результат будет «истина», то дальше выполняется блок кода в теле цикла. В конце итерации происходит изменение значения счетчика (в данном примере увеличение на единицу). После этого вновь происходит проверка условия и так далее. Когда условие будет «ложь», цикл работу завершит.

Пример за програма, която открива и показва размера на елементите в масива:

статично невалидни Майн (струнен [] аргументи)
Int [] номера = <4, 7, 1, 23, 43>;
Int S = 0;
за (INT I = 0; и S + = номера [I];
>
Console.WriteLine (и);
Console.ReadKey ();
>


Пример за цикъл, когато броячът се декрементирани след всяка итерация:

за (INT I = 5; I> 0; i--) // изпълнен 5 пъти
Console.WriteLine (I);
>


Можете да промените тезгяха не само до устройството. Пример програма, която извежда дори номера (в брой 50):

за (INT I = 0; и <= 50; i+=2) //выполнится 26 раз
Console.WriteLine (I);
>

Докато думата се превежда като "все още", който ловко го описва. Той продължава да се изпълнява, докато "истинска" някои състояние. Той има следната структура:

докато (продължение състояние)
// блок на код, който ще се повтаря
>


Първо, той проверява състоянието и след това блок от код се изпълнява.

Пример В същата програма, която показва числата 0, 1, 2, 3, 4:


Цикълът може да се изпълнява "завинаги", ако сте задали условието винаги е вярно:

докато (вярно)
Console.WriteLine ( "вечен цикъл");
>

Тази същата линия, докато, само тук първия блок от код се изпълнява, и едва след това е условно тест. Това гарантира, че най-малко една писта цикъл.

правя
// блок на код, който ще се повтаря
>
докато (продължение състояние);

Пример за програма, която не се изключи, докато клавиатурата няма да въведете номера 5:

статично невалидни Майн (струнен [] аргументи)
Int номер;
правя
Console.WriteLine ( "Въведете номера 5");
номер = Convert.ToInt32 (Console.ReadLine ());
>
докато (брой = 5!);
>


За foreach контур ще бъде обсъдено в отделен урок.

можете да излязат напред на всеки цикъл, като се използват отчета за почивка. Използвайте това твърдение има смисъл след изпълнението на определени условия, в противен случай цикълът ще завърши в първата итерация.

Пример програма, която проверява дали броят пъти, в масива 13. Намирането на брой, няма причина да се продължи да се провери останалите елементи на масива, и тук ние използваме почивка оператор:

статично невалидни Майн (струнен [] аргументи)
Int [] номера = <4, 7, 13, 20, 33, 23, 54>;
BOOL б = фалшива;
за (INT I = 0; и ако (номера [Ь]% 13 == 0)
б = вярно;
прекъсване;
>
>
Console.WriteLine (. В "в масива е броя на 13", "Масивът не е кратно на 13".);
Console.ReadKey ();
>

Това твърдение ви позволява да преминете към следващата итерация, не е завършен до края на тока.

Пример програма, която намира сумата на нечетни елементи от масива:

статично невалидни Майн (струнен [] аргументи)
Int [] номера = <4, 7, 13, 20, 33, 23, 54>;
Int S = 0;
за (INT I = 0; и ако (номера [Ь]% 2 == 0)
продължи; // премине към следващата итерация
S + = номера [I];
>
Console.WriteLine (и);
Console.ReadKey ();
>

Задача 1. Показва 20 елементи на последователност 1, 4, 7, 10, 13 ...
Задача 2. Да се ​​напише програма, която ще се "продава" правилната парола, толкова дълго, тъй като е влязъл. Нека правилната парола е «корен».
Задача 3. Като се има два масива с еднаква дължина (10 елементи). Създаване на трети масив, който ще отразява сумата на първите две редици. Първият елемент на третия масив е сумата от първите два елемента от първия масив и така нататък.

Операторът на foreach контур в С-остър

цикъл foreach изявление в C-рязко се използва, за да превъртате чрез събиране. За колекции включва масиви, списъци Списък и класове по поръчка за събиране. Това твърдение не е необходимо да се създаде брояч променлива за достъп до елементи от колекцията, за разлика от други цикли. изявление foreach има следната структура:

foreach ([тип] [променлива] в [събиране])
// линия тяло
>

Пример програма, в която сумата от елементи на масив, използвайки foreach линия:

foreach (Int ел в числа)
S + = ел;
>
Console.WriteLine (и);
Console.ReadKey ();
>


На всяка итерация променлива ел последователно записва елемент колекция. На първата итерация на променливата ел е "4". втората итерация - "7" и т.н.

Както и в другите цикли, в foreach, можете да използвате на почивката и продължи.

Използване foreach контур, показва всички елементи на масив от цели числа, които са по-големи от 20 и по-малко от 50.

Функции в С-рязко. декларация за връщане

Функцията е малка подпрограма. Ако една програма - решение, някои приложни задачи, функцията - това също е решение, но този път в програмата и, съответно, тя изпълнява задачата "по-лесно". Ви дават възможност да се намали размера на програмата се дължи на факта, че не е необходимо да се пренапишат някои програмка - ние просто се обадете на произволен брой, а там, където искате декларацията за функция.

Функции в С-рязко се нарича също методи. Между двете разлика, а тук ние използваме термина функция.

[Модификатор за достъп] [тип връщане] [име функция] ([опцията])
// функция тяло
>

модификатор за достъп (обхват) може да бъде обществен, частен защитен, вътрешен. Какво е това ще говорим в отделен урок, но за сега, ние ще използваме обществеността навсякъде.

Между модификатора и вида може да бъде ключовата дума, статичен, което означава, че функцията ще бъде статичен. Говорете по-подробно за статичните функциите и променливите ще бъдат в отделен клас. Мога само да кажа, че от статично функция може да се обадите на други функции, ако те са твърде статични. Основната функция на главната - винаги статично, така че всички функции в този урок ние също ще декларират статични.

Функцията може да върне стойност или замяна. Ако функцията, например, се връща цяло число, което трябва да се уточни INT тип. Ако функцията не връща стойност, тя използва празнотата ключовата дума. Функции, които не връщат стойност се наричат ​​процедури.

функция Call е така, че името отразява същността на функцията. Използвайте глаголи или фрази с глаголи. Примери: GetAge (), сортиране (), SetVisibility ().

Аргументи - това са данни, които са необходими за изпълнение на функцията. Аргументите са написани в [тип] формат [ID]. Ако много аргументи, те са разделени със запетая. Аргументите могат да бъдат пропуснати.

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

Така че, достатъчно теория, ние се обръщаме към практиката.

Един пример за функция, която връща стойност

Напиши проста функция, която ще бъде заменена в масива на редовете, посочени името на друг. Тази функция ще се три аргумента: масив от низове, име, което трябва да се смени и ново име. Поради това, че функцията не връща стойност, която показва вида на нищожен пред името на функцията.

публично статично невалидни ReplaceName (низ [] имена, името на низ, низ NEWNAME)
за (INT I = 0; и ако (имена [в] == име)
имена [Ь] = NEWNAME;
>
>


Самата функция е много проста. Loop чрез елементи и да видим дали елементът е равен на посоченото име. Ако е така, да го замени с ново име.

Функцията е написано, а сега го използвате:

програма клас
публично статично невалидни ReplaceName (низ [] имена, името на низ, низ NEWNAME)
за (INT I = 0; и ако (имена [в] == име)
имена [Ь] = NEWNAME;
>
>
статично невалидни Майн (струнен [] аргументи)
низ [] имена = <"Sergey", "Maxim", "Andrey", "Oleg", "Andrey", "Ivan", "Sergey">;
ReplaceName (имена, "Андрей", "Николай"); // извикате. Всички струни "Андрей" в масива ще бъдат заменени от "Николай"
ReplaceName (имена, "Иван", "Владимир");
>
>


След два пъти призова функция на тази програма, масивът ще изглежда така: "Сергей", "Maxim", "Николай", "Олег", "Николай", "Владимир", "Сергей".


Пример функция, която връща стойности

Напишете функция, която ще намерите на максималния брой в масива. Аргументът на тази функция ще бъде един - набор от числа. Типът на връщане - число вътр.

публично статично Int GetMax (междинно съединение [] масив)
Int макс = масив [0];
за (INT I = 1; и ако (масив [Ь]> макс)
макс = масив [Ь];
>
върне макс;
>


функция логика е проста. Създаване на променлива макс, което пише на първия елемент на масива. Следваща в цикъла сравни всеки елемент със стойността на макс, ако елементът е по-голяма от максималната, макс се вписва в тази статия. В края на функцията чрез обратно оператор, за да се върнем към нашия резултат.

Отчетът за връщане трябва задължително да бъдете във функция, която връща стойност.

Ние използваме нашата функция:

програма клас
публично статично Int GetMax (междинно съединение [] масив)
Int макс = масив [0];
за (INT I = 1; и ако (масив [Ь]> макс)
макс = масив [Ь];
>
върне макс;
>
статично невалидни Майн (струнен [] аргументи)
Int [] номера = <3, 32, 16, 27, 55, 43, 2, 34>;
Int макс;
макс = GetMax (номера); // наричаме тази функция може да се използва за присвояване на стойност
Console.WriteLine (GetMax (числа)); // извикаме функцията може да се използва като аргумент, когато се обаждате друга функция. WriteLine () - разполагат.
Console.ReadKey ();
>
>

Когато това се случи на оператора излиза от функцията и кода по-долу (ако има такива), няма да се извърши (например, функцията премина на аргумента, в което няма смисъл да се изпълни функцията). Тя е подобна на отчета за почивка, което се използва, за да излезете на цикъла. Това твърдение може да се използва в функции, които не връщат стойност. Отчетът за връщане е допустимо да се използва няколко пъти във функцията, но това не се препоръчва.

Проблем 1. Напишете функция, която ще се промени в масив от цели числа, всички елементи, които са равни на определената стойност (аргумент) на противоположния смисъла на този знак. Например, всички елементи на масива, които са равни на 5, ще варират при -5.

Задача 2. Напишете функция, която ще намерите минималният брой на три.

Задача 3. Напишете функция, която връща елемента Фибоначи серия. Фибоначи серия - серия, в която всеки следващ елемент е сумата от предишните две. 1 1 2 3 5 8 13 21 ... функция приема сериен номер на елемента, и връща съответния елемент.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!