Разработка линейных алгоритмов.

Линейный алгоритм (следование) образуется командами, выполняемыми однократно в той последовательности, в которой они записаны.

Разработка линейных алгоритмов. - student2.ru Чтобы составить программу линейной структуры...

1. Определить, что является исходными данными, какие будут у них типы. Выбрать имена переменных.

2. Определить, что является искомыми результатами, какие будут у них типы. Выбрать имена переменных.

3. Определить, какие формулы связывают исходные данные с результатами.

4. Если нужны промежуточные данные, определить их типы и выбрать имена вспомогательных переменных.

5. Описать все используемые переменные.

6. Записать алгоритм, который должен включать:

1. ввод всех исходных данных;

2. вычисления;

3. вывод результатов.

Будьте внимательны: вспомогательная переменная должна получить значение до того, как она будет использована в вычислениях.

7. Подобрать данные для тестирования программы (проверки правильности ее работы).

Задачи:

1. Запишите по правилам С# следующие выражения:

Разработка линейных алгоритмов. - student2.ru

2. Разработать алгоритм написать программу для следующей задачи:

По норме СанПИН площадь для одного компьютера в кабинете 3 м2. Какой площадью должен быть кабинет информатики для А количества компьютеров.

3. Выкурив 1 сигарету, человек принимает 2 мг никотина. Сколько яда никотина примет человек за один день, выкурив х сигарет?

4. Сердце здорового человека делает 75 ударов в минуту. Сколько ударов сделает сердце за х минуту?

5. Тяжёлые машины и автобусы за каждый километр пробега выделяют 23 грамма азота. Сколько газа выделяет автобус маршрута № 17, если он сделал С кругов? Расстояние от вокзала до деревни равно А км.

6. В магазине продается костюмная ткань. Ее цена В руб. за квадратный метр. Составьте алгоритм и программу, которая подсчитает и выведет на экран стоимость куска этой ткани длиной Х метров и шириной 1м.

Условные операторы

Разветвляющимся называется такой алгоритм, в котором выбирается один из нескольких возможных вариантов вычислительного процесса. Каждый подобный путь называется ветвью алгоритма.

Для разработки таких алгоритмов применяют условный оператор. Условный оператор может использоваться в форме полной или неполной развилки.

Разработка линейных алгоритмов. - student2.ru

В случае неполной развилки если условие истинно, то блок операций выполняется, если условие ложно, то блок операций не выполняется. В случае полной развилки если условие истинно, то выполняется блок операций 1, иначе выполняется блок операций 2.

Условие может быть простым и составным.

В простых условия используются операторы сравнения:

< - меньше, чем..

> - больше, чем...

<= - меньше, чем... или равно

>= - больше, чем... или равно

<> - не равно

= = - равно

Например, простыми отношениями являются следующие:

x-y>10; k<= (a+b); s = = 0;

Составные условия строятся из простых с помощью логических операторов:

&& - И

|| - ИЛИ

! – НЕ

Например

((y>10) && (k<= a))

На языке С# условный оператор имеет вид:

Разработка линейных алгоритмов. - student2.ru

Оператор условия может быть вложенным.

Задачи

1. Если введенное значение переменной a равно7, то на экране мы увидим слово Привет!Если не равно — то на экран ничего выводится не будет.

2. Пример без фигурных скобок, объяснение.

3. Найти максимальное из трех чисел.

4. Сумма покупки составляета рублей. Если а больше 1000 рублей, то предоставляется скидка 15%. Вывести на экран сумму покупки с учетом скидки либо сообщение о том, что скидка не предоставляется.

5. Проверить, принадлежит ли число введенное с клавиатуры, интервалу (-5;3)

Дано двузначное число. Определить:

· входит ли в него цифра 3

· входит ли в него цифра а

Оператор ветвления switch (оператор множественного выбора)

Оператор if позволяет осуществить выбор только между двумя вариантами. Для того, чтобы производить выбор одного из нескольких вариантов необходимо использовать вложенный оператор if. С этой же целью можно использовать оператор ветвления switch.

Общая форма записи

switch (целое выражение) {

case константа1: блок операций1;

break;

case константа2: блок операций2;

break;. . .

case константаn: блок операцийn;

break;

default: блок операций по умолчанию;

break;}

Оператор ветвления switch выполняется следующим образом:

· вычисляется целочисленное выражение в скобках оператора switch;

· полученное значение сравнивается с метками (константами) в опциях case, сравнение производится до тех пор, пока не будет найдена метка, соответствующая вычисленному значению целочисленного выражения;

· выполняется оператор соответствующей метки case;

· если соответствующая метка не найдена, то выполнится оператор в опции default.

Альтернатива default может отсутствовать, тогда не будет произведено никаких действий.
Опция break; осуществляет выход из оператора switch и переход к следующему за ним оператору. При отсутствии опции break будут выполняться все операторы, начиная с помеченного данной меткой и кончая оператором в опции default.

Задачи:

Циклические алгоритмы

Цикл – набор команд, который выполняется многократно.

Тело цикла – последовательность выполняемых команд.

Параметр цикла – переменная управляющая выполнением цикла. Параметр изменяет свое значение при каждом прохождении тела цикла.

Шаг цикла — это значение, на которое будет увеличиваться или уменьшаться счетчик цикла при каждом проходе.

1. Цикл с предусловием.

Блок схема:

Разработка линейных алгоритмов. - student2.ru Сначала проверяется условие, если оно истинно, то выполняется тело цикла, затем условие проверяется снова и так до тех пор, пока условие не станет ложным.

while(условие)

{

Блок команд

}

Пример. Напечатать квадраты чисел от 1 до 10. Здесь переменная i является параметром цикла, она участвует в условии и она же изменяется при каждом прохождении тела цикла.

int i=1;

While (i<=10)

{

Console.WriteLine( i*i);

i = i +1;

}

Еще пример. Найдем сумму чисел от i до k.

int k=5;
int i=1;
int sum=0;
while(i <=k) {

sum = sum + i;

i++;
}

2. Цикл с постусловием

Разработка линейных алгоритмов. - student2.ru Сначала выполняется тело цикла, затем проверяется условие, если условие истинно, то тело цикла выполняется еще раз. И так до тех пор, пока условие не станет ложным.

do
{
тело цикла
}
while (условие);

Пример. Напечатать квадраты чисел от 1 до 10.

int i=1;

do

{ Console.WriteLine( i*i);

i = i +1;

}

while (i<=10)

Поскольку условие проверяется после выполнения тела цикла, то тело цикла с постусловием всегда будет выполнено хотя бы один раз, независимо от истинности условия.

3. Цикл с заданным числом повторений (параметрический цикл)

Разработка линейных алгоритмов. - student2.ru

for (Параметр = НачЗн; Условие; Шаг)

{

Тело цикла;

}

Условие проверяется перед каждым повторением тела цикла. Если оно истинно, то тело цикла выполняется и так до тех пор, пока параметр цикла будет удовлетворять условию.

Пример. Напечатать квадраты чисел от 1 до 10.

int i;

for(i=1;i<=10;i=i+1)

{ Console.WriteLine( i*i);

}

Оператор break делает принудительный выход из цикла, даже когда условие цикла — истинно. Оператор break удобно использовать, когда необходимо выйти из цикла при особых обстоятельствах. Оператор continue нужен если необходимо пропустить какой-то блок кода, но при этом не прекращать работу цикла.

Упражнения:

1. Найти сумму четных чисел от 1 до 100

2. Вывести все числа от 1 до 100 кратные пяти

Наши рекомендации