Информатика и программирование 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Информатика и программирование



Информатика и программирование

1. Алгоритмы, их типы и свойства. Формы записи алгоритмов.

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

3. Информация: определение, свойства и количественные оценки объемов информации. Типы данных и их сравнительный анализ.

4. Классификация языков программирования и их сравнительный анализ. Этапы проектирования программной системы.

5. Общий порядок подготовки программ к выполнению.

6. Определение и типы данных:элементарное данное,массив,запись, очередь,стек, список, таблицы, строки.

7. Определение, назначение, функции объектов, наборов объектов, двумерных файлов, отношений (таблиц), строк (кортежей), идентификаторов, первичных и вторичных ключей, инвертированных списков, элементарных данных, схем, подсхем, экземпляра схемы.

8. Языки программирования. Классификация языков по уровню ав­то­­матизации программирования. Основные термины языка программирования.

 

Билет 1

Алгоритмы, их типы и свойства. Формы записи алгоритмов.

Алгоритмы

Алгоритм ‑ это понятное и точное предписание исполнителю со­вер­шения определенных последовательных действий для достижения ука­занной цели.

Свойства алгоритма

Дискретность ‑ последовательность выполнения одного за другим отдельных законченных шагов.

Массовость ‑ применимость к целому классу задач.

Определенность ‑ однозначное толкование каждого шага.

Результативность ‑ получение результата через конечное число шагов.

Формальность способность любого исполнителя выполнить все шаги алгоритма, не понимая их смысла.

Например, инструкция по использованию утюга является алго­рит­мом, а инструкция как встретить и устроить в гостинице гостя фирмы не является алгоритмом (нет свойства массовости).

Существует теорема, доказывающая, что любой алгоритм есть ком­би­нация трех базовых команд: следование, развилка (“если”), цикл. Команда безусловного перехода (Gоto) не является базовой, и ее можно исключить из языков программирования (FoxPro).

Алгоритмы бывают сходящимися и расходящимися.

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

. Существуют алгоритмически неразрешимые задачи, для которых не­воз­можно построить алгоритм их решения.

Пример. Задача определения эквивалентности двух программ (две различные программы вычисляют одну функцию) является алгоритмичес­ки неразрешимой.

Алгоритмический язык ‑ это язык формализованной записи алгоритма.

Формы записи алгоритма

Словесная форма

Пример описания алгоритма Евклида ‑ нахождения наибольшего общего делителя двух чисел (НОД).

Шаг 1-й. Ввести два числа.

Шаг 2-й. Если числа равны, то взять первое и закончить выполнение алго­ритма, иначе ‑ перейти на следующий шаг.

Шаг 3-й. Определить большее число. Заменить большее число на разность большего и меньшего и перейти на шаг 2-й.

Достоинство ‑ универсальность, недостаток ‑ неформальность.

2. Блок ‑ схема

Шаги алгоритма изображаются в виде специальных графических симво­лов (рис.1.1.1), которые связываются линиями передачи управления (рис. 1.1.2).

 
 


Начало, конец, прерывание Подпрограмма

Ввод или вывод данных Вывод на принтер

Линейный процесс Проверка условия

Магнитный диск Магнитная лента

 

 
 


Сортировка Дисплей

 

 
 


Межстраничный

Соединитель соединитель

 

Рис. 1.1.1. Основные графические символы блок‑схем

Лист бумаги делится на колонки и строки. Строки нумеруются, а ко­лон­ки обозначаются латинскими буквами. В одной ячейке (зоне) разме­ща­ет­ся один графический символ. Адрес зоны обозначается именем колонки и номером строки (B3). В соединителе указывается адрес зоны (куда или от­куда передается управление). В межстраничном соединителе допол­ни­тель­но указывается номер листа.

Достоинство: наглядность; недостаток: трудоем­кость разработки.

Псевдокоды

Псевдокоды - полуформальный язык, в котором вводятся ключевые слова, имеющие однозначное толкование. Эти слова выделяются в тексте (цветом, толщиной, размером букв, шрифтом). За ключевым словом на естественном языке описывается шаг алгоритма.

