Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Оператор цикла с параметром (цикл for).



 

Оператор цикла for – это оператор цикла с заранее известным числом повторений. Существует 2 формы написания цикла for:

Общий вид:

1. for переменная: =выражение1 to выражение2 do оператор;

и

2. for переменная: =выражение1 downto выражение2 do оператор;

где

переменная называется параметром или счетчиком цикла.

оператор

выражение1 и выражение2 - начальное и конечное значение параметра цикла.

Действие оператора цикла типа to (прямой счет):

1. переменной присваивается значение выражения1;

2. проверяется условие: значение переменной больше значения выражения2?

3. если да, то цикл прекращается; если нет, то выполняется оператор, значение переменной увеличивается на единицу и далее действие повторяется, начиная с пункта2.

Действие оператора цикла типа downto (обратный счет):

1. переменной присваивается значение выражения1;

2. проверяется условие: значение переменной меньше значения выражения2?

3. если да, то цикл прекращается; если нет, то выполняется оператор, значение переменной уменьшается на единицу и далее действие повторяется, начиная с пункта 2.

 

Правила:

1. Параметром цикла может быть только целая переменная.

2. Параметр цикла не может явным образом меняться в теле цикла.

Например:

for i: =1 to 10 do

begin

a: =a+2;

i: =i+1; {неверно}

end;

3. Шаг цикла может быть равен только +1 (цикл с to) или –1 (цикл с downto).

4. В соответствии с общим видом тело цикла должно состоять из одного оператора, если операторов несколько, используем составной оператор и операторные скобки begin..end;.

5. Цикл может не выполниться ни одного раза.

 

Задание: Написать блок-схему и программу для расчета среднего значения n введенных с клавиатуры чисел.

program means;

var i, n: integer; x, s: real;

begin

write(‘Введите кол-во чисел’);

readln(n);

s: =0;

for i: =1 to n do

begin

write(‘Введите число номер’, i);

readln(x);

s: =s+x;

end;

writeln(‘Среднее значение =’, s/n);

end.

 

Оператор цикла с предусловием (while)

 

Оператор цикл while – это оператор цикла с заранее неизвестным числом повторений.

Общий вид:

while логическое выражение do оператор;

где

логическое выражение - это условие продолжения цикла.

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

Действие оператора:

1. вычисляется логическое выражение;

2. если оно истинно, то выполняется оператор, после чего все действия повторяются, начиная с пункта 1;

3. eсли логическое выражение - ложно, то цикл прекращается.

Правила:

1. Тело цикла должно состоять только из одного оператора, если их несколько используем составной оператор.

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

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

Например:

a: =1;

while a< 100 do

begin

y: =sqrt(x*x-4);

z: =z+1;

a: =a+1;

end;

 

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

program tabl;

uses crt;

var x, xn, xk, y, h: real;

begin

clrscr;

writeln('Введите начальное, конечное значение х и шаг изменения х');

read(xn, xk, h);

writeln('| x | y |');

x: =xn;

while x< =xk do

begin

y: =x*x+1;

writeln('|', x: 7: 2, '|', y: 7: 2, '|');

x: =x+h;

end;

end.

 

Оператор цикла с постусловием (цикл repeat..until).

Оператор цикла repeat..until - это оператор цикла с заранее неизвестным количеством повторений.

Общий вид:

Repeat

операторы;

until логическое выражение;

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

Действие оператора цикла repeat..until:

Операторы в теле цикла выполняются до тех пор, пока значение логического выражения FALSE; как только логическое выражение принимает значение TRUE, выполнение оператора цикла прекращается.

Правила:

1. Тело цикла всегда выполняется хотя бы один раз, так как условие стоит в конце цикла.

2. В этом операторе цикла нет надобности в составном операторе, все операторы в теле цикла ограничиваются ключевыми словами repeat..until.

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

program rep_unt;

uses crt;

var n, k, s: integer;

begin

clrscr;

s: =0;

write('Введите k');

read(k);

n: =1;

repeat

s: =s+2*n+1;

n: =n+1;

until n> k;

write('Суммаравна ', s);

end.

 

Массивы данных

Массив – это совокупность упорядоченных данных, имеющих одинаковое имя и тип, и отличающихся друг от друга номером (индексом). Массивы бывают одномерные и многомерные. Примеры массивов:

2 5 –15 10 20 – массив целого типа из 6 элементов;

-2.3 9 2.45 4.78 5.32 – массив вещественного типа из 5 элементов;

Иванов Иван Иванович – массив символов из 20 элементов;

 

Общий вид описания одномерных массивов:

var имя массива: array[начальное значение индекса.. конечное значение индекса] of тип;

где начальное значение индекса и конечное значение индекса - целые значения, задающие диапазон изменения индекса массива.

Например:

var vector: array[0..9] of real;

 

Общий вид описания многомерных массивов:

var имя массива: array[начальное значение индекса.. конечное значение индекса, ..., ...] of< тип>;

Например:

varmatrix: array[1..3, 1..5] ofinteger; - описание матрицы размером 3´ 5.

 

Доступ к элементам массива.

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

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

Например:

a[i], b[2, 3], v1[i+2, j+2], a[trunc(2*pi/T)]

 

 

БАЗЫ ДАННЫХ

Понятие базы данных

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

Такого рода информационная система требует создания в памяти ЭВМ динамически обновляемой модели рассматриваемой предметной области с использованием единого хранилища – базы данных (БД). Предметная область – часть реального мира, подлежащая изучению с целью организации управления и, в конечном счете, автоматизации. В состав каждой предметной области входит совокупность каких-либо объектов. Группы этих объектов, объединенных по какому-либо группировочному признаку, принято называть сущностями. Например, если речь идет об учете продукции на складе, то можно выделить сущности " товар", " покупатель", " накладная". Объектами будут их конкретные представители, например, сахар, ОАО " Гефест" , накладная №252.

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

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

