- •Оглавление
- •Предисловие
- •Лекция 1
- •1. Научные основы информатики
- •1.1. Цели и задачи дисциплины
- •1.2. Теоретические основы информатики
- •1.3. Практические основы информатики
- •1.3.1. Структура компьютера и принцип программного управления
- •1.3.2. Архитектура современного компьютера
- •1.4. Классификация компьютеров
- •Лекция 2
- •2. Назначение и основные представления о работе функциональных блоков компьютера
- •2.1. Оперативная память
- •2.3. Внешняя память
- •2.3.1. Магнитные диски
- •2.3.2. Оптические диски
- •2.3.3. Магнитооптические диски
- •2.3.4. Особенности устройства Flash-накопителей
- •2.3.4.1. Программирование ячейки
- •2.3.4.2. Стирание ячейки
- •3.1.2. Арифметическо – логическое устройство
- •3.1.3. Разрядность процессора
- •3.1.4. Принцип действия процессора
- •3.1.5. Тактовая частота
- •3.2. Адресация данных и команд в оперативной памяти компьютера
- •3.2.1. Методы адресации
- •3.2.2. Стековая организация памяти
- •3.2.3. Магазинная организация памяти
- •3.3. Системы счисления и кодирования информации
- •3.3.1. Виды систем счисления
- •3.3.2. Перевод чисел из восьмеричной и шестнадцатеричной системы счисления в десятичную
- •3.3.3. Перевод чисел из восьмеричной и шестнадцатеричной системы счисления в двоичную
- •3.3.4. Перевод чисел с двоичной системы счисления в восьмеричную и шестнадцатеричную
- •3.3.5. Перевод чисел с десятичной системы счисления в другие
- •3.3.5.1. Перевод целых десятичных чисел в двоичные.
- •3.3.5.2. Перевод дробных чисел
- •Лекция 4
- •4. Формы представления чисел в эвм
- •4.1. Представление чисел в форме с фиксированной точкой
- •4.2. Представление чисел в форме с плавающей точкой
- •В итоге получается
- •4.3.1. Операция алгебраического сложения чисел, представленных в форме с фиксированной точкой
- •4.3.2. Операция алгебраического сложения чисел, представленных в форме с плавающей точкой
- •4.3.3. Принципы аппаратной реализации операций умножения и деления
- •Кодирование алфавитно – цифровой информации
- •Базовыми логическими операциями являются операции
- •Смысл этих операций становится понятным из табл. 5.1
- •5.2. Триггеры
- •6.2. Дешифраторы
- •6.3. Счетчики
- •6.4. Сумматоры
- •Лекция 7
- •7. Алгоритм и программа. Виды вычислительных процессов
- •7.1. Алгоритм
- •7.1.2. Требования к алгоритму
- •7.2. Программа
- •7.3. Виды вычислительных процессов
- •Лекция 8
- •8. Типовые алгоритмы
- •8.1. Определение суммы чисел произвольного ряда
- •8.2. Определение произведения чисел произвольного ряда
- •8.3. Алгоритм определения наибольшего (наименьшего) числа из заданного ряда чисел
- •8.4. Алгоритм определения наибольшего (наименьшего) значения вычисляемой функции
- •8.5. Вычисление функции с одновременно изменяющимися несколькими аргументами
- •8.6. Итерационные циклы
- •9.1.2. Метод поиска наименьшего (наибольшего)
- •9.2. Типовые алгоритмы решения задач с использованием матриц
- •Лекция 10
- •10. Алгоритмические языки. Общие представления.
- •Символы языка
- •10.2. Данные
- •10.2.1. Собственные типы данных
- •10.3. Идентификаторы
- •Операции. Выражения
- •10.4.1. Операции
- •Логические операции
- •10.4.2. Выражения
- •Лекция 11
- •Безусловный оператор
- •11.1. Структура программы
- •11.2. Оператор условия
- •11.2.1. Альтернативный оператор условия.
- •11.2.2. Безальтернативный оператор условия
- •11.2.3. Составные операторы условия
- •11.3. Безусловный оператор
- •11.4. Оператор множественного выбора
- •Операция «Запятая»
- •12.1.2. Оператор цикла while
- •Более изящной является запись
- •12.1.3. Оператор цикла do . . . While
- •12.1.4. Операторы continue, break
- •12.2. Массивы. Переменные типа массив
- •12.2.1. Описание массивов
- •12.2.2. Ввод массивов Использование массивов в вычислениях предполагает их ввод, в качестве исходных данных, а также вывод их в качестве результата вычислений.
- •12.2.3. Вывод массивов
- •12.2.4. Операции с массивами
- •12.2.5. Многомерные массивы
- •Для четырехмерного
- •12.2.6. Представление многомерных массивов как массив массивов.
- •Описание массивов с помощью инструкции typedef
- •Лекция 13
- •13. Символьные массивы
- •13.1 Описание символьных массивов
- •13.2. Ввод символьных массивов
- •13.3. Операции со строками
- •13.4. Строковые массивы
- •Лекция 14
- •14. Внешние файлы. Переменные файлового типа Файл – это информация, размещенная на внешнем носителе и имеющая свое имя.
- •14.1. Текстовые файлы. Файловый ввод и вывод данных
- •Здесь fstream – ключевое слово, играющее роль имени типа переменной,
- •Функция open( )
- •Функция close( )
- •Функции eol( ) и eof ( )
- •Операторы открытия и закрытия файла
- •Спецификации ios::nocreate и ios::in комбинируются с помощью логической операции || (дизъюнкция).
- •14.1.1. Создание внешних файлов
- •14.1.2. Операции с файловыми переменными
- •14.2. Бинарные файлы
- •Лекция 15
- •15. Функции
- •15.1. Структура функций
- •15.2. Локальные и глобальные данные
- •15.3. Виды функций
- •15.3.1. Функции, возвращающие результат по значению
- •Вызов функции
- •Место записи оператора вызова
- •Особенности выделения памяти при вызове функции
- •15.3.2. Функции, возвращающие результат по ссылке
- •Вызов функции
- •15.3.3. Место расположения функций в программе
- •Лекция 16
- •16. Программное обеспечение компьютера. Основные представления
- •16.1. Операционная система
- •16.2. Прикладные программы
- •16.2.1. Текстовый редактор Microsoft Word
- •Интерфейс редактора
- •Основное меню
- •Панель инструментов
- •16.3. Электронные таблицы. Ms Excel.Основные представления
- •Интерфейс программы ms Excel
- •Рабочее окно представляет собой не чистое поле, а пустую таблицу, состоящую из столбцов и строк. Максимальный размер таблицы:
- •Операции с ячейками
- •Выделение ячеек
- •Выделение группы смежных ячеек
- •Выделение нескольких несмежных интервалов
- •Выделение отдельной строки и отдельного столбца
- •Ввод числовых данных
- •Ввод текста
- •Режим автозаполнения
- •Ввод даты и времени
- •Ввод последовательных рядов чисел
- •17.3. Редактирование данных
- •Копирование, перемещение и удаление данных
- •17.4. Операции с данными Сортировка
- •Автосуммирование
- •17.5. Работа с формулами
- •Порядок создания формул
- •17.6. Использование в формулах адресов ячеек
- •Удаленные ссылки
- •Лекция 18
- •18. Электронная таблица ms Excel. Функции
- •18.1. Операции и функции
- •Но совершенно очевидно, что она более громоздкая, чем запись сумм(а1: а8).
- •Ошибки в формулах
- •Автопересчет
- •18.2. Относительная и абсолютная адресация ячеек
- •18.3. Построение диаграмм
- •Общий порядок построения диаграмм
- •Лекция 19
- •19. Решение математических задач средствами ms Excel
- •19.1. Операции с матрицами
- •19.1.1. Транспонирование матриц
- •19.1.2. Вычисление определителя матрицы
- •19.1.3. Нахождение обратной матрицы
- •19.1.4. Сложение и вычитание матриц
- •19.1.5. Умножение матрицы на число
- •19.1.6. Умножение матриц
- •19.2. Решение систем линейных уравнений
- •19.3. Решение уравнения с одним неизвестным
- •Лекция 20
- •20. Электронные таблицы ms Excel. Форматирование данных. Операции с большими таблицами и листами
- •20.1. Форматирование данных
- •20.1.1. Форматирование текста
- •20.1.2. Форматирование чисел
- •К сожалению за одно обращение к окну Специальная вставка можно скопировать только один элемент. Поэтому для копирования нескольких элементов приходится несколько раз выполнять команду
- •20.2. Операции с большими таблицами
- •Скрытие столбцов и строк
- •Формат – Столбец – Отобразить.
- •Деление окна
- •На рис.20.1 выделена ячейка f5, которая делит окно на четыре области. Выделенная ячейка размещена в верхнем левом углу правой нижней области.
- •Для снятия деления необходимо выполнить операции с пунктами меню Окно – Снять разделение
- •Закрепление областей
- •20.3. Операции с рабочими листами
- •Переименование листов
- •Выделение группы листов
- •20.4. Печать
- •Лекция 21
- •21. Базы данных. Основные понятия и определения
- •21.1. Форма хранения информации
- •Реляционная модель базы данных
- •Структура таблиц базы данных
- •21.2.2. Индексы базы данных
- •21.2.3. Связи базы данных
- •Главная таблица
- •21.3. Основные виды работы с базами данных
- •Лекция 22
- •22. Система управления базой данных ms Access
- •22.1. Назначение и возможности субд ms Access
- •22.2. Запуск и завершение работы программы ms Access
- •23.3. Типы данных
- •22.4. Разработка и создание базы данных
- •22.4.1. Разработка структуры базы данных
- •22.4.2. Имена полей и объектов
- •22.5. Создание новой базы данных средствами субд ms Access
- •22.5.1.Создание таблиц базы данных с помощью мастера таблиц Под созданием базы данных подразумевается создание системы связанных таблиц с именами и заголовками полей, со значениями атрибутов в полях.
- •22.5.2. Создание таблиц в режиме конструктора
- •22.5.3. Создание связей
- •23.1.1. Создание формы в режиме автоформ
- •23.1.2. Создание формы в режиме мастера форм
- •В последнем окне мастера
- •При выборе варианта Изменить макет формы произойдет переключение в режим конструктора, в котором можно выполнить любую модификацию формы, созданной мастером.
- •23.1.3 Ввод и редактирование записей с помощью формы
- •23.1.4. Простейшие модификации формы с помощью конструктора
- •23.2. Поиск и запросы
- •23.2.1. Поиск и фильтрация данных
- •После этого следует задать образцы поиска и замены, установить параметры поиска и щелкнуть по нужной кнопке Найти далее, Заменить или Заменить все.
- •23.2.2. Применение фильтра
- •23.3. Типы запросов
- •Запрос на выборку
- •Запрос на изменение
- •Перекрестный запрос
- •23.3.1. Создание запроса на выборку
- •23.3.1.1. Создание запроса с помощью мастера
- •23.3.1.2. Создание запроса с помощью конструктора
- •23.3.2. Выполнение запроса
- •23.3.3. Модификация запроса
- •Лекция 24
- •24. Создание отчетов в ms Access. Презентация
- •24.1. Создание отчетов
- •24.1.1. Режим автоотчета
- •24.1.2. Создание отчета с помощью мастера
- •24.1.3. Модификация отчета в режиме конструктора
- •24.2. Печать отчета
- •Файл – Параметры страницы
- •Файл – Печать – Параметры печати
- •24.3. Презентация. Основные представления
- •24.3.4. Простейшие настройки программы ms Power Point
- •Лекция 25
- •25. Компьютерные сети. Основные представления
- •25.1. Линии связи
- •25.2. Компьютерные сети
- •25.3. Топология компьютерных сетей
- •25.4. Пропускная способность сетей
- •Функциональные структуры компьютерных сетей
- •Лекция 26
- •26. Интернет, общие представления. Основы работы в Интернете
- •26.1. Основные понятия и определения
- •26.1.1. Протоколы Интернет
- •26.1.3. Доменные адреса
- •26.1.4. Узел Интернета
- •26.1.5. Получение доступа к Интернету
- •26.1.6. Вход в Интернет
- •26.2. Информационные ресурсы Интернет
- •Основными представителями гипертекстовых документов являются Web – страница и сайт.
- •26.2.2. Адрес ресурса
- •Фактически url является адресом запрашиваемого ресурса в Интернете или просто адресом ресурса.
- •В общем случае url имеет достаточно сложную структуру. В простейших случаях, при запросе наиболее популярных ресурсов, например, для доступа к начальным страницам сайтов, url содержит:
- •26.3. Электронная почта
- •26.3.1. Сообщения
- •Структура сообщений
- •27.2. Операции с исходящими сообщениями
- •27.3. Операции с входящими сообщениями
- •27.4. Электронные доски объявлений
- •27.5. Телеконференции
- •27.6. Пересылка файлов
- •27.7. Интернет – пейджеры
- •27.8. Базы данных в Интернет
- •27.9. Обозреватели сети Интернет
- •Сервис – Свойства обозревателя
- •Запрос ресурса
- •Кодировка текста Web – страницы
- •Перемещение по гиперссылкам
- •Папка Избранное
- •Лекция 28
- •28. Создание Web – страниц. Поисковые системы
- •28.1. Создание Web – страниц
- •28.3. Загрузка файлов из сети Интернет
- •28.4. Работа с почтовым сайтом
- •28.5. Программа Outlook Express
- •28.5.1. Запуск и интерфейс программы Outlook Express
- •28.5.2. Создание учетной записи
- •28.5.4 Создание и отправка сообщения
- •– Щелкнуть по кнопке Создать сообщение, что вызовет появление окна, которое будет содержать бланк сообщения и необходимый инструментарий для его создания;
- •28.5.5. Разметка и форматирование сообщений
13.2. Ввод символьных массивов
Символьные массивы можно вводить путем инициализации при описании. Синтаксис:
-
сhar имя массива[размер]={‘c1’,’c2’,’c3’, …, ‘cn’};
Здесь с1, с2, с3, …, cn – символы, из которых состоит массив.
Можно инициализировать символьный массив по–другому:
-
сhar имя массива[размер]={“символы”};
Например: сhar В[10]={“ЭАПУ2008”};
В этом случае компилятор автоматически добавляет в конце строки null, означающее число 0. null является признаком окончания строки. Последовательность символов, заключенная в кавычки называется строкой. Строка всегда заканчивающаяся нулем. В приведенном примере под символьный массив ЭАПУ2008 фактически будет использовано не восемь (по количеству символов), а девять позиций. Девятую позицию будет занимать символ признака окончания строки 0.
Можно инициализировать символьный массив без указания размера массива. Например:
char name[ ] = “Ivanov”;
Здесь не указан размер массива (квадратные скобки пустые). Он устанавливается по факту плюс позиция под знак признака окончания строки. В приведенном примере это соответствует семи позициям. Такая форма инициализации удобна тем, что избавляет от необходимости подсчитывать количество позиций для массива.
13.3. Операции со строками
В отличие от числовых переменных строки нельзя сравнивать и применять к ним операцию присваивания. Например, пусть описаны два следующих символьных массива:
char A[ ]= “ЭАПУ2008а”;
char B[ ]= “ЭАПУ2008б”;
Операция А = В в этом случае не будет выполняться даже, несмотря на то, что размеры этих массивов одинаковы.
В языке С++ имеются специальные функции для работы с символьными (строковыми) массивами. Все они содержаться в стандартной библиотеке языка С++, в заголовочном файле string.h и stdlib.h. Ниже приводятся часто употребляемые функции из этой группы.
Функция sizeof ( )
Функция sizeof ( ) определяет размер массива. Оператор вызова этой функции устанавливает размер описанного массива в виде целого числа. Использование этой функции очевидно для случая описания массива в виде:
char S[ ]= “Результаты вычисления токов в разветвляющихся цепях”;
Определить количество символов в этом массиве можно, но это утомительно и иногда может привести к ошибке.
Другую причину применения этой функции можно увидеть, например, при отладке программы, когда первоначальный размер массива, например, 40 в окончательной версии будет иметь 50. Это означает, что во всех местах программы, где используется размер массива, следует вносить изменения. Например:
char MS[40];
. . . . . . . . . . . .
for (i= 0; i < 40; i ++)
. . . . . . . . . . . . . . . . . . .
Если этот фрагмент программы заменить следующим, то легко можно избежать уже вышеупомянутых осложнений.
char MS[40];
. . . . . . . . . . . .
for (i= 0; i < sizeof(MS); i ++)
. . . . . . . . . . . . . . . . . . .
Функция strlen( )
Эта функция определяет длину строки (без учета символа null). Например:
char S1[50]=”Характеристики электродвигателей”;
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cout << strlen(S1);
На экран будет выведено число 32. Пробел также так же кодируется, как и другие символы, и учитывается как символ. Размер строки 32 и размер массива 50, как видно, не одно и то же. 50 – это предельный размер массива. Длина строки может принимать различные размеры, но не превышать размер массива. Для указанного размера массива 50 предельная длина строки составит 49 (плюс символ null).
Функция strcmp( )
Эта функция посимвольно сравнивает две строки в соответствии с алфавитом и учетом регистра, то есть различает строчные и прописные буквы (А и а). Сравнение ведется до первой пары неодинаковых символов. После этого процесс сравнения прекращается и делается заключение о сравниваемых строках по результату сравнения неодинаковых символов пары, на которой прекратился процесс сравнения. Дальнейшие символы уже не рассматриваются. Не следует путать сравнение длин строк и посимвольное сравнение. Например, сравниваются две строки:
char S1[ ]= “abcd”;
char S2[ ]= “abdc”;
strcmp( S1, S2);
Результатом сравнения будет то, что строка S1 меньше строки S2. При по–парном сравнении символов обнаружится их различие в третьей паре: c и d. Код символа с меньше, чем код символа d, поскольку с стоит в алфавите раньше, чем d.
При сравнении строк возможны три варианта результата:
-
если строки S1= S2, то функция возвращает в качестве результата число 0;
-
если S1 < S2, то результатом будет отрицательное целое число;
-
если S1 > S2, то результатом будет положительное целое число.
Функция stricm( )
Эта функция сравнивает две строки посимвольно в соответствии с алфавитом, но без учета регистров символов. Здесь символы а и А воспринимаются одинаковыми. Процесс сравнения аналогичен тому, какой и в функции strcmp( ) и форма представления результата та же. Пример вызова функции:
stricm ( S1, S2);
Функция strcpy( )
Это функция позволяет копировать одну строку в другую. При этом необходимо соблюдать следующее условие: строка, которая копируется должна быть меньшей или равной той строке, в которую совершается копирование. Это объясняется тем, что строку меньшего размера всегда можно поместить в строке большего размера. В противном случае возникает ошибка. Пример:
char S1[ ] =”Ivanov”;
char S2[ ] =”Sidorov”;
. . . . . . . . . . . . . . . . . . .
strcpy(S2, S1 );
В скобках функции strcpy( ) в качестве первого аргумента должна записываться строка, куда осуществляется копирование (S2), а строка, которая копируется (S1), записывается на втором месте. В результате содержание строки S2 удаляется, и на его месте помещается значение строки S1. То есть будет:
S1[ ] =”Ivanov”;
S2[ ] =”Ivanov”;
Копирование строки S2 (Sidorov) в строку S1 (Ivanov) приведет к ошибке, так как S2 > S1.
Следить за размерами строк – обязанность программиста.
Функция strcat ( )
Эта функция подсоединяет одну строку к другой. Операция подсоединения строк называется конкетацией.
Пример:
char S1[ ] =”abcd”;
char S2[ ] =”klm”;
. . . . . . . . . . . . . . . . . . .
strcat(S1, S2 );
Здесь S1 – строка, к которой подсоединяется, а S2 – строка, которая подсоединяется. В результате работы функции к первой строке подсоединяется вторая и получается новое содержание строки S1 – abcdklm.
Функция atoi ( )
Эта функция преобразовывает символьный массив в целое число. Как известно каждая цифра (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) может быть представлена символом. Поэтому любое число, хранящееся в компьютере, быть представлено набором символов и наоборот. Функция atoi ( ) как раз и преобразовывает символьный массив в число. Если массив состоит не из цифр, то функция возвращает ноль.
Синтаксис функции:
int atoi (char S[ ]);
Например:
cout << atoi(S);
Функция atof ( )
Эта функция преобразовывает символьный массив в вещественное число с плавающей точкой.
Синтаксис функции:
float atof (char S[ ]);
Функция itoa ( )
Эта функция преобразовывает целое число в символьный массив.
Синтаксис фнкции:
itoa (int m, char S[ ], int dec);
Здесь
-
m – целое число, которое преобразуется в символьный массив,
-
S – результирующий символьный массив,
-
dec – основание десятичной системы счисления.
Пример:
int k = 25;
char S[20];
. . . . . . . . . .
itoa(k, S, 10);
Функции itoa( ), atof( ), itoa( ) содержатся в заголовочном библиотечном файле stdlib.h.