Пример алгоритма Евклида

Алгоритм ‑ определение наибольшего общего делителя чисел А, В.

Ввод двух чисел A, B.

Делать пока А не равно В.

Если А>В То А=А-В Иначе В=В-А Конец если

Конец делать

Вывести значение А на печать.

Конец алгоритма

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

4. Метод HIPO (иерархия, ввод, обработка, вывод). Исполь­зуется для описания больших программных проектов. Проект состоит из оглавления, обзорных и детальных таблиц. В оглавлении указываются назначение проекта и список основных функций. Каждая функция в дальнейшем расписывается в виде иерархической системы обзорных таблиц. Каждой обзорной таблице присваивается код, который включает в себя код вышестоящей таблицы (через точку); таким образом, код показывает ветвь проекта (1.2, 1.2.1, 1.2.2). Детальные таблицы заканчивают описание всего проекта и являются терминальными таблицами в дереве обзорных таблиц. Детальная таблица состоит из трех колонок: входная информация, обработка и выходная информация.

Достоинства: структурность, возможность постепенной дета­лизации; недостаток: неудобна для малых проектов.

 

Билет 2

Cвойства

Обращение к свойству имеет вид: [<форма>. ]<объект>. <свойство>. Для объектов текущей формы имя формы можно не указывать. Свойства мо­гут быть: доступными везде; доступными только при проектировании; только при выпол­не­нии; только для чтения или для чтения и изменения.

Name - имя объекта (элемента) для ссылки на объект в программе. Каждый объект имеет имя. Имя содержит латинские буквы, цифры и знаки подчеркивания и не может начинаться с цифры. Имя формируется автоматически при создании объекта, но для наглядности рекомендуется изменять имя, давая ему смысловое обозначение в начале имени указывать трехсимвольное обозначение объекта: CheckBox (chk), ComboBox (cbo), Command Button (cmd), Common Dialog (cdl), Data (dat), Data Bound Combo Box (dbc), Dat bound ListBox (dbl), Directory ListBox (dbl), Drover ListBox (dir), File ListBox (fil), Form (frm), Frame (fra), Grid (grd), Horizontal ScrollBar (hsb), Image (img), Label (lbl), Line (lin), List Box (lst), Menu (mnu), OLE Container (ole), Option Button (opt), Picture Box (pic), Shape (shp), TextBox (txt), Timer (tmr), Vertical ScrollBar (vsb).

Имя должно быть уникальным, если объект не входит в массив объектов.

Text, Value - текущее значение (типа Variant) объекта.

Index ‑ порядковый номер объекта в массиве однотипных объектов.

Visible - определяет, является ли объект видимым/не­видимым (True/False).

Caption - значение типа Variant, которое будет отображаться вместе с объ­ек­том в виде надписи на объекте, например на командной кнопке или в заголовке формы. Если нуж­но под­черкнуть определенный символ, то перед ним указывается ”&”. Та­кой сим­вол выполняет роль (“горячей”) кла­виши быстрого доступа для кноп­ки, и, на­жав ее одновременно с кла­вишей Alt, имитируется нажатие кнопки. При программном задании над­писи с “горячей” клавишей следует установить свойство UseMnemonic=True (Command1.UseMnemonic= True: Command1.Caption = “Со&хранить”).

Enabled - разрешает (True) или блокирует (False) работу с объектом. Ви­зуально заблокированный объект выглядит затененным, тусклым.

ToolTipText - текст всплывающей подсказки типа Variant, которая появ­ляется при поме­ще­нии курсора мыши на поверхности объекта.

ForeColor - цвет выводимого текста (надписи) или графики.

BackColor - цвет фона объекта (например, формы или кнопки).

Custom - построитель объекта, позволяющий задать основные свойства объ­екта в более удобной форме, чем через таблицу свойств.

События

