Материал: Основы алгоритмизации вычислительных процессов. методические указания по курсу «Информатика» для студентов I-го курса всех специальностей. Авдеев В.П., Венгерова Г.Т

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

6

Начало

1

А, В, Х

2

С= (АХ+В)2

3

 

 

D =

A2

+ B2

4

y = CD

5

С, D, у

Конец

Рис 2.1

Пример 2. Найти сумму членов бесконечной геометрической прогрессии

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

+

1

1

+...

 

 

 

 

 

 

 

Начало

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

8

16

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Решение. Первый член геометрической

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

прогрессии x1=

 

1

, а значит знаменатель

 

1

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

x1 =

 

 

 

g = -

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

2

 

 

g = -

1

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

Сумма членов

бесконечной убываю-

 

 

 

 

 

 

 

 

x1

 

 

 

 

 

 

 

 

S =

 

 

 

 

щей

 

 

геометрической

прогрессии

 

 

 

 

 

1g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S =

 

x1

 

.

 

Эта формула используется

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

для решения задачи (рис.2.2).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S

 

 

 

Задание.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Самостоятельно обобщить алгоритм на

 

 

 

 

 

 

 

 

 

 

 

 

 

 

случай геометрической прогрессии с

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

произвольными

 

значениями х1 и g.

 

 

 

 

 

 

Конец

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис.2.2

7

Пример 3. Составить блок-схему алгоритма для нахождения координат центра масс трех точек, массы которых m1, m2, m3, координаты их 1, y1), (x2, y2), (х3, у3).

 

 

 

 

 

 

 

 

Начало

 

 

 

 

Решение. Формулы для определения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

искомых координат

 

 

 

 

 

 

 

 

 

 

m1,

m2, m3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m1 x1 + m2 x2 + m3 x3

 

 

 

 

 

 

 

 

x1, х2, х3, y1, у2, у3

 

 

 

 

x c =

,

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

m1 + m2 + m3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m1 y1 + m2 y2 + m3 y3

 

 

 

 

 

 

r = m1 + m2+m3

 

 

 

 

yс =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m1 + m2

+ m3

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и соответствующая

блок-схема изо-

 

 

 

 

 

 

 

m1 x1 +m2 x2 +m

 

x

 

 

 

 

 

xc =

3

3

 

бражена на рис.2.3.

 

 

 

 

 

 

 

 

r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

yc = m1 y1 +m2ry2 +m3 y3

5

xc, yc

Конец

Рис. 2.3

Пример 4. Тело брошено вертикально вверх с начальной скоростью v. Определить, через какое время тело достигает наивысшей точки и на каком расстоянии от земли.

Решение. Путь, пройденный телом, можно определить из уравнения

Начало

1 v

2 t=v/g

3

S=vt-gt2/2

4 t, S

Конец

Рис.2.4

S = vt -

gt2

,

(1)

2

 

 

 

где v - скорость, g - ускорение свободного падения, t - время движения тела. Дифференцируя путь по t , получаем ско-

рость

ds

=v - gt.

dt

 

 

В момент, когда тело достигает наивысшей точки, скорость его равна 0. Следова-

тельно, v - gt=0, откуда t = v g . Зная t ,

можно определить расстояние, пройденное телом за это время. Таким образом, получены две формулы, необходимые для решения данной задачи.

8

Эти формулы определяют численный метод решения, алгоритм которого приведен на рис.2.4.

Пример 5. Ангар длиной l имеет поперечное сечение в форме полукруга радиуса r (рис.2.5). Составить алгоритм вычисления площади поверхности S и объема V ангара.

 

 

 

 

Начало

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 r,

 

 

l, π

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

l

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S=π r (r+ l)

 

 

 

 

 

 

2r

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2.5

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

V=0,5πr2l

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Математическая формулировка решения

 

 

 

 

4 S, V

 

 

 

 

(построение математической модели задачи)

 

 

 

 

 

 

 

 

Площадь поверхности ангара S складывается из поло-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вины площади боковой поверхности кругового цилин-

 

 

 

 

Конец

 

 

 

 

дра и удвоенной площади полукруга:

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2.6

S =

1

(2πrl)+2 (

1

 

πr 2 ) =πr( r + l ),

 

 

 

 

 

 

 

 

 

 

 

2

2

 

 

 

 

 

 

 

 

а объем V равен половине объема кругового цилиндра:

V= 12 (πr 2l ).

Исходными данными для вычислений являются числовые значения переменных r, l (рис 2.6).

Пример 6. Строящийся животноводческий комплекс K будет обслуживать жителей трех деревень X ,Y, Z. Заботясь об удобствах жителей, решено построить его на одинаковом удалении от центров этих деревень. Расстояния между деревнями соответственно a,b,c (рис.2.7). Составить алгоритм для