В терминах баз данных строки таблицы называются записями, а ее столбцы полями. Все записи имеют одинаковую структуру — они состоят из одинаковых полей , в которых хранятся различные значения атрибутов объекта. Каждое полезаписи содержит одну характеристику объекта и имеет строго определенный тип данных (например, текстовая строка, число, дата). Все записи одной таблицы имеют одни и те же поля, только в них содержатся разные значения атрибутов.

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

Наименование полей Тип поля и размер
Имя покупателя Текстовый (30 символов)
Адрес Текстовый (40 символов)
Телефон Текстовый (12 символов)
Индекс Числовой (длинное целое)
Дата 1-го заказа Дата

Структура таблицы " Покупатель".

 

Имя покупатель Адрес Телефон Индекс Дата 1-го заказа
Геракл, ТОО 2-я Бауманская ул., 12 273-00-14 26.01.2006
Пищеторг, ЗАО Измайловский б-р, 18/11 165-18-99 7.05.2006
База №28 ул. Лесная, 1 245-76-03 19.08.2006

Кроме описания структуры таблиц в достаточно сложной базе данных нужно определить связи между таблицами. Связь – это ассоциация, устанавливаемая между двумя таблицами. Например, информация о покупателе в предыдущей таблице может дополняться другой таблицей " Отпуск товаров"

Имя покупатель Дата Товар Отпущено (ед.)
Геракл, ТОО 10.12.2006 Сахар
Геракл, ТОО 11.12. 2006 Сахар
Пищеторг, ЗАО 12.12. 2006 Сахар
Пищеторг, ЗАО 12.12. 2006 Макароны
Геракл, ТОО 14.12. 2006 Сахар
База №28 15.12. 2006 Дрожжи

Такие базы данных называются реляционными (от relation – связь, отношение). Реляционная база данных представляет собой множество взаимосвязанных таблиц, каждая из которых содержит информацию об объектах определенного типа.

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

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

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

Отношение один-к-одному имеет место, когда одной записи в родительской табли­це соответствует не более одной записи в дочерней таблице.

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

Связанные отношениями таблицы взаимодействуют по принципу главная (master) – подчиненная (detail). В нашем примере таблица " Покупатель" – главная, а таблица " Отпущено товаров" – подчиненная. Главную таблицу также часто называют родительской, а подчиненнуюдочерней. Одна и та же таблица может быть главной по отношению к одной таблице базы данных и дочерней по отношению к другой.

 

Системы управления базами данных (СУДБ). Классификация

Для работы с данными используются системы управления базами данных (СУБД). СУБД – это программные средства, предназначенные для определения данных (описания структуры баз данных – таблиц, связей), обработки и управления данными. ПримерыСУБД – FoxPro, Oracle, SQL-Server, Delphi, dBase, Clipper, MS Access идр.

Различают три основных вида СУБД: промышленные универсального назначения, промышлен­ные специального назначения и разрабатываемые для конкретного заказчика (заказные).

Специа­лизированныеСУБД создаются для управления базами данных конкретного назначе­ния – бухгалтерские, складские, банковские и т.д.

УниверсальныеСУБД не имеют четко очерченных рамок применения, они рассчитаны " на все случаи жизни" и, как следствие, достаточно сложны и требуют от пользователя специальных знаний.

В отличие от промышленныхСУБДзаказные в максимальной степени учиты­вают специфику работы заказчика (того или иного предприятия), их интерфейс обыч­но интуитивно понятен пользователям и не требует от них специальных знаний. С другой стороны, специализированные и универсальныепромышленныеСУБД относительно деше­вы, достаточно надежны (отлажены) и готовы к немедленной работе, в то время как заказныеСУБД требуют существенных затрат, а их подготовка к работе и отладка занимают значительный период времени (от нескольких месяцев до нескольких лет).

В зависимости от расположения СУБД различают локальные и распределенные (клиент-серверные) СУБД. Все части локальной СУБД размещаются на компьютере пользо­вателя базы данных. Если к одной БД по компьютерной сети обращаются несколько пользователей одновре­менно, каждый пользовательский компьютер должен иметь свою копию локальной СУБД. В отличие от этого значительная часть программно-аппаратных средств рас­пределенной СУБД централизована и находится на одном достаточно мощном ком­пьютере (сервере), в то время как компьютеры пользователей несут относительно небольшую часть СУБД, которая называется клиентом. Локальные СУБД могут рабо­тать в сети, но могут и не использовать ее, в то время как распределенные СУБД обязательно работают в компьютерной сети.

Заметим, что местона­хождение собственно базы данных никак не влияет на специфику СУБД: в локальных СУБД сама база данных может располагаться как на компьютере пользователя, так и на уда­ленном сетевом компьютере (файл-сервере).

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

СУБД является важнейшим компонентом информационной системы. Для создания и управления информационной системой СУБД необходима в той же степени, как необходим транслятор для разработки программы на алгоритмическом языке.

Основные функции, выполняемые СУБД:

- управление данными во внешней памяти (на дисках);

- управление данными в оперативной памяти;

- журнализация изменений и восстановлениебазы данных после сбоев;

- поддержание языков баз данных (язык определения данных – язык SDL, язык манипулирования данными – язык DML, или единый интегрированный язык, содержащий все необходимые средства для работы с БД – язык структурированных запросов SQL).


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-07-12; Просмотров: 903; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.052 с.)
Главная | Случайная страница | Обратная связь