Лабораторная работа
Условный оператор и циклы Варианты заданий
Выполнить задания 1-3 по предложенным вариантам:
|
№ Задания | ||
|
1 |
2 |
3 |
Вариант 1 |
1.I |
2.I |
3.I |
Вариант 2 |
1.II |
2.II |
3.II |
Вариант 3 |
1.III |
2.III |
3.III |
Вариант 4 |
1.I |
2.II |
3.II |
Вариант 5 |
1.II |
2.I |
3.III |
Вариант 6 |
1.III |
2.II |
3.I |
Вариант 7 |
1.I |
2.III |
3.I |
Вариант 8 |
1.I |
2.I |
3.II |
Вариант 9 |
1.II |
2.III |
3.I |
Вариант 10 |
1.III |
2.I |
3.III |
Задание 1.
Пользователь вводит значения x, a, b, c (a, b, c - действительные числа). Вычислить значения функции F:
F={
1/(a*x)-b, при (x+5)<0 и c=0;
(x-a)/x, при (x+5)>0 и c!=0;
10*x/(c-4) - в остальных случаях
}
F={
a*x^2+b*x+c, при a<0 и c!=0;
-a/(x-c), при a>0 и c=0;
a*(x+c) - в остальных случаях
}
F={
-a*x-c, при c<0 и x!=0;
(x-a)/-c, при c>0 и x=0;
b*x/(c-a) - в остальных случаях
}
Задание 2.
Пользователь вводит натуральное число n. Вычислить сумму первых 2n членов ряда , с учетом, что при суммировании исключается каждый 3-й член.
Пользователь вводит натуральное число n. Вычислить сумму первых n членов ряда , с учетом, что при суммировании исключается каждый 4-й член.
Пользователь вводит натуральное число n. Вычислить сумму первых n членов ряда , с учетом, что при суммировании исключается каждый 5-й член.
Задание 3.
По данному натуральному n вычислите сумму: 1+1/2!+1/3!+…+1/n!;
По данному действительному числу a и натуральному n вычислите сумму 1+a+a2+...+an не используя формулу суммы геометрической прогрессии.
По данному натуральному n вычислите сумму 1+(1+2)+(1+2+3)+...+(1+2+...+n).
Методические указания
Оператор if
Условный оператор if используется для разветвления процесса вычислений на два направления
Формат оператора:
if ( логическое_выражение ) оператор_1; [ else оператор_2; ]
Сначала вычисляется логическое выражение. Если оно имеет значение true, выполняется первый оператор, иначе — второй. После этого управление передается на оператор, следующий за условным. Ветвь else может отсутствовать.
Если в какой-либо ветви требуется выполнить несколько операторов, их необходимо заключить в блок. Блок может содержать любые операторы, в том числе описания и другие условные операторы, но не может состоять из одних описаний.
Примеры условных операторов:
if ( a < 0 ) b = 1; // 1
if ( a < b && ( a > d || a == 0 ) ) b++; else { b *= a; a = 0; } // 2
if ( a < b ) if ( a < c ) m = a; else m = c;
else if ( b < c ) m = b; else m = c; // 3
if ( b > a ) max = b; else max = a; // 4
Если требуется проверить несколько условий, их объединяют знаками логических условных операций. Например, выражение в примере 2 будет истинно в том случае, если выполнится одновременно условие a < b и одно из условий в скобках. Оператор в примере 3 вычисляет наименьшее значение из трех переменных. Обратите внимание, что компилятор относит часть else к ближайшему ключевому слову if.
Полный синтаксис оператора if выглядит следующим образом:
if(выражение_1) оператор_1
else if(выражение_2) оператор_2
…
else if(выражение_K) оператор_K
else оператор_N
Логические выражения if заключаются в круглые скобки и имеют значения true или false. Каждый из операторов может быть блоком, в частности, if-оператором. Поэтому возможна и такая конструкция:
if(выражение1) if(выражение2) if(выражение3) …
Ветви else if, позволяющие организовать выбор из многих возможностей, могут отсутствовать. Может быть опущена и заключительная else-ветвь. В этом случае краткая форма оператора if задает альтернативный выбор - делать или не делать - выполнять или не выполнять then-оператор.
Семантика оператора if проста и понятна. Выражения if проверяются в порядке их написания. Как только получено значение true, проверка прекращается и выполняется оператор (это может быть блок), который следует за выражением, получившим значение true. С завершением этого оператора завершается и оператор if. Ветвь else, если она есть, относится к ближайшему открытому if.