Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по Информатике.doc
Скачиваний:
4
Добавлен:
26.09.2019
Размер:
3.12 Mб
Скачать
  1. Print*, ' введите значение X '

read*, X

if(X.LT.0) go to 6

K1=K1+1

if(X.GT.0) go to 11

K=K+1

go to 12

  1. S=S+X

print*, ' значение Х= ', X

go to 12

  1. S1=S1+1

  2. i=i+1

if(i.LE.N) go to 4

SA=S1/K1

print*,' K=', K, ' S=', S, ' SA=', SA

stop

end

Другая форма записи логического оператора в общем виде выглядит так:

if(логическое условие) then

<группа операторов>

else

<группа операторов>

end if

В сокращённом виде:

if(логическое условие) then

<группа операторов>

end if

Предыдущая программа с использованием такого оператора запишется:

K=0

K1=0

S=0

S1=0

print*, ' ВВЕДИТЕ ЗНАЧЕНИЕ N '

read*, N

i=1

  1. Print*, ' введите значение X '

read*, X

if (X.LT.0) then

S=S+X

print*, ' значение Х= ', X

else

K1=K1+1

if(X.GT.0) then

S1=S1+1

else

K=K+1

еnd if

end if

i=i+1

if (i.LE.N) then

go to 4

end if

SA=S1/K1

print*,' K=', K, ' S=', S, ' SA=', SA

stop

end

Рассмотренные операторы называются операторами управления.

При размещении представлений блоков в программе следует:

а) начинать представлять блоки от начала блок-схемы, записывать представления блоков в той же последовательности, которая определяется соединяющими блоки линиями потока;

б) при наличии разветвлений расчленять блок-схему на отдельные цепи блоков, к которым применять вышеуказанное правило;

в) заканчивая представление цепи блоков, проверять, не требуется ли дополнить его оператором безусловного перехода;

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

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

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

КОНТРОЛЬНЫЕ ЗАДАНИЯ

Ответить на вопросы:

а) Как будет выполняться первый вариант программы для алгоритма, изображённого на рис. 2.3, если изъять оператор GOTO 12 ?

б) Почему начальные операторы всех представляемых цепей блоков, кроме первой, обязательно помечаются ?

ОТВЕТ К КОНТРОЛЬНОМУ ЗАДАНИЮ I.III

Для построения алгоритма с циклом требуется дополнительная переменная - параметр цикла, представляющая номер I рассматриваемого значения, изменяющийся от 1 до 4 (рис.2.4). До цикла этой переменной должно быть задано исходное значение (инструкцией I = 1 ).

Домашнее задание по лабораторной работе №2

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

  2. Для указанного преподавателем пункта табл. 1.3 составить блок-схему алгоритма следующей задачи.

Пусть переменная К последовательно принимает N значений: эти исходные значения поочередно вводятся. Требуется подсчитать количество значений, удовлетворяющих условию, указанному в табл.1.3, и отпечатать значения, не удовлетворяющие этому условию. Величины целого типа J, L, M заданы и таковы, что J<L<M, причем J < -1.

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

УКАЗАНИЯ К ВЫПОЛНЕНИЮ ДОМАШНЕГО ЗАДАНИЯ

  1. Следует уяснить, что любой пункт табл.1.3 предлагает единственное результирующее значение - количество значений Х, удовлетворяющих заданному сложному условию.

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

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

Рис. 2.4.

Таблица 1.3.

N Какие значения следует подсчитывать

варианта

  1. Не равные нулю и притом меньше М по абсолютной величине.

  2. Те, абсолютная величина которых равна L или М.

  3. Те, что больше L и притом не равны М.

  4. Отрицательные, но не меньше, чем J.

  5. Меньшие J и те, которые удовлетворяют условию L=¦К¦=M.

  6. Меньшие L и те, что больше М.

  7. Не равны нулю значения, удовлетворяющие условию J<K<L+M.

  8. Равные нулю значения и те, для которых¦К¦>L.

  9. Не равные нулю или L значения и притом не больше, чем М.

  10. Большие, чем М, и те, которые удовлетворяют условию J<K<M-L.

  11. Те, абсолютная величина которых меньше М, но не равна L.

  12. Равные J и те из положительных значений, которые не равны L.

  13. Положительные, но не превышающие суммы L+M.

  14. Равные J и те, которые удовлетворяют условию L=K=M.

  15. Отрицательные, притом большие, чем J-L, но не равные J.

  16. Равные какой-либо из величин J, L, M.

  17. Положительные и притом не равные сумме L+M.

  18. Равные нулю и те из положительных, которые не равны ни L, ни М.

  19. Меньшие, чем L, и притом не равные J или -М.

  20. Те, абсолютная величина которых не равна ни L, ни M-L.

  21. Большие, чем L, но не превышающие суммы L+M.

  22. Отрицательные и те из положительных, которые больше суммы

L+M.

  1. Не равные нулю, но не меньше, чем J.

  2. Меньшие L и те, которые удовлетворяют условию L<K².

  3. Не равны ни J, ни L, ни М.

  4. Меньшие, чем J, а также равные нулю или L.

  5. Те, абсолютная величина которых больше М, но меньше суммы

L+M.

  1. Те, которые, будучи увеличены на 5, имеют абсолютную величину,

находящуюся в пределах от L до М или равны сумме L+M.

  1. Находящиеся в пределах от J до -1 и те, абсолютная величина

которых больше суммы L+M.

  1. Каждое значение, не считая первого и последнего, которое больше

ближайшего предыдущего, но меньше ближайшего последующего.