Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Программирование на C#. Часть 1. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
B = Convert.ToDouble (Console.ReadLine ());
C = Convert.ToDouble (Console.ReadLine ());
Console.WriteLine ("Исходные данные");
Console.WriteLine ("A = {0}, B = {1}, C = {2}", A, B, C);
if (A > B)
{
Z = A;
}
else Z = B;
if (C > Z) Z = C;
Z =Math.Sqrt (Z);
Console.WriteLine ("Квадрат максимального числа");
Console.WriteLine ("Z = {0:f1}", Z);
Console.Read();
}
Пример 2. Вычислить корни квадратного уравнения общего вида a ≠ 0,
2
ax
+ bx + c = 0 в области действительных чисел.
Введём следующие обозначения: а, b, с – коэффициенты уравнения;
D – дискриминант; х1, х2 – корни, е – допустимая погрешность вычислений.
Схема алгоритма определения вещественных корней квадратного урав-
нения представлена на рис. 2.5.
Программа, соответствующая схеме алгоритма, имеет вид:
{ /* ОПРЕДЕЛЕНИЕ КОРНЕЙ КВАДРАТНОГО УРАВНЕНИЯ */
Doublea, b, c, x1, x2, d;
a = Convert.ToDouble (Console.ReadLine ());
31
Д
Д
5
Корни
мнимые
Начало
1
ε = 1Е – 4
2
Ввод
(a, b,c,)
3
d =b2 – 4ac
а
4
d < 0
Нет
6
а
| d | <ε
7 8
x1 : = –b / (2a) x2 : = x 1
x2:
Нет
=
2,1
±−
db
a
9 Печать
(x)
Конец
Рис. 2.5. Структурная схема алгоритма
b = Convert.ToDouble (Console.ReadLine ());
c = Convert.ToDouble (Console.ReadLine ());
Console.WriteLine ("a = {0}, b = {1}, c = {2}", a, b, c);
32
d = Math.Sqrt(b) - 4*a*c;
if (d< 0)
Console.WriteLine ("Корни мнимые");
else
{
if (Math.Abs(d) == 0)
{
x1 = -b/(2*a);
x2 = x1;
}
else
{
x1 = (-b + Math.Sqrt(d))/(2*a);
x2 = (-b - Math.Sqrt(d))/(2*a);
Console.WriteLine("x1 = {0:f2}, x2 = {1:f2}", x1, x2);
}
}
Console.Read();
}
Пример 3. Найти остаток от деления знач
С = К ∗ (А +
В) на 4 и вывести сообщение о величине остатка. Если остаток
ения целого выражения
равен 0, то значение переменной С оставить без изменения, если 1 или 3 –
уменьшить на величину остатка, если 2 – увеличить на величину остатка. Но-
вое значение С также вывести на печать (оно делится на 4 нацело).
Схема алгоритма решения зад
введены
дополнительные обозначения: DEL – делитель, равный 4, OST – ве-
ачи представлена на рис. 2.6. В алгоритме
личина остатка, описанная как переменная ограниченного целого типа.
33
Начало
2
DEL = 4
1
Ввод
и печать
А, В, К
2
С = К⋅ (А + В)
3
OST = C %DEL
Определение остатка
и значения С
Остаток 0
4
OST
02 13
5 6 7
Остаток 2
8
С = C + OST
10
С
Остаток 1,3
9
С = C – OST
34
Конец
Рис. 2.6. Структурная схема алгоритма
Программа, соответствующая схеме алгоритма, имеет вид:
{
/* определение остатка */
const int del = 4;
int a, b, c, k; int ost;
a = Convert.ToInt32 (Console.ReadLine ());
b= Convert.ToInt32 (Console.ReadLine());
k = Convert.ToInt32 (Console.ReadLine());
Console.WriteLine ("a = {0}, b = {1}, k = {2}", a, b, k);
c =k*(a + b);
ost = c % del;
switch (ost)
{
case 0: Console.WriteLine ("octatok 0");
break;
case 2:Console.WriteLine ("octatok 2");
c = c + ost;
break;
case 1:Console.WriteLine ("octatok 1");
c = c - ost;
break;
case 3:Console.WriteLine ("octatok 3");
c = c - ost;
break;
}
Console.Read();
}
Пример 4. Составить схему алгоритма и
записать программу вычисле-
ния сложной функции при заданных значениях переменных a, b, x.
35
⎧ ⎪ ⎪ ⎪
=
y
⎨
ln
⎪ ⎪ ⎪ ⎩
22
)(
+
1
x
+
ba
xba
,0,
<
xесли
+
a
222
,0,)(
=+
xеслиba
,10,
<<
22
22
xесли
.1,)(
≥+
xеслиbax
Схема алгоритма решения задачи представлена на рис. 2.7.
y+=
4
Начало
1
Ввод
(a, b, x)
2
6
2
Нет
Да Нет
2
y = c
5
x = 0
8
=
c
Да
xyln
c = a2 + b
Да
xc
1
a
3
x < 0
Вычисление функции
y = f (x, a, b)
7
x < 1
Нет
9
xcy =
36
10
Ввод
(y)
Конец
Рис. 2.7. Структурная схема алгоритма
Программа, соответствующая схеме алгоритма, имеет вид:
{
Double a, b, c, x, y=0;
a = Convert.ToInt32 (Console.ReadLine ());
b = Convert.ToInt32 (Console.ReadLine ());
x = Convert.ToInt32 (Console.ReadLine ());
c = a*a + b*b;
if (x < 0)
y = c*x/Math.Sqrt (Math.Abs(1 + a));
else
{
if (x == 0) y = c*c;
else
{
if (x< 1) y = Math.Log (x)/c;
else
y = Math.Sqrt(x*c);
}
}
Console.WriteLine (y);
Console
.Read();
}
37
2.4. ЗАДАЧИ ДЛЯ САМОСТОЯТЕЛЬНОГО РЕШЕНИЯ
=
⋅
=
⋅
1. Составьте схему алгоритма и программу вычисления площадей раз-
личных геометрических фигур:
⎧ ⎪ ⎪ ⎪
⎪
S
=
⎨ ⎪ ⎪ ⎪ ⎪
⎩
2.
Составьте схему алгоритма и программу вычисления площадей раз-
личных геометрических фигур:
⋅
ha
2
+
R
360
,1,
nеслиba
=
,2,
nесли
)(
hba
=
,3,
nесли
2
2
2
ϕπ
=π
,4,
nеслиR
=
.5,
nесли
3.
Составьте схему алгоритма и программу вычисления значения
функции:
⎧ ⎪
⋅
hP
⎪
2
⎪
⎪
=
S
⎨ ⎪ ⎪
2
⎪ ⎪
⎩
⎧ ⎪
[]
⎪ ⎪
y
=
⎨ ⎪ ⎪ ⎪
ln
ba
⋅
2
c
3
c
2
x
3sin
xa
⎩
,1,
kеслиlP
=
,2,
kесли
=π
,3,2
kеслиhR
kеслиlR
kеслиR
kеслиhR
=π
,4,
=π
,5,4
=α+π
.6),2(
xеслиcxbxa
<≤++
,21,
xеслиbxa
<≤⋅
,32,)sin(
xеслиcbxa
<≤++
,43,
<≤+
,54,
xесли
<≤+
.65,
xеслиce
4.
Составьте схему алгоритма и программу вычисления значения
функции:
38
⎧
<≤−
<
⎪
1
⎪
⎪
2
y
=
⎨
1
xприx
⎪
3
⎪
2
⎪
⎩
Найти остаток от деления целой части значения функции на 7 и в
5.
,105sin1
<≤+
xприx
,1510)cos1(
<≤
xприxtg
,2015
<≤
xприxctg
.2520
зависимости от его величины напечатать сообщение об одном из дней неде-
ли, пронумеровав их от 0 до 6.
Вычислить
6.
w
=
⎨ ⎩
7.
Составить программу для вычисления z = lп (b – y) /
⎧
xa
2
xa
xесли
;1ln
xесли
≥−
.1
yb −
. При
вычислении значения z предусмотреть проверку условия b – у = 0, так как
в случае выполнения его вычисление невозможно.
Определить, какая из двух точек М1(x1, y1) или М1(x2, y2) распо-
8.
ложена ближе к началу координат.
Определить, попадает ли точка М(x, y) в круг радиусом r с центром
9.
в точке (x0, y0).
Составьте программу определения номера минимального элемента
10.
из трех x
, x2, x3.
1
Составьте программу нахождения произведения двух наибольших
11.
из трех чисел x, y, z.
Даны три целых положительных числа a, b, c. Определив остаток К
12.
2
ba
от деления на 3 величины М, равной
M
+
=
, вычислите значение
c
функции:
⎧
2
⎪ ⎪
=
y
⎨ ⎪ ⎪ ⎩
3
(
2
π
++π+
2
1
)(
btg
ca
=π+−
,0
Kприba
=
,1
Kприcb
=+π+
.2
Kпри
39
13. Используя арифметический условный оператор, составить про-
≤
−
≤
+
грамму для вычисления значений функции:
14.
Записать последовательность операторов для решения задачи: зна-
чения переменных a, b и c поменять местами так, чтобы оказалось a ≥ b ≥ c.
,1,12
⎧
=
y
⎨ ⎩
15.
Используя оператор условного перехода, составьте программу оп-
xеслиx
>+
.1,1
xеслиx
ределения принадлежности точки Р с координатами (x, y) одной из заштри- хованных областей D1 и D2, не включая их границ (см. рис. 2.8).
y
y
D1
2
D1
3
b
2 b
–3
–2
0
D2
х
–a
0
–b
а) б)
Рис. 2.8. Принадлежность точки к заштрихованной области
16. Составить алгоритм и программу для нахождения значений функции:
,0,0,||
yxеслиyx
⎧
+
⎪
yx
⎪
=
),(
yxF
⎨ ⎪
arcsin
x
⎪ ⎩
y
>
,0,0,
yxеслиe
≥>
,0,0),(
yxеслиyxlg
<<−
.0,0,
yxесли
<>
х
D2
17.
Составить алгоритм и программу для вычисления значений функции:
kеслиx
=+
⎧ ⎪
2
y
=
⎨
3
⎪
2
3
⎩
40
,1,1sin2
kеслиxx
=−
,2,
kеслиx
=+
.3,1
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]