Как составить программу линейной структуры

Создайте базу данных для заданной предметной области (варианты заданий выдаются преподавателем).

База данных должна содержать:

— не менее 2-х таблиц, каждая из которых содержит не менее 10 записей;

— три простые запроса на выборку с различными условиями отбора и один итоговый запрос;

— простые формы для ввода данных по исходным таблицам и одну сложную форму;

— отчеты созданные на базе разработанных запросов, включая итоговый отчет.

Лабораторная работа №6. Алгоритмы

Программирование алгоритмов линейной структуры

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

1.1 Алгоритм и блок-схема

При решении задач на ЭВМ производится подготовительная работа, включающая в себя следующие этапы: математическая формулировка задачи, разработка алгоритма ее решения, запись программы и подготовка исходных данных. Если математическая формулировка задачи есть, то можно сразу начать с разработки алгоритма.

Лекция «Алгоритмы и программы линейной структуры»

1.2 Особенности языка Турбо Паскаль и структура программы

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

Для обозначения исходных данных и результатов вычислений (промежуточных и итоговых) употребляются переменные, имена (идентификаторы) которых могут быть не только буквами — a, b, X, Y и т.д., но и последовательностью символов вида x1, time, alfa2 и т.д., которые состоят из букв и цифр и начинаются с буквы. Ключевые слова – это множество имен, которые используются в языке для написания операторов и других конструкций.

Имена, применяемые пользователем для обозначения конструкция не должны совпадать с ключевыми словами. Список зарезервированных слов и перечень операций языка приведены в таблицах В1 и В2. Соответствующее исходное данное или результат вычисления называется значением переменной. Константы отличаются от переменной тем, что их значения не меняются в ходе выполнения программы. Числа записываются в десятичной системе, вместо запятой ставится точка: 0, -19, 0.27, 3.1415 и т.д.

К основным типам данных языка Паскаль относятся: вещественный (Real), целочисленный (Integer), логический (Boolean) и литерный (Char). Целые числа и числа с плавающей точкой могут быть представлены в различных формах (таблица В3).

Структура простейшей программы на Паскале приведена в таблице С1. В описательной части задается имя программы, все метки и константы, которые будут использоваться в программе, а также идентификаторы и тип переменных. Главной частью программы является ее исполнительная часть, то есть последовательность инструкций, которую должен выполнить компьютер. Эти инструкции принято называть операторами.

VBA. Программирование алгоритмов линейной структуры

Более сложные арифметические выражения строятся из операндов (констант и переменных), соединенных знаками арифметических операций. Кроме того, в выражении могут быть использованы круглые скобки и функции (таблица С2). Результатом расчета арифметического выражения является число. При составлении арифметических выражений должны соблюдаться следующие правила:

— два знака арифметических операций не должны стоять рядом;

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

1.3 Алгоритмы линейной структуры и используемые в них операторы

Алгоритм называется линейным, если все операции в нем выполняются последовательно друг за другом.

Оператор присваивания позволяет изменить текущее значение переменной. Вид оператора приведен в таблице D1. Вычисляется выражение, стоящее справа от знака » := » («присвоить»), полученный результат присваивается переменной, стоящей в левой части оператора. При этом старое значение, хранившееся в ней, безвозвратно пропадает. Например, Р:= 5; (в переменную Р запишется число 5).

Для ввода данных и вывода результатов используются процедуры ввода и вывода (таблица D1). Существуют форматный и бесформатный способы вывода.

1.4 Пример алгоритма и программы линейной структуры

Даны переменные a и b. Найти

При составлении алгоритма необходимо выделить однотипные выражения (здесь a 2 +b 2 ), которые достаточно посчитать один раз, а затем использовать результат вычислений. Желательно разбить сложные вычисления одного выражения на более простые (например, отдельно вычислить числитель и знаменатель дроби) для того, чтобы в алгоритме не было громоздких формул. На рисунке 1.1 представлен вариант блок-схемы алгоритма и программа.