Для каждого объекта существует набор событий, на которые он может реагировать. Алгоритм этой реакции задается процедурой пользователя обработки этого события либо стандартной процедурой (командой) Visual Basic, которая называется методом. Текст процедуры набирается в программном окне, которое вызывается двойным щелчком по объекту. Имя процедуры состоит из имени объекта, знака подчеркивания и имени события (Command1_Click). Перечиcлим основные события.

Initialize - при конфигурации объекта до загрузки объекта.

Load - при загрузке объекта после Initialize, но перед Activate. В процедуре обработки этого события можно, например, изменить свойства объекта, открыть базы или файлы при загрузке форм.

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

Click, MiddleMouse - щелчок левой, средней кнопкой мыши по объекту.

DblClick - двойной щелчок левой кнопкой мыши по объекту.

Change - событие происходит при изменении состояния объекта. В проце­ду­­ре обработки этого события (например, контроль при вводе или блоки­ровать/разбло­ки­­ровать объекты в зависимости от введенного значения).

Пример.Command1.Enabled=Text1.Text=””

GotFocus - событие происходит при активизации объекта (объект полу­чает фо­кус) и курсор помещается в поле ввода, а кнопка выделяется рамкой.

LostFocus - событие происходит при потере фокуса. В процедуре обрабо­т­ки можно проверить правильность введенных значений (лучше исполь­зо­вать событие Validate) или изменить свой­ства других объектов.

Validate ‑ используется для про­вер­ки правильности введенного значения. Ес­ли при проверке введенного значения были обнаруже­ны ошибки, то нуж­но указать ар­гу­мен­ту этой процедуры Cancel значение True, и фокус останется на месте. В случае вер­но­го значения нужно указать Cancel=False, и произойдет поте­ря фо­ку­са (п. 6.3).

Методы

Методом можно назвать команду, которая отдается объекту. Обра­ще­ние к методу имеет вид: [<форма>. ]<объект>. <метод> [<параметры>]. Для объектов теку­щей формы имя формы можно не указывать.

SetFocus - уставливает фокус на определенном объекте, что означает “сде­лать объект текущим“. Например, для текущего текстового поля курсор на­хо­дится в этом поле, предлагая вводить данные в это поле. Естественно, не могут одновременно существовать несколько объектов, на которые уста­нов­лен фокус (Text1.SetFocus).

Refresh - повторное формирование и отображение (обновление) формы или объ­екта. Используется после изменения свойств объекта для вывода объ­екта с новыми свойствами (Command1.enabled=False:Command1.refresh).

Move(x,y) ‑ перенос объекта на новое место с координатами X,Y.

Пример. x=x+10: y=y+20: Image1.Move(x,y) 'перенос рисунка

Формы

Форма представляет собой окно Windows, в котором размещаются различные элементы приложения.

Специфичные свойства

WindowState - состояние формы при запуске: 0 - нормальное, 1 - свернутое, 2 - развернутое.

Picture - имя файла с рисунком на форме.

Методы Showи Hide позволяют вывести форму на экран или убрать ее с экрана. Обычно они используется для перехода на другую форму и для возврата на предыдущую.

Специфичные свойства

Text‑ значение (типа Variant) поля.

Надписи (Label)

Надписи служат для размещения текста (значение свойства Caption).

Специфичные свойства

AutoSize =True ‑ установить размер надписи по числу символом в надписи. BorderStyle =1 ‑ окружить текст рельефной рамкой.

BackStyle =Transparent ‑ окружение текста прозрачное, что улучшает вид надписи, выводимой на фоне рисунка.

WordWrap ‑ перенос слов на следующую строку при AutoSize=False.

 

Специфичные свойства

Value‑ получает значение True выбранного переключателя, а для всех осталь­ных переключателей это свойство равно False. При проек­тировании одно­му из переключателей можно указать Value=True.

Alignment‑ задает местоположение кнопки: 0 /1 - кнопка слева /справа от ее надписи.

Специфичные свойства

Value ‑ состояние переключателя: 0 - не установлен (галочка отсутствует в ри­сун­ке флажка); 1 - установлен (галочка указана); 2 - неопределен (закра­шен серым цветом).