вычисления расстояния r

от деревень до животноводческого комплекса.

 

X

 

Математическая формулировка решения

 

 

 

Центры

деревень являются

вершинами

a

 

 

треугольника, а центр животноводческого

 

 

комплекса - центром описанной вокруг не-

 

r

b

 

го окружности. Радиус этой

окружности

 

K

 

r

 

выражается формулой

 

 

 

 

Z

 

r

r = abc

2a2b2 + 2a2 c2 + 2b2 c2 a4 b4 c4 .

cСхема алгоритма приведена на рис. 2.8. Вычисление значения r по достаточно

Рис.2.7

Y громоздкой формуле в алгоритме заменено

 

тремя последовательно выполняемыми бо-

 

лее простыми операциями с использовани-

Начало

1

a, b, c

2

r = a2+b2+c2

3

r = r2 -2(a4+b4+c4)

4

 

r = abc

r

5

r

Конец

9

ем промежуточных переменных, которые могут быть обозначены любыми буквами. Однако при переходе от алгоритма к программе объем занимаемой памяти будет тем больше, чем больше различных переменных используется в алгоритме. Поэтому алгоритм и программу целесообразно составлять, используя последовательные присвоения изменяющихся значений одним и тем же переменным. В алгоритме на рис.2.8 такой подход позволяет обойтись

в процессе вычислений одной промежуточной переменной r.

Рис. 2.8

Контрольные вопросы и упражнения

1.Дать определение линейного вычислительного процесса.

2.Каким образом представляется на блок-схеме линейный вычислительный процесс?

3.Составить блок-схему вычисления следующих выражений:

 

 

 

а)

 

P =

NK 2 M

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(K + L)2

 

 

вывести значения P, числителя и знаменателя;

 

 

 

 

б)

 

Y = AX 2 + B AB ,

 

 

вывести значения Y и подкоренного выражения.

 

4.

Составить блок-схему алгоритма для вычисления по формуле

 

Y =

sin(ax2

+bx +c) +2cos(ax2 +bx +c)

, где ax2 +bx +c 0 .

 

 

 

 

 

 

 

3

ax2 +bx +c

 

5.

Составить блок-схему

алгоритма для вычисления

длины окружности

 

L , если задана площадь соответствующего круга S .

 

6.

Составить блок-схему для чтения температуры в градусах Цельсия и печа-

 

ти ее в градусах

Кельвина, Фаренгейта, Реомюра

(T 0 K =T 0C +273,15;

 

T 0 R = 0,8T 0C;

T 0 F =1,8T 0C +320 ) .

 

7.Даны величины A и B . Найти их сумму, произведение, среднее арифметическое, среднее геометрическое. Составить блок-схему.

8. Даны две числовые величины A и B . Поменять местами содержимое ячеек, в которых они находятся:

а) с использованием вспомогательной ячейки;

10

в) без использования вспомогательной ячейки. Составить блок-схему.

9.Моменты инерции J твердых тел с массой m относительно оси вращения выражаются следующими зависимостями:

а) для сплошного однородного цилиндра с радиусом Rц :

J = 12 mRц2 ;

б) для полого цилиндра с внутренним радиусом R1 и внешним радиусом R2 :

J =

1

m( R2

+ R2

)

(считать в задаче 2R =R );

 

 

2

1

2.

 

1 2

 

 

 

 

 

в) для однородного шара с радиусомRш :

J = 52 mRш2 .

Составить блок-схему алгоритма для определения геометрических размеров указанных тел, если J и m известны и для всех тел одинаковы.

10. Для приготовления известково-цементного состава необходимо A% известкового теста, В% белого цемента, С% поваренной соли,D% пигмента, остальное составляет вода. Составить алгоритм для расчета необходимого количества воды F[кг] при приготовлении Q[кг] состава. Составить блок-

схему.

11. Цех централизованного приготовления малярной продукции за одну смену производит: синтетической шпаклевки A[т], шпатлевки масляной В[т], грунтовки глиноземной С[т], пасты меловой D[т], замазки меловой Е[т], масляных окрашивающих составов G[т], водно-масляной эмульсии Н[т]. Составить блок-схему алгоритма для расчета количества выпускаемой продукции за месяц, если в первую декаду цех работал в одну смену, вторую - в полторы смены, третью - в две смены. Результаты вывести на печать.

III. Разветвляющийся вычислительный процесс

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

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

логические блоки да

нет

или

x > y

 

 

x < y .

 

 

x > y

 

 

 

 

 

x : y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x = y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Источник: https://studfile.net/preview/16569448/