КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Системы управления БД и их состав⇐ ПредыдущаяСтр 11 из 11 Работа с БД сводится к выполнению следующих операций: 1) запись (заполнение базы); 2) просмотр; 3) редактирование (добавление, удаление, исправления); 4) выборка (запросы, отчеты). Эти операции накопления и манипулирования данными выполняет специальная программа – система управления БД (СУБД). СУБД – совокупность программных и языковых средств. 1) Языковые средства обеспечивают взаимодействие пользователя с БД. К ним относят: a) языки определения данных (ЯОД) – языки, предназначенные для создания схемы БД (описание типов данных, структуры базы, взаимодействия и связей элементов; b) языки манипулирования данными (ЯМД) – языки запросов к БД. Представляют собой систему команд (выборка, запрос, вставка, удаление и т. д.). 2) Программные средства обеспечивают организацию ввода, обработки и хранения данных и взаимодействие всех частей системы при ее функционировании (настройка, тестирование и т. д.). Современные СУБД включают в свой состав прикладные программы, позволяющие работать с БД неквалифицированному пользователю, который использует при взаимодействии с БД свой (человеческий) язык. 44)Схема взаимодействия пользователя с БД:
1) Общение на естественном языке 2) Общение на ЯОД и ЯМД Некоторые приемы программирования Приемы будут рассмотрены на примерах обработки одномерных числовых массивов в ЯП Pascal. Дан массив А[N] 1) Накопление суммы и произведения: … S:=0; P:=0; FOR I:=1 TO N DO BEGIN S:=S+A[I]; P:=P*A[I]; END; … 2) Нахождение MAX (MIN): … IMAX:=1; FOR I:=2 TO N DO IF A[I]>A[IMAX] THEN IMAX:=I; WRITELN(‘MAX=’,A[IMAX],’его номер’,IMAX); … 3) Удаление из массива К-го элемента: … FOR I:=K TO N-1 DO A[I]:=A[I+1]; N:=N-1; … 4) Вставка в массив нового элемента В на К-е место: … N:=N+1; FOR I:=1 DOWNTO K+1 DO A[I]:=A[I-1]; A[K]:=B; … 5) Метод сортировки: a) Метод пузырька: … FOR I:=1 TO N-1 DO FOR J:=1 TO N-1 DO IF A[J]>A[J+1] THEN BEGIN BUF:=A[J]; A[J]:=A[J+1]; A[J+1]:=BUF; END; … b) 46)Ускоренный метод пузырька: · уменьшение количества сравнивания соседей на каждом последующем проходе по массиву: … FOR I:=1 TO N-1 DO FOR J:=1 TO N-I DO IF A[J]>A[J+1] THEN BEGIN BUF:=A[J]; A[J]:=A[J+1]; A[J+1]:=BUF; END; … что равносильно другой записи: … FOR J:=N-1 TO 1 DO FOR I:=1 TO J DO IF A[J]>A[J+1] THEN BEGIN BUF:=A[J]; A[J]:=A[J+1]; A[J+1]:=BUF; END; … · прекращение проходов по массиву при окончательном упорядочивании: … K:=N; REPEAT PORYADOK:=TRUE; K:=K+1; FOR J:=1 TO K DO BUF:=A[J]; A[J]:=A[J+1]; A[J+1]:=BUF; PORYADOK:=FALSE; END; UNTIL PORYADOK; … c) 47)Метод сортировки выбором (метод выбора). Суть : при сортировке по возрастанию находится min элемент в диапазоне от 1-го до последнего и меняется местами с первым, затем находится min элемент в диапазоне от 2-го до последнего и меняется местами со вторым и т. д. … FOR I:=1 TO N-1 DO BEGIN MIN:=A[I]; IMIN:=I; FOR J:=I+1 TO N DO IF A[J]<MIN THEN BEGIN MIN:=A[J]; IMIN:=J; END; A[IMIN]:=A[I]; A[I]:=MIN; END; … d) 48)Метод вставки. Суть: считается, что массив разделен на две части: отсортированную (в начале массива) и не отсортированную (в оставшейся части массива). (В самом начале отсортированная часть состоит из одного элемента.) Из не отсортированной части выбирается 1-й элемент (его номер I) и вставляется в отсортированную часть без изменения порядка возрастания (в позицию J). … FOR I:=2 TO N DO BEGIN BUF:=A[I]; J:=1; WHILE BUF>A[J] DO J:=J+1; FOR K:=I DOWNTO J+1 DO A[K]:=A[K-1]; A[J]:=BUF; END; …
6) Поиск в массиве искомого элемента: a) 49)Метод перебора. Суть метода: элемента массива, начиная с первого, сравниваются с искомым до тех пор, пока не произойдет совпадение или не будет просмотрен весь массив. … NAIDENO:=FALSE; I:=0; REPEAT I:=I+1; IF A[I]=ISKOMOE THEN NAIDENO:=TRUE; UNTIL NAIDENO OR (I=N); IF NAIDENO THEN WRITELN(‘Элемент найден, его номер:’,I) ELSE WRITELN(‘Элемент не найден’); … b) 50)Метод бинарного поиска (деления пополам). Примечание: используется только для упорядоченных массивов. Суть метода: находится центральный (серединный) элемент массива. Искомое сравнивается с этим элементом; если они равны, поиск прекращается. В противном случае, если центральный элемент меньше искомого (при сортировке по возрастанию), то из рассмотрения исключаются элементы массива, начиная с первого до центрального. Иначе из рассмотрения исключаются элементы массива, начиная с центрального до последнего. В оставшейся половине массива находится центральный элемент и сравнивается с искомым и так далее до тех пор, пока не произойдет совпадение, или область поиска не сузится до 0. … NA:=1; //номер первого элемента в рассмотренном диапазоне KO:=N; NAIDENO:=FALSE; REPEAT SR:=NA+(KO-N) DIV 2; IF A[SR]=ISKOMOE THEN NAIDENO:=TRUE ELSE IF A[SR]<ISKOMOE THEN NA:=SR+1 ELSE KO:=SR-1 UNTIL NAIDENO OR (NA>KO); IF NAIDENO THEN WRITELN(‘Элемент найден, его номер:’,SR) ELSE WRITELN(‘Элемент не найден’);
|