metod_15.03.04_atppp_oaip_ump_2016 (1016599), страница 22
Текст из файла (страница 22)
Это понятие является фундаментальнымдля программирования.Свойства основных типов данныхТипЦелыйВещественныйЛогическийСимвольныйЗначенияОперацииЦелые положительныеи отрицательные числав некотором диапазоне.Примеры: 23, —12, 387Арифметическиеоперации с целымичислами: +, —, х,целое деление иостаток от деления.Операции отношений(<, >, =идр.).Арифметическиеоперации: +, —, х, /.Операции отношенийЛюбые (целые и дробные)числавнекоторомдиапазоне.Примеры: 2,5, -0,01,45, 0, 3,6*109Тruе (истина)False (ложь),Логические операции:И (and), ИЛИ (ог),НЕ(not). ОперацииотношенийОперации отношенийЛюбые символыкомпьютерного алфавита.Примеры: 'а', '5', '+', '$'ВнутреннеепредставлениеФормат сфиксированнойточкойФормат с плавающейточкой1 бит: 1 — true;0 —falseКоды таблицысимвольнойкодировки. 1 символ— 1 байтВ каждом языке программирования существует своя концепция типов данных, своясистема типов. Однако в любой язык входит минимально–необходимый наборосновных типов данных, к которому относятся следующие типы данных: целый,вещественный, логический и символьный.
С типом величины связаны три ее свойства:множество допустимых значений, множество допустимых операций, формавнутреннего представления (см. табл.).Типы констант определяются по контексту (т.е. по форме записи в тексте), а типыпеременных устанавливаются в описании переменных.Есть еще один вариант классификации данных: классификация по структуре.Данные делятся на простые и структурированные. Для простых величин (их еще95называют скалярными) справедливо утверждение: одна величина — одно значение.Для структурированных: одна величина — множество значений.
Кструктурированным величинам относятся массивы, строки, множества и др.Действия над величинами, определяемые алгоритмом (программой),основываются на следующей иерархии понятий: операция — выражение — командаили оператор — система команд.Операция — простейшее законченное действие над данными. Операции дляосновных типов данных перечислены в приведенной выше таблице.Выражение—записьвалгоритме(программе),определяющаяпоследовательность операций для вычисления некоторой величины.Команда — входящее в запись алгоритма типовое предписание исполнителювыполнить некоторое законченное действие.
Команды присваивания, ввода, выводаназываются простыми командами; команды цикла и ветвления — составными, илиструктурными, командами.В языках программирования строго определены правила записи операций,выражений, команд. Эти правила составляют синтаксис языка. При описанииалгоритма в виде блок-схемы или на алгоритмическом языке строгое соблюдениесинтаксических правил не является обязательным. Программист пишет алгоритм длясебя как предварительный этап работы перед последующим составлениемпрограммы. Поэтому достаточно, чтобы смысл алгоритма был понятен его автору.Узловыми понятиями в программировании являются понятия переменной иприсваивания.
О переменной уже говорилось выше. Процесс решения вычислительнойзадачи — это процесс последовательного изменения значений переменных. В итоге вопределенных переменных получается искомый результат.Переменная получает определенное значение в результате присваивания. Из числакоманд, входящих в СКИ, присваивание выполняют команда ввода и командаприсваивания. Есть еще третий способ присваивания — передача значений черезпараметры подпрограмм.Команда присваивания имеет следующий вид:<переменная> := <выражение>Знак «:=» надо читать как «присвоить». Это инструкция, которая обозначаетследующий порядок действий:961) вычислить выражение;2) присвоить полученное значение переменной.Нельзя путать команду присваивания с математическим равенством!Смысл команды Х:= Х+ 1 следует понимать так: к значению переменной Xприбавляется единица и результат присваивается этой же переменной X.
Иначе говоря,данная команда увеличивает значение переменной X на единицу.Под вводом в программировании понимается процесс передачи данных с любоговнешнего устройства в оперативную память. В рамках введения в программированиеможно ограничиться узким пониманием ввода как передачи данных с устройства ввода(клавиатуры) в ОЗУ.
В таком случае ввод выполняется компьютером совместно счеловеком. По команде ввода работа процессора прерывается и происходит ожиданиедействий пользователя; пользователь набирает на клавиатуре вводимые данные инажимает на клавишу <ВВОД>; значения присваиваются вводимым переменным.7.3. СТРУКТУРНОЕ ПРОГРАММИРОВАНИЕСтруктурное программирование – это проектирование, написание и тестированиепрограммы в соответствии с жестким соблюдением определенных правил.Основная цель структурного программирования – повышение производительностипрограммистов.
Другими целями являются:– избавиться от плохой структуры программы;– создавать программы и документацию к ним, которые можно было бы понимать,сопровождать и модифицировать без участия авторов (стоимость сопровождения имодификации, как правило, в 3-5 раз больше стоимости разработки).Структурное программирование (или метод пошаговой детализации) включает:1.
Метод нисходящего проектирования. Его еще называют методом «сверху вниз»или «от общего к частному». Он предполагает разбиение задачи на несколько болеепростых частей или подзадач. Их выделяют таким образом, чтобы проектированиеподзадач было независимым. При этом составляют план решения всей задачи,пунктами которого и являются выделенные части. План записывают графически в видефункциональной схемы (схемы иерархии, подчинения), где определяют головную иподчиненные подзадачи и связи между ними, т.е. интерфейс. Здесь же устанавливается,какие начальные данные (или значения) получает каждая подзадача для правильногофункционирования и какие результаты она выдает.
Затем производят детализациюкаждой подзадачи. Число шагов детализации может быть произвольным. Детализациюпродолжают до тех пор, пока не станет ясно, как программировать данный фрагменталгоритма.2.Структурноепрограммирование.Реализацияидеиструктурногопрограммирования основывается на том факте, что правильная программа любойсложности может быть представлена логической структурой, представляющей собойкомпозицию трех базовых (логических или управляющих) структур, определяющихправила обработки данных: следования (линейная), разветвления (условного перехода)и повторения (цикла).973. Сквозной структурный контроль.
Он представляет собой регулярные проверки исогласования результатов работы исполнителей - программистов различных структур.Его необходимость определяется желанием разработчиков снизить стоимостьразрабатываемых программ. Обязательным условием этого является раннееобнаружение и исправление возникающих ошибок и не состыковок.Таким образом, метод составления алгоритма и программы именуемый «сверхувниз» или «от общего к частному» состоит в сведении сформулированной задачи кпоследовательности более простых подзадач, легче поддающихся обработке вотдельности, чем целиком исходная программа.
Последовательное выделение изисходной задачи все более простых подзадач обеспечивает представление алгоритмарешения исходной задачи как композиции алгоритмов выделенных подзадач.Вместе взятые (выделенные) алгоритмы подзадач образуют систему, управлениекоторой должен взять на себя алгоритм-диспетчер. Его называют главным (илиголовным), а все остальные подчиненными. Схему, отображающую уровень ивзаимосвязь, взаимодействие алгоритмов, как головного, так и подчиненных, называютфункциональной схемой – это схема иерархии алгоритмов.Подчиненный алгоритм должен иметь один вход и один выход.
Для негонеобходимо задать цель и определить множество допустимых входных значений(формальных параметров-значений), возможные собственные (локальные, внутренние)объекты и возможные побочные (волновые) эффекты (выход параметров за областьдопустимых значений, изменение значений параметров, в частности, получениерезультатов и/или вывод данных). Таким образом, подчиненный алгоритм – это элементфункциональной схемы алгоритма, реализующий одну самостоятельную подзадачу.Часть алгоритма, организованная как простое действие, т.е.
имеющая один вход иодин выход, называется функциональным блоком.SОдин вход означает, что выполнение данной части всегда начинается с одного и тогоже действия. Один выход означает, что после завершения данной части алгоритмавсегда начинает выполняться одно и то же действие.Функциональный блок алгоритма относится к простому типу блоков.Поскольку алгоритм определяет порядок обработки данных, он должен содержать, содной стороны, действия по обработке, а с другой стороны, порядок их следования,называемый потоком управления. Поток управления может обладать следующимисвойствами:1) выполняется каждый блок;2) каждый блок выполняется не более одного раза.При структурной организации алгоритма можно выделить три типа потоковуправления.Поток управления, в котором выполняются оба указанных свойства, называетсялинейным.S1S298Очевидно, что несколько блоков, связанных линейным потоком, могут бытьобъединены в один функциональный блок.2.