Alignment‑ задает местоположение кнопки: 0 /1 - кнопка слева /справа от ее надписи. Обычно флажок используется для выбора одно­го из двух вариантов (например, оплачен счет или нет).

Пример. Имеется флажок Check1, задающий полужирный шрифт вво­димого текста в поле Text1. Процедура обработки события флажка имеет следующий вид:

Private Sub Check1_Click(): Text1.FontBold=Check1.Value=1: End sub

Списки (ListBox)

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

Специфичные свойства

List ‑ список строк (для перехода к следующей строке нажимаются кла­ви­ши ^Enter).

ListIndex, Text ‑номер выбранной пользовате­лем строки (отсчет строк на­чи­­нает­ся с нуля) и текст этой строки.

 

6.9. Комбинированные поля (ComboBox)

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

Специфичные свойства

List, ListCount, NewIndex, Listindex, Sort и методы AddItem, RemoveItem ‑ ана­логичны одноименным свойствам списков.

Style ‑ задает тип поля: vbComboDropDown (раскрывающее) vbCom­bo­Simple (прос­тое) и vbComboDropDownList (раскрывающийся список).

Раскрывающее поле имеет справа кнопку со стрелкой. После ее нажатия появляется список, и можно выбрать нужный элемент. Он поместится в поле, либо его можно ввести в поле.

Простое поле аналогично раскрывающему, но список открыт.

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

6.12. Таймеры (Timer)

Таймер не появляется на форме во время выполнения программы и проверяет показания системных ча­­сов.

Специфичное свойство Interval задает интервал в миллисекундах (от 56 до 64757), и после истече­ния указанного интервала генерируется событие Timer. Тай­мер отклю­чает­ся при Interval=0 или Enabled=False. Общее количество тай­ме­ров для всех приложений ограничено числом 31.

 

Билет 3, 6

Свойства информации

Релевантность ­‑ соответствие запросам пользователя.

Полнота ‑ исчерпывающее отображение объекта.

Своевременность ‑ соответствие нуждам пользователя в нужный момент.

Достоверность ‑ отсутствие скрытых ошибок.

Доступность ‑ возможность получения информации потребителем.

Защищенность ‑ невозможность несанкционированного использования.

Эргономичность ‑ удобство формы представления информации.

Адекватность ‑ однозначное соответствие отображаемому объекту.

Количество информации может измеряеться энтро­пий­ным и объ­ем­ным способами.

Энтро­пий­ный способ ‑ количество информации (H) определяется по формуле H=log2m, где m ‑ число возможных равновероятных выборов.

Пример. Для угадывания случайно выбранной карты из колоды 32 карт нужна информация в количестве H=log232=5. Таким образом, нуж­но задать пять вопросов для угадывания, например, дамы пик:

1. Карта красной масти? Ответ “Нет”.

2. Трефы? Ответ “Нет”.

3. Одна из четырех карт старших? Ответ “Да”.

4. Одна из двух карт старших? Ответ “Нет”.

5. Дама? Ответ “Да”.

Объемный способ ‑ количество единиц измерения информации: бит (наимень­шая единица информации), байт (8 бит), 2 байта (полуслово), 4 байта (слово), 8 байтов (двойное слово), 1 КБ (1024 байтов), 1 МБ (1024КБ), 1 ГБ (1024МБ), 1TB (1024ГБ).

Данные ‑ это форма записи информации, непосредственно воспри­ни­маемая компьютером.

Типы данных

1. Элементарное данное ‑ наименьшая единица информации, которую бессмысленно разбивать (дата, год рождения).

2. Массив - группа переменных, доступ к которым осуществляется по индексу (обычно порядковый номер элемента в массиве). Массивы бы­вают размерности 1, 2, … N. Массивы позволяют реализовать алго­ритмы циклической обработки.

3. Запись ‑ группа логически связанных переменных, возможно раз­ного типа. Обычно элементы записи называются полями. Поля уточняются именем записи (sotrudnik.fam). Некоторые языки программирования вырав­нивают поля по кратности адресов: например, вещественные числа имеют ад­рес, кратный 4, целые ‑ 2. Поэтому возникают незапол­нен­ные участки записи.

4. Очередь - структура, которая обслуживается по принципу “пер­вым пришел, первым ушел” (список очередников на получение жилья).

5. Магазин (стек) ‑ структура, которая обслуживается по принципу “первым пришел, последним ушел” (стопка книг).

6. Список ‑ группа логически связанных записей, каждая из которых состоит из двух частей ‑ адресной и информационной. Адресная часть содержит адреса‑ссылки на логически связанные с ней записи. Информационная часть содержит сами данные. Списки бывают 1, 2, …, N - направленные (по количеству адресов в записи). Список называется кольцевым, если последняя запись списка содержит адрес первой записи. Достоинства списка: при удалении элемента из списка не произво­дится массового копирования элементов к началу списка; при вставке нового элемента в список не производится массового копирования элементов к концу списка. Недостатки: логически близкие записи удаляются друг от друга физически, что замедляет переход от одной записи к другой; удаленные записи занимают место на внешнем носителе.

Способы улучшения списков:

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

· реорганизация списка: список копируется в логической после­до­ва­тельности, и удаленные записи игнорируются.

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

7. Таблицы ‑ структура данных, состоящая из колонок и строк, дос­туп к которым осуществляется по ключу в строке. Обычно таблицы сорти­руются по возрастанию или убыванию ключа. Таблицы являются основной структурой в реляционных базах данных.

8. Строки ‑ последовательность любых символов.

Допускается построение комбинаций различных структур.

Билет 4, 8

Классификация языков программирования и их сравнительный анализ. Общий порядок разработки приложений с использованием языков программирования Visual Basic, Delphi и C++ Builder и СУБД.

Языки программирования

Язык программирования ‑ это алгоритмический язык, не­пос­ред­ст­вен­­­но воспринимаемый компьютером.

Программа ‑ полное и точное описание алгоритма на языке програм­мирования.

Классификация языков по уровню ав­то­­матизации программи­ро­вания

1. Машинно-ориентированные языки: машинные и ассемблеры (языки, в которых числовые адреса и коды заменены на символьные обозначения).

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

2. Процедурно‑ориентированные языки: содержат средства авто­ма­­ти­за­ции наиболее часто используемых процедур обработки данных. Одна команда генерирует множество машинных команд.

Достоинства: снижение трудоемкости разработки программ, переноси­мость программ на различные платформы. Недостатки: не все возможности компьютера используются, более низкая эффективность.

Примеры: языки Visual C++, Delphi, Visual Basic.

3. Проблемно‑ориентированные языки: автоматизируют разработку це­лых задач пользователя. Обычно пользователь описывает то, что нужно получить в результате решения задачи, а сам язык позволяет строить алгоритм и программы, реализующие поставленную цель.

Примером являются пакеты программ: “Галактика”, “1C ‑ бухгалтерия”.

Достоинство: максимальная автоматизация; недостатки: более низ­­кая эффективность и не все возможности компьютера используются.

Современные языки программирования включают в себя элементы языков трех уровней.

Информатика и программирование

1. Алгоритмы, их типы и свойства. Формы записи алгоритмов.

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

3. Информация: определение, свойства и количественные оценки объемов информации. Типы данных и их сравнительный анализ.

4. Классификация языков программирования и их сравнительный анализ. Этапы проектирования программной системы.

5. Общий порядок подготовки программ к выполнению.

6. Определение и типы данных:элементарное данное,массив,запись, очередь,стек, список, таблицы, строки.

7. Определение, назначение, функции объектов, наборов объектов, двумерных файлов, отношений (таблиц), строк (кортежей), идентификаторов, первичных и вторичных ключей, инвертированных списков, элементарных данных, схем, подсхем, экземпляра схемы.

8. Языки программирования. Классификация языков по уровню ав­то­­матизации программирования. Основные термины языка программирования.

 

Билет 1



Поделиться:


Последнее изменение этой страницы: 2017-02-07; просмотров: 91; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.88.249 (0.083 с.)