Структурное программирование 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Структурное программирование



 

 

СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕ – это метод надежный, ясный, легкий для понимания программы путем составления ее из стандартных элементов (основных структур) в соответствии с набором правил облегчающих восприятие и сопровождение программы.

Логическая структура любого алгоритма может быть представлена в виде комбинации трёх основных структур:

4. Следование;

5. Развилка;

6. Цикл.

Каждая из этих структур является простым алгоритмом и обладает следующими свойствами:

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

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

Поток управления в такой программе направлен сверху вниз.

 

 

СТРУКТУРА «СЛЕДРВАНИЕ»

СЛЕДОВАНИЕ – это основная алгоритимическая структура.

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

 

Алгоритм структуры «Следование»:

 

 

                                                                             

                      

                                                                                                           Пример:

8) Постановка задачи.

Составить схему алгоритма и программу на языке программирования VB определения угла наклона B плоскости свободной поверхности бензина в железнодорожной цистерне движущейся равноускоренно с ускорением a.

9) Входные данные: a.

10) Выходные данные: B.

11) Математическая модель задачи:

, где g – ускорение свободного падения.

12) Алгоритм задачи:

 

 

                                                                                                        

13) Код приложения:

Private Sub Command1_Click()

Dim a As Single, b As Single

Const g As Double = 9.81

a = InputBox("Введите значение a")

b = Atn(-a / g)

TextB = Str(b)

MsgBox "B=" & b

End Sub

14) Отладка.

 

Примеры записи арифметических выражений:

Формула Запись на языке VB
D = -29,8 · 108 Const D As Double = -29.8*10^8
Q = sin(m + PI*R/2)
S = (a*b + a^2)^(1/2)/(a – cos(PI*x))

СТРУКТУРА «РАЗВИЛКА»

РАЗВИЛКА – это основная структура, предназначенная для выбора одного из двух путей вычислительного процесса в зависимости от некоторого условия.

 

Классическая «РАЗВИЛКА»

 

Алгоритм выглядит следующим образом:

 

                                                             

                                                                      

 

                            

 

                                                        

                                                         

 

                                                        

 

                  

 

В блоке n вычисляется некоторое логическое выражение, принимающее одно из значений «Да» – «Нет» (True – False). Если выражение Истинно, то выполняется действия блока (N +1), если выражение Ложно, то выполняется действия блока (N +2).

Обе линии потока выходящие из блоков (N + 1) и (N + 2) встречаются в узле «Слияние».

Таким образом, структура «Развилка» имеет единственный выход, но в зависимости от значения логического выражения (условия) будет выбрана одна из двух альтернатив (S1 и S2).

На языке VB структура описывается условным оператором (блочная форма):

IfV<условие>VThen

<оператор S1>

Else

<оператор S2>

EndVIf

Если в блоках n1 и n2 вычисляются значения одной функции, то может быть использована функция IIF.

<идентификатор> = Iif (<условие>, <выражение1>, <выражение2>)

Выражение 1 – true;

Выражение 2 – false.

Пример:

7) Постановка задачи:

8) Состав входных данных:

x.

9) Состав выходных данных:

y.

10) Математическая модель задачи:

11) Схема алгоритма:

 

 

                                                     

 

 

                                                         

 

                                                     

 

       

                                                     

                   

 

 

12) Код приложения:

Private Sub Command1_Click()

Dim x As Single, y As Single

x = InputBox("Введите x=")

If x > 0 Then

y = Cos(x) ^ 3

Else

y = -Sin(x ^ 2)

End If

MsgBox "y=" & y

End Sub

Строчная форма:

Y = Iif(x>0, cos(x)^3, -sin(x^2)).

2 – й строчный вариант.

Dim x As Single, y As Single

x = InputBox

If <условие> then <оператор>

{ Else <оператор> } – может отсутствовать.

Для нашего примера:

If x>0 then y = cos(x)^3 else y = -sin(x^2)

В строчной форме записи End if отсутствует.

Когда Else отсутствует:


                                                                                      

 

 

                                                                                                                  

 

 

If x>0 then y = x^(1/2).

В блоках (n + 1) и (n + 2) может быть несколько действий.

Такая структура «Развилка» называется модифицированной:

 


                                               

 

                                        

                                                                      

 

 

                                           

                                                                                                                  

 


Пример:                                                                    

Private Sub Primer_1 Click()

Dim x As Single, y As Single

x = InputBox(“Введите значение x = “)

If x>0 then

MsgBox “Вычисляется значение sin(x)”

Elseif x = 0 then

y = 0

Else

MsgBox “Вычисляется значение cos(x)”

y = cos(x)

End if

MsgBox “y =” & y

End Sub

 

 



Поделиться:


Последнее изменение этой страницы: 2020-12-09; просмотров: 109; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.35.77 (0.012 с.)