Читайте также:
Как посмотреть открытые программы на маке
Program Primer1; Var a,b,c,z:real; Begin Write (‘Введите a и b’); Read (a, b); C:= sqr(a) + sqr(b); z:= sqrt (sqrt(c)) + sin(c) – 1/с; Write(‘Z=’, z:10:3) End.

Рисунок 1.1 — Блок-схема алгоритма и программа линейной структуры

Вычисление значения Z производится в следующей последовательности:

1) в блоке 2 вводятся исходные данные – значения a и b;

2) в блоке 3 вычисляется арифметическое выражение a 2 +b 2 и результат запоминается в переменной c;

3) в блоках 4-6 вычисляются первое слагаемое, числитель и знаменатель второго слагаемого;

4) в блоке 7 производится окончательный расчет Z;

5) в блоке 8 выводятся исходные данные и результат.

В программе действия блоков 3-7 записываются операторами присваивания, блоки 2 и 8 реализуются операторами ввода/вывода. Ввод осуществляется с запросом, поэтому сначала записан оператор Write, а затем Read. Вывод осуществляется форматным способом. Все переменные, участвующие в программе, объявляются в разделе Var ее описательной части.

1.5 Варианты заданий

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

1) 2)
3) 4)
5) 6)
7) 8)
9) 10)
11) 12)
13) 14)
15) 16)
17) 18)
19) 20)
21) 22)
23) 24)
25) 26)
27) 28)
29) 30)

1.6 Контрольные вопросы

1 Назовите основные этапы подготовки и решения задач на ПК?

2 Что такое алгоритмический язык?

3 Что такое алгоритм? Назовите основные свойства алгоритмов.

4 Что понимается под «блок-схемой»? Назовите элементы блок-схемы.

5 Опишите структуру простейшей Паскаль-программы.

6 Какие типы данных используются в Паскале?

7 Какой алгоритм называется линейным? Опишите оператор присваивания.

8 Каких правил следует придерживаться при составлении арифметических выражений?

9 Подумайте как можно представить в Паскале функции tg x, ctg x, lg x?

10 Какие операторы используются для ввода и вывода данных в Паскале?

11 Как осуществляется форматный и бесформатный выводы в Паскале?

12 Как осуществляется вывод с комментарием в Паскале?

Источник: studopedia.info

02. Линейный алгоритм

Любой алгоритм можно составить из нескольких базовых структур. Простейшей из них является линейная (следование).

Линейный алгоритм (следование) образуется командами, выполняемыми однократно в той последовательности, в которой они записаны.

Пример программы линейной структуры

Программа на языке Pascal

var a, b, c: integer;

2. Объявление переменных

3. Начало блока операторов

4. Ввод исходных данных

5. Вычисление по формуле

6. Вывод результата

7. Конец блока операторов

Чтобы составить программу линейной структуры.

    1. Определить, что является исходными данными, какие будут у них типы. Выбрать имена переменных.
    2. Определить, что является искомыми результатами, какие будут у них типы. Выбрать имена переменных.
    3. Определить, какие формулы связывают исходные данные с результатами.
    4. Если нужны промежуточные данные, определить их типы и выбрать имена вспомогательных переменных.
    5. Описать все используемые переменные.
    6. Записать алгоритм, который должен включать:
      1. ввод всех исходных данных;
      2. вычисления;
      3. вывод результатов.

      Ввод и вывод данных

      Для ввода данных в языке Pascal используются процедуры

      read(переменные); например, read(a, b, c);

      readln(переменные); например, readln(a, b, c);

      Для вывода данных в языке Pascal используются процедуры

      write(выражения); например, write(‘a =’, a, ‘b + c =’, b + c);

      writeln(выражения); например, writeln(‘a =’, a, ‘b + c =’, b + c);

      Процедуры readln и writeln отличаются от read и write тем, что после ввода/вывода производят перевод строки.

      Математические операции и функции

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

      Источник: sites.google.com

      Программирование алгоритмов линейной структуры

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

      1) ввести обозначения всех величин, участвующих в вычислениях;

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

      3) определить последовательность вычислений остальных переменных;

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

      5) написать по блок-схеме программу, заменяя блоки в блок-схеме на подходящие операторы языка программирования (в нашем случае язык программирования-QBASIC).

      Рассмотрим пример решения задачи программирования алгоритма линейной структуры.

      Задача 1. Написать программу вычисления значений следующих выражений:

      1) Во всех выражениях, значения которых требуется вычислить в задаче, присутствуют следующие величины (их обозначения как переменных оставляем такими же, как они выглядят в исходной формулировке задачи): y, z a, b, x.

      Читайте также:
      Как правильно пользоваться программой меркурий

      2) Переменные “a” и “x” заданы как исходные данные.

      3) Имея значения переменных “a” и “x” можно вычислить: сначала значение переменной “b”, затем переменной “z”, потом переменной “y”.

      4) Блок-схема решения задачи 1 изображена на рис. 1.

      Рис.1. Блок-схема решения задачи 1.

      5) По блок-схеме, представленной на рис. 1 напишем программу, заменяя блоки с записанными внутри них выражениями на подходящие операторы языка программирования QBASIC, соблюдая все правила формирования синтаксических конструкций и записи операторов (см. [1]). Программа решения задачи 1 представлена на рис.2.

      REM Задача 1 ‘ Блок 1

      INPUT “ Введите значение x: ”; x ‘ Блок 2

      INPUT “ Введите значение a: ”; a ‘ Блок 2

      b = 8.76 E-2 * x ‘ Блок 3

      z = TAN(( SIN(( 5.1 * b-a )/( 2*EXP( b+a )))+b )^2)^3 ‘ Блок 4

      y = LOG( z ) * ( a ^ 2.72 + EXP( a ))^3.1 ‘ Блок 5

      PRINT “ a=”; a ‘ Блок 6

      PRINT “ z=”; z ‘ Блок 6

      PRINT “ y=”; y ‘ Блок 6

      В программе решения задачи 1 (рис. 2) блок № 1 из блок-схемы (рис. 1) представлен оператором-комментарием REM, блок № 2 реализован с помощью двух операторов ввода INPUT, блоки с №3 по №5 реализованы операторами присваивания, блок № 6 — с помощью трех операторов вывода PRINT, блок № 7 представлен в программе оператором завершения программы END.

      Запуская программу из меню Run командой Start при а=2.5 и x=1.1, получим ответ. Ответ: a=2.5 z=1.006127E-10 y=-452803.2

      В приложении 1 приведены 30 вариантов задач на программирование алгоритмов линейной структуры.

      Программирование алгоритмов разветвленной структуры

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

      1) ввести обозначения всех величин, участвующих в вычислениях;

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

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

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

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

      Рассмотрим пример решения задачи программирования алгоритма разветвленной структуры.

      Задача 2. Написать программу вычисления значения функции y(x), заданной следующим выражением:

      1) Обозначения величин, указанных в исходной постановке задачи, оставляем такими же: “y” и “x”.

      2) Переменная, которая должна быть задана как исходное данное — “x”, искомый результат вычислений – переменная “y”.

      3) Имеются три возможные ветви вычислений, которые могут возникнуть в процессе решения задачи. Эти ветви соответствуют трем формулам, заданным в исходной постановке задачи и охватывают весь диапазон значений переменной “x”. Условия выбора формулы указаны в исходной постановке задачи.

      4) Блок-схема решения задачи 2 изображена на рис. 3.

      5) По блок-схеме, представленной на рис. 3 напишем программу, заменяя блоки с записанными внутри них выражениями на подходящие операторы языка программирования QBASIC, соблюдая все правила формирования синтаксических конструкций и записи операторов (см. /1/). Программа решения задачи 2 представлена на рис. 4.

      В программе решения задачи 2 (рис. 4) блок № 1 из блок-схемы (рис. 3) представлен оператором-комментарием REM, блок № 2 реализован оператором ввода INPUT. Блоки с №3 по №7, обеспечивающие выбор нужного направления расчетов и вычисления по выбранным формулам, реализованы с помощью оператора IF, внутри которого размещаются операторы присваивания, реализующие расчеты по выбранным формулам (блоки № 4, 6, 7). Блок № 8 реализован в программе оператором вывода PRINT, блок № 9 представлен в программе оператором END.

      В приложении 2 приведены 30 вариантов задач на программирование алгоритмов разветвленной структуры.

      Рис. 3. Блок-схема решения задачи 2.

      REM Задача 2 ‘ Блок 1

      INPUT “ Введите значение x: ”; x ‘ Блок 2

      y = x ^3 – 4 * x + 3 ‘ Блок 4

      ELSEIF x > 2 THEN ‘ Блок 5

      y = x ^2 + TAN( x ) ‘ Блок 6

      y = 0.1 * x + 4 ‘ Блок 7

      PRINT “ x= “ ; x ; “ y= ”; y ‘ Блок 8

      Рис. 4. Программа решения задачи 2

      ПРИЛОЖЕНИЕ 1

      Задания по теме «Программирование линейного вычислительного процесса»

      Напишите программу решения задачи. Для этого разберитесь в задании (табл.2) и выполните следующие операции:

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

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

      · составить алгоритм решения задачи, начертив блок-схему.

      Читайте также:
      Электронная ударная установка программа

      · напишите программу, включив в неё комментарий.

      Таблица 2. Варианты индивидуальных заданий

      Исходные формулы Дано Вывод
      1 a=36.1 a, z, y
      2 a=2.3 a, x
      3 a=0.1 z=0.2 x, a, b
      4 a=3.2 b=1.1 a, b, y
      5 b=10 b, y
      6 a=5.2 a, b, x
      7 a=1.8 x=0.12 x, k
      8 a=0.2 b=1.3 a, b, y
      9 b=1.8 b, x, y
      10 a=0.23 x, y, z
      11 a=1.2 b=0.98 m, a, b, y
      12 k=2.3 x, y, k
      13 a=2.3 b=0.2 a, b, y
      14 a=3 b=2 x, y, z
      15 a=3.5 x=0.2 a, b, y
      16 b=1 b, z, y
      17 b=1 x=2 b, x, y
      18 b=1 x=2 a, b, y, z
      19 a=5.3 b=1.2 a, b, y
      20 a=6 a, b, x
      21 a=1.5 x, a, b
      22 a=1 b=1.2 a, b, y
      23 a=1.5 b=0.5 a, b, z
      24 a=1.5 x=0.7 x, k
      25 a=1.5 b=0.5 a, b, y
      26 b=1 x, y, z
      27 a=10 b=1 a, b, y
      28 k=10 k, x, y
      29 a=3 x=5 a, b, y
      30 b=2.5 a, b, y

      ПРИЛОЖЕНИЕ 2

      Задания по теме «Программирование алгоритмов разветвлённой структуры»

      Составить алгоритм и программу вычисления значения функции. Запустить программу столько раз, чтобы отработать все выражения под фигурной скобкой в заданном алгоритме ветвления (табл.3). Вывести на экран комментарий к программе.

      Таблица 3. Варианты индивидуальных заданий

      Исходные формулы Дано Вывод
      1 x 2 4 12 y
      2 b 7 5 -2 y
      3 x 8 4 -1 1 y
      4 x 6 4 -2 1 y
      5 x 5 9 -7 2 y
      6 x 4 1 -7 y
      7 x 8 3 0 -1 y
      8 b 40 5 10 y
      9 x 1 3 10 y
      10 x 1 7 20 y
      11 t 50 10 -5 y
      12 x 4 2 -2 y
      13 x -15 10 90 y
      14 x 3 6 1 5 y
      15 x 1 3 -0.5 -3 y
      16 x 10 3 -3 -8 y
      17 x 5 3 43 y
      18 y 5 3 1 z
      19 x 0 7 4 z
      20 x 6 7.1 3 z
      21 x 37 30 21 p
      22 x 3 0.5 -2 -0.5 r
      23 x 8 4 0.3 f
      24 x 1 4 7 9 y
      25 x 0.5 4 8.5 -1 10 y
      26 x 3 1 -1 f
      27 t 7 -1 1 p
      28 x 2 -2 -11 f
      29 x 0.5 2.1 4 f
      30 x 11 15 7 f

      КОНТРОЛЬНЫЕ ВОПРОСЫ

      1. Технология подготовки и решения задачи на ЭВМ.

      2. Определение алгоритма, свойства алгоритма, формы его записи. Изображение блок-схем.

      3. Виды вычислительных процессов. Определение каждого вида.

      4. Определение системы, среды и языка программирования.

      5. Определение алфавита, синтаксиса, семантики языка программирования. Синтаксические элементы программы.

      6. Свойства языка Бейсик, его версии. Типы трансляторов. Режимы работы интерпретатора.

      7. Описание среды системы программирования алгоритмического языка QBASIC.

      8. Состав программы и формат программной строки.

      9. Символы языка QBASIC, слова языка QBASIC, правила их записи.

      10. Данные. Виды данных. Типы данных. Способы задания типов данных.

      11. Константы. Переменные. Массивы. Определение. Правила записи.

      12. Функции. Стандартные функции, функции пользователя. Правила записи и использования в программе.

      13. Выражения, операции. Определение, существующие виды.

      14. Арифметические выражения. Определение, правила записи и вычисления.

      15. Выражения отношения и логические выражения. Правила записи и вычисления.

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

      17. Оператор безусловного перехода (синтаксис, семантика). Метки в программе.

      18. Операторы условного перехода (синтаксис, семантика).

      БИБЛИОГРАФИЧЕСКИЙ СПИСОК

      1. Мочалин В.П., Жульнев В.В. Основы алгоритмического языка программирования QBasic. Курс лекций. Издание 2-е, перераб.: Учебное пособие. РХТУ им.

      Д.И.Менделеева, Новомосковский институт. Новомосковск, 2000.- 106 с.

      2. Бобровский С.И. Программирование на языке QBasic для школьников и студентов. “ДЕСС” “Инфорком-Пресс”. М.: 1999.-207 с.

      3. Каспер Э. Освоим QBasic играючи!-М.: Горячая линия-Телеком, Радио и связь, 1999.-264 с.

      ОГЛАВЛЕНИЕ

      Предисловие………………………………………………………… 3
      Этапы подготовки и решения задачи на ЭВМ……………..……… 4
      Алгоритм, его свойства и способы описания ………………….….. 6
      Виды вычислительных процессов……..…………………..……. 10
      Программирование алгоритмов линейной структуры.…………. 12
      Программирование алгоритмов разветвленной структуры……… 14
      Приложение 1. Задания по теме «Программирование алгоритмов линейной структуры»………..…………………………………. 17
      Приложение 2. Задания по теме «Программирование алгоритмов разветвлённой структуры»…….…………………………………… 22
      Контрольные вопросы……………………………………………… 26
      Библиографический список……………………………………….. 27
      Оглавление…………………………………………………………. 27

      МОЧАЛИН ВЛАДИМИР ПЕТРОВИЧ

      ТИВИКОВ АЛЕКСЕЙ СЕРГЕЕВИЧ

      МЕТОДИЧЕСКИЕ УКАЗАНИЯ И ЗАДАНИЯ ПО ИНФОРМАТИКЕ НА ТЕМУ “ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ ЛИНЕЙНОЙ И РАЗВЕТВЛЕННОЙ СТРУКТУРЫ ”

      Редактор Селивёрстова А.А.

      Лицензия ЛР N o 020714 от 02.02.98.

      Подписано в печать 20.03.01. Формат 60х84 1/16. Бумага типографская №2

      Отпечатано на ризографе. Усл. печ. л. 5.41. Уч.-изд. л. 5.98. Тираж 200 экз.

      Российский химико-технологический университет им Д.И Менделеева, Новомосковский институт

      Издательский центр университета

      Адрес института: 301670 Новомосковск, Тульской обл., ул Дружбы, 8

      Дата добавления: 2019-02-22 ; просмотров: 920 ; Мы поможем в написании вашей работы!

      Поделиться с друзьями:

      Источник: studopedia.net

      Рейтинг
      ( Пока оценок нет )
      Загрузка ...
      EFT-Soft.ru