Автор работы: Пользователь скрыл имя, 01 Апреля 2014 в 14:08, контрольная работа
Основные понятия информатики.
Свойства информации.
Единицы измерения информации.
Негосударственное образовательное учреждение
высшего профессионального образования
«Гуманитарно-экономический и технологический институт»
Информатика:
Долги 1 курс 1,2 семестр
1 часть.
Выполнил:
Заочно-дистанционная 3 курс, гр. № М-32а
1 задание 1 часть
Основные понятия информатики. Свойства информации. Единицы измерения информации.
Информатика – это техническая наука, определяющая сферу деятельности, связанную с процессами хранения, преобразования и передачи информации с помощью компьютера.
Компьютер – универсальный прибор для обработки информации
Термин «информация» в переводе с латинского означает «разъяснение, изложение, набор сведений».
Информация – это очень сложное и глубокое понятие, которому не просто дать четкое определение.
Представление информации с помощью какого-либо языка называют кодированием.
Код – набор символов для представления информации.
Кодирование – процесс представления информации в виде кода
Знаменитый немецкий ученый Г.В. Лейбниц предложил еще в XVII веке уникальную и простую систему счисления. «Вычисление с помощью двоек…, сведение чисел к простейшим началом (0 и 1)».
Сегодня такой способ представления информации, с помощью языка содержащего два символа 0 и 1, широко используется в технических устройствах.
Эти два символа 0 и 1 принято называть битами (от англ. binary digit – двоичный знак).
Бит – наименьшая единица измерения информации и обозначается двоичным числом.
Более крупной единицей изменения объема информации принято считать 1 байт, который состоит из 8 бит.
1 байт = 8 битов.
Единицы измерения объема информации;
Название |
Условное обозначение |
Соотношение с другими единицами |
Килобит |
Кбит |
1 Кбит = 1024 бит = 210 бит ≈ 1000 бит |
Мегабит |
Мбит |
1 Мбит = 1024 Кбит = 220 бит ≈ 1 000 000 бит |
Гигабит |
Гбит |
1 Гбит = 1024 Мбит = 230 бит ≈ 1 000 000 000 бит |
Килобайт |
Кбайт (Кб) |
1 Кбайт = 1024 байт = 210 байт ≈ 1000 байт |
Мегабайт |
Мбайт (Мб) |
1 Мбайт = 1024 Кбайт = 220 байт ≈ 1 000 000 байт |
Гигабайт |
Гбайт (Гб) |
1 Гбайт = 1024 Мбайт = 230 байт ≈ 1 000 000 000 байт |
2 задание 1 часть
Основы алгоритмизации. Понятие алгоритма. Основные типы алгоритмов
План
Алгоритм – описанная на некотором языке точная конечная система правил, определяющая содержание и порядок действий над некоторыми объектами, строгое выполнение которых дает решение поставленной задачи. Понятие алгоритма, являющееся фундаментальным в математике и информатике, возникло задолго до появления средств вычислительной техники. Слово «алгоритм» появилось в средние века, когда европейцы познакомились со способами выполнения арифметических действий в десятичной системе счисления; описанными узбекским математиком Муххамедом Бен Аль-Хорезми («Аль-Хорезми» — человек из города Хорезми; в настоящее время город Хива в Хорезмской области Узбекистана). Слово алгоритм – есть результат европейского произношения слов Аль-Хорезми. Первоначально под алгоритмом понимали способ выполнения арифметических действий над десятичными числами. В дальнейшем это понятие стали использовать для обозначения любой последовательности действий, приводящей к решению поставленной задачи.
Любой алгоритм существует не сам по себе, а предназначен для определенного исполнителя (человека, робота, компьютера, языка программирования и т.д.). Свойством, характеризующим любого исполнителя, является то, что он умеет выполнять некоторые команды. Совокупность команд, которые данный исполнитель умеет выполнять, называется системой команд исполнителя. Алгоритм описывается в командах исполнителя, который будет его реализовывать. Объекты, над которыми исполнитель может совершать действия, образуют так называемую среду исполнителя. Исходные данные и результаты любого алгоритма всегда принадлежат среде того исполнителя, для которого предназначен алгоритм.
Значение слова «алгоритм» очень схоже со значениями слов «рецепт», «метод», «процесс». Однако, в отличие от рецепта или процесса, алгоритм характеризуется следующими свойствами: дискретностью, массовостью, определенностью, результативностью, формальностью.
Дискретность (разрывность – противоположно непрерывности) – это свойство алгоритма, характеризующее его структуру: каждый алгоритм состоит из отдельных законченных действий, говорят: «Делится на шаги».
Массовость – применимость алгоритма ко всем задачам рассматриваемого типа, при любых исходных данных. Например, алгоритм решения квадратного уравнения в области действительных чисел должен содержать все возможные исходы решения, т.е., рассмотрев значения дискриминанта, алгоритм находит либо два различных корня уравнения, либо два равных, либо делает вывод о том, что действительных корней нет.
Определенность (детерминированность, точность) — свойство алгоритма, указывающее на то, что каждый шаг алгоритма должен быть строго определен и не допускать различных толкований; также строго должен быть определен порядок выполнения отдельных шагов. Помните сказку про Ивана-царевича? «Шел Иван-царевич по дороге, дошел до развилки. Видит большой камень, на нем надпись: «Прямо пойдешь — голову потеряешь, направо пойдешь — жену найдешь, налево пойдешь – разбогатеешь». Стоит Иван и думает, что дальше делать». Таких инструкций алгоритм содержать не может.
Результативность – свойство, состоящее в том, что любой алгоритм должен завершаться за конечное (может быть очень большое) число шагов. Вопрос о рассмотрении бесконечных алгоритмов остается за рамками теории алгоритмов.
Формальность – это свойство указывает на то, что любой исполнитель, способный воспринимать и выполнять инструкции алгоритма, действует формально, т.е. отвлекается от содержания поставленной задачи и лишь строго выполняет инструкции. Рассуждать «что, как и почему?» должен разработчик алгоритма, а исполнитель формально (не думая) поочередно исполняет предложенные команды и получает необходимый результат.
Рассмотрим следующие способы описания алгоритма: словесное описание, псевдокод, блок-схема, программа.
Словесное описание представляет структуру алгоритма на естественном языке. Например, любой прибор бытовой техники (утюг, электропила, дрель и т.п.) имеет инструкцию по эксплуатации, т.е. словесное описания алгоритма, в соответствии которому данный прибор должен использоваться.
Никаких правил составления словесного описания не существует. Запись алгоритма осуществляется в произвольной форме на естественном, например, русском языке. Этот способ описания не имеет широкого распространения, так как строго не формализуем (под «формальным» понимается то, что описание абсолютно полное и учитывает все возможные ситуации, которые могут возникнуть в ходе решения); допускает неоднозначность толкования при описании некоторых действий; страдает многословностью.
Псевдокод — описание структуры алгоритма на естественном, частично формализованном языке, позволяющее выявить основные этапы решения задачи, перед точной его записью на языке программирования. В псевдокоде используются некоторые формальные конструкции и общепринятая математическая символика.
Строгих синтаксических правил для записи псевдокода не существует. Это облегчает запись алгоритма при проектировании и позволяет описать алгоритм, используя любой набор команд. Однако в псевдокоде обычно используются некоторые конструкции, присущие формальным языкам, что облегчает переход от псевдокода к записи алгоритма на языке программирования. Единого или формального определения псевдокода не существует, поэтому возможны различные псевдокоды, отличающиеся набором используемых слов и конструкций.
Блок-схема – описание структуры алгоритма с помощью геометрических фигур с линиями-связями, показывающими порядок выполнения отдельных инструкций. Этот способ имеет ряд преимуществ. Благодаря наглядности, он обеспечивает «читаемость» алгоритма и явно отображает порядок выполнения отдельных команд. В блок-схеме каждой формальной конструкции соответствует определенная геометрическая фигура пли связанная линиями совокупность фигур.
Рассмотрим некоторые основные конструкции, использующиеся для построения блок-схем алгоритмов программ, регламентированные ГОСТ 19.701-90.
Блок, характеризующий начало/конец алгоритма (для подпрограмм — вызов/возврат)
Блок — процесс, предназначенный для описания отдельных действий
Блок — Предопределенный процесс, предназначенный для обращения к вспомогательным алгоритмам (подпрограммам)
Блок — ввода/вывода с неопределенного носителя или описания исходных данных
Блок — решение (проверка условия или условный блок)
Блок — границы цикла, описывающий циклические процессы типа: «цикл с предусловием», «цикл с постусловием»
Соединительные блоки
Описания алгоритма в словесной форме, на псевдокоде или в виде блок-схемы допускают некоторый произвол при изображении команд. Вместе с тем она настолько достаточна, что позволяет человеку понять суть дела и исполнить алгоритм. На практике исполнителями алгоритмов выступают компьютеры. Поэтому алгоритм, предназначенный для исполнения на компьютере, должен быть записан на «понятном» ему языке, такой формализованный язык называют языком программирования.
Программа – описание структуры алгоритма на языке алгоритмического программирования.
Элементарные шаги алгоритма можно объединить в следующие алгоритмические конструкции: линейные (последовательные), разветвляющиеся, циклические с предусловием и циклические с постусловием. Любой алгоритм можно составить, используя эти четыре алгоритмические конструкции.
Линейной называют алгоритмическую конструкцию, реализованную в виде последовательности действий (шагов), в которой каждое действие (шаг) алгоритма выполняется ровно один раз, причем после каждого i-го действия (шага) выполняется (i+1)-е действие (шаг), если i-е действие — не конец алгоритма.
Разветвляющейся (или ветвящейся) называется алгоритмическая конструкция, обеспечивающая выбор между двумя альтернативами в зависимости от значения входных данных. При каждом конкретном наборе входных данных разветвляющийся алгоритм сводится к линейному. Различают неполное (если – то) и полное (если – то – иначе) ветвления. Полное ветвление позволяет организовать две ветви в алгоритме (то или иначе), каждая из которых ведет к общей точке их слияния, так что выполнение алгоритма продолжается независимо от того, какой путь был выбран (рис. 1). Неполное ветвление предполагает наличие некоторых действий алгоритма только на одной ветви (то), вторая ветвь отсутствует, т.е. для одного из результатов проверки никаких действий выполнять не надо, управление сразу переходит к точке слияния.
Рис. 1. Полное ветвление
Циклической (или циклом) называют алгоритмическую конструкцию, в которой некая, идущая подряд группа действий (шагов) алгоритма можем выполняться несколько раз, в зависимости от входных данных или условия задачи. Группа повторяющихся действий на каждом шагу цикла называется телом цикла. Любая циклическая конструкция содержит в себе элементы ветвящейся алгоритмической конструкции.
Цикл с предусловием