Материал: Лекции по информатике учебнометодическое пособие

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

Вопросы для самопроверки по теме 6

Задание№1.Перечислитеосновныесвойстваалгоритма.Задание № 2. Приведѐн алгоритм процедуры «ABCD» в псевдокоде:НачатьПисать ("Введите "A,B,C,D")Читать(A,B,C,D)Если A=B тоЕсли С<В тоХ:=1ИначеХ:=2ИначеХ:=3КонецЗапишитеэтоталгоритмматематическимязыкомнабумаге.Задание№3.Определите,какимибудутзначенияХиYна выходеизэтогоалгоритма:X=0Задание№4.ОпределитезначениепеременнойDпослевыполненияалгоритма(mod(х,у)–целый остатокот деления):k=70Выборпри mod(k,12)=7: D:=kпри mod(k,12)<5: D:=2при mod(k,12)>9: D:=3иначеD:=1ВсѐЗадание№5.Прикакойорганизациицикламожетслучиться,чтоте-лоцикланевыполнитсяниразу.Задание № 6. Представлен фрагмент программы:Y:=X+5;X:=Y;Y:=X+Y;выводYОпределитезначениепеременнойХпередвходомвэтотфрагмент, если известно, что после выполнения этого фрагмента пе-ременнаяYприняла значение14.Задание№6.Укажитевариантописания,соответствующийциклуспостусловием:

  1. пока условие истинно, выполнять оператор;

  2. выполнять оператор, пока условие ложно;

  3. выполнять оператор заданное число раз;

  4. если условие истинно, выполнять оператор, иначе – остано- виться.
Задание№8.Определите,сколькоразтелоциклавыполняетсявпредставленномфрагменте:B

:= 10; D := 40

Начало цикла: пока D >= B D := D – B

Конец цикла.

Задание№ 9. Определите вид вывода результатов в предложенном фрагменте программы:

X:=5 Z:=7

вывод ("X=",X," X=",Z,Z+X) 1. X=5 X=712

2. "X=",5," X=",7,12

3. X=5 X=7 12

4. "X=",X," X=",Z,Z+X

7. ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ


    1. Основные технологии программирования
При разработке компьютерных моделей для задач, решаемыхпосложнымигромоздким алгоритмам, получаютсядлинныепро-граммы, которые очень сложно отлаживать и тестировать. Для облег-чения этих работ были разработаны разные технологии программи-рования, которые упрощают структуру программы и ее отладку. Ос-новныеизних:
  • модульное программирование;

программирование «снизу вверх» (восходящее программи-рование);

– программирование «сверху вниз» (нисходящее программи- рование).

Согласно этим технологиям в алгоритме задачи выделяютсямодули. Модуль – это либо логически законченный фрагмент общейзадачи, либочастоповторяющийсяблокрасчѐтов.Каждыймодульоформляетсяпоопределѐннымправиламввидеподпрограммы,ивтекстосновногоалгоритмавместонеговставляется короткая инструкция вызова подпрограммы. Когда вы-полнениепрограммыдоходитдоэтойинструкции,выполняетсяфрагмент, заложенный в тело подпрограммы, после чего управлениепередаѐтся на команду, следующую за инструкцией вызова подпро-граммы.Различаютподпрограммыфункции(используютсякакопе-ранды в выражениях) и процедуры (используются как операторы).Общуюструктуруподпрограммможно

представить следующим об-





разом:

Телоподпрограммы – это операторы, которые программируют

ту часть алгоритма, которая выделена в данный модуль. Формальныепараметры – это те переменные в теле подпрограммы, значения ко- торых надо будет перед началом работы этого модуля получить из основной программы.

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

Пример. Дан массив целых чисел {ai},i=1, 2, ..., 15. Программа должна вычислять произведение двух сумм некоторых элементов массива {ai}. Так как операции, которые следует выполнить для сум- мирования, не зависят от конкретных значений используемых чисел, алгоритм суммирования, чтобы не повторять его дважды, можно оформить в виде подпрограммы. Поскольку по условию задачи ко- нечным результатом должно быть произведение сумм, а не каждая из них по отдельности, подпрограмму можно оформить по типу подпро- граммы-функции. Алгоритм, по которому будет составляться про- грамма, представляем в псевдокоде:

Функция СУММА(i1,i2) начало: s= 0

начало цикла для i = i1 до i2 s= s+ a(i)

конец цикла СУММА = s

Конец функции

Начало программы

вывести на экран("введите значения массива А") начало цикла для j= 1 до 15

ввести с клавиатуры а(j) конец цикла

вывести на экран ("введите границы индексов первой


суммы") суммы")
ввести с клавиатуры g,w

вывести на экран ("введите границы индексов второй
ввести с клавиатуры t,l

р:= СУММА(g,w) * СУММА(t,l)

вывести на экран ("произведение равно", р)

Конец программы

В программу введены константы: g= 1; w= 12; t= 8; l= 15. Это – фактические параметры, которые надо использовать вместо формальных параметров i1 и i2 при вычислении значения p. В ре- зультате переменная p примет значение произведения сумм элемен- тов с 1 по 12 и с 8 по 15 из массива {ai}.

При использовании технологии «сверху вниз» разработка про- граммы начинается с последовательной детализации алгоритма на
всѐ более мелкие части до тех пор, пока получатся такие модули, длякоторых можно написать конкретные команды. Затем составляетсятекст основной программы, в которой вместо фрагментов, выделен-ных в подпрограммы, ставят «заглушки». Это подпрограммы, в кото-рых вместо реально нужных операторов ставят сигнальные печатиили ввод результатов, которые должна была сосчитать эта подпро-грамма. Таким образом проверяют и отлаживают последовательностьдействий в основном алгоритме. Затем подпрограммы-заглушки поочередизаменяютнасоответствующиеалгоритмуподпрограммы,отлаживают и тестируют их. Такая технология облегчает созданиепрограммы, уменьшает количество ошибок и облегчает нахождениедопущенныхошибок.Считается,чтопрограммаоптимальногопоразмераммодуляцеликомдолжнапомещатьсянаэкранедисплея.При использовании технологии «снизу вверх» в первую оче-редь определяются и разрабатываются вспомогательные модули, ко-торые потребуются для проектируемой программы. После того, каквсе модули отлажены, из них, как из кубиков, в соответствии с на-
чальнымалгоритмомсобираетсяосновнаяпрограмма.
    1. 1   ...   29   30   31   32   33   34   35   36   ...   45
Источник: https://files.student-it.ru/previewfile/157483