- •Конспект лекций
- •Введение
- •Лекция 1. Информация и информационные технологии. Основные понятия. Предмет информатики
- •Информация Определение и измерение информации
- •Свойства информации
- •Информация и данные
- •Кодирование данных в компьютере
- •Измерение компьютерных данных
- •Лекция 2 Арифметические основы компьютеров Системы счисления
- •Перевод чисел в десятичную систему счисления
- •Поразрядный перевод чисел из одной системы счисления в другую
- •Перевод целых десятичных чисел в другую систему счисления
- •Перевод правильной десятичной дроби в другую систему счисления
- •Двоичная арифметика
- •Представление чисел в компьютере Целые числа без знака
- •Целые числа со знаком
- •Вещественные числа
- •Лекция 3 Технические средства информационных технологий Классификация
- •Устройство персонального компьютера
- •Системный блок
- •Материнская плата
- •Центральный процессор
- •Архитектура процессора
- •Система команд процессора
- •Оперативная память
- •Постоянная память
- •Лекция 4
- •Операционные системы
- •Файловая система. Основные определения
- •Операционная система ms dos
- •Загрузка компьютера с операционной системой ms dos
- •Командный язык операционной системы msdos и Windows
- •Dir [дисковод] [путь] [ключи]
- •Md [дисковод:] [путь]
- •Copy [дисковод:] полное_имя_1 [дисковод:] полное_имя_2
- •Ren [дисковод:] имя файла1 имя файла2
- •Линейный алгоритм
- •Ветвящийся алгоритм
- •Циклический алгоритм
- •Алгоритмы накопления суммы и произведения
- •Алгоритм табулирования функции
- •Алгоритм поиска экстремальных значений (max, min)
- •Лекция 6 Язык программирования Microsoft Qbasic Набор символов языка:
- •Классификация данных
- •Ограничения значений переменных
- •Операции
- •Выражения
- •Стандартные функции действия над числами
- •Операторы
- •Оператор восстановления данных restore
- •Оператор input
- •Input считывает входные данные от клавиатуры или из файла.
- •Input ["приглашение"{; | ,}] список переменных
- •Вывод данных Операторы print, lprint, print using, функции spc и tab
- •Функции spc и tab
- •Тав: print tab (выражение1); выражение2
- •Оператор форматированного вывода
- •Print using формат; список выражений [{;|,}]
- •Оператор позиционирования курсора locate
- •Лекция 7 Управление ходом выполнения программы Организация цикла
- •Оператор цикла for … next
- •Оператор цикла do … loop
- •Print "Значение I в конце цикла равно "; I
- •Оператор цикла без счетчика while …wend
- •Операторы изменения хода выполнения программы
- •Оператор выбора select case
- •Оператор exit
- •Оператор swap
- •Функции действия над строками
- •Лекция 8 Алгоритмы решения математических задач Решение уравнений методом итерации
- •Решение уравнений методом простой итерации
- •Input “Введите точность”, e
- •Input “Введите начальное значение х”, х
- •Input “Введите точность”, e
- •Input “Введите начальное значение х”, х
- •Итерационное решение уравнений методом половинного деления
- •Input “Введите точность”, e
- •Оператор описания массивов Одномерные массивы
- •Статические и динамические массивы
- •Оператор option base
- •Способы ввода значений элементов массива
- •Оператор rnd
- •Randomize [число].
- •Алгоритм формирования и печати исходного массива
- •Алгоритм поиска максимального и минимального значений в массиве s(n)
- •Алгоритмы сортировки массива Сортировка выбором мах (или мin)
- •Сортировка вставками
- •Метод «пузырька»
- •Лекция 10 Описание и обработка матриц
- •Input “ введите значение”, a(I,j)
- •Лекция 11 Алгоритмы компьютерной графики
- •Текстовый режим
- •Операторы графики
- •Построение графиков математических функций
- •Этапы построения графика функции
- •Оператор circle вывода окружностей, дуг, эллипсов
- •Circle (X, y), r, [цвет], [Dn], [Dk], [z]
- •Цвет в графике
- •Оператор рисования объекта.
- •Построение диаграмм
- •Этапы работы при создании рисунка
- •Эффект мультипликации
- •Лекция 13 Работа с файлами Назначение файлов
- •Физическая и логическая организации файлов
- •Способы доступа к файлам
- •Действия с файлами
- •Оператор open открытия файла
- •Режимы работы с файлами
- •Номер файла
- •Чтение данных из файла прямого доступа и бинарного файла оператором get
- •Get [#]номер_файла [,[номер_записи][, переменная]] ,
- •Чтение данных из файла последовательного доступа оператором input
- •Запись данных в файл прямого доступа и бинарный файл оператором put
- •Закрытие файла
- •Удаление файлов
- •Лекция 14 Приемы модульного программирования
- •Процедуры
- •Input “Введите размерность массива ”; n
- •Процедурные языки (с, basic, fortran, pascal и др.)
- •Функциональные языки
- •Логические языки (лисп, пролог)
- •Трансляторы
- •Лекция 15 Разработка сложных программ
- •Методологии и технологии проектирования ис Общие требования к методологии и технологии
- •Лекция 16 Компьютерные сети. Архитектура построения
- •Масштабы компьютерных сетей
- •Топологии компьютерных сетей
- •Топология типа «звезда»
- •Коммутируемая топология
- •Сложные топологии
- •Методы передачи компьютерных данных Кадры и протоколы
- •Кадр Ethernet стандарта ieee 802.3
- •Кадр Token Ring стандарта 802.5
- •Примеры протоколов.
- •Лекция 17 Основные компоненты компьютерных сетей
- •Линии связи
- •Коммуникационное оборудование
- •Литература
- •Словарь понятий
Randomize [число].
[Число] –это число, используемое для инициализации генератора случайных чисел. Если оно не указано, то RANDOMIZE его запрашивает. Рекомендуется в качестве такого числа брать показания таймера. В этом случае в программе (до применения оператора RND, обычно в начале программы) следует записать – RANDOMIZE TIMER
Если надо, чтобы вырабатываемые числа лежали в интервале [-N; N], то можно применить выражение
2*N*RND - N
Если надо, чтобы вырабатываемые числа лежали в интервале [0; N], то надо применить выражение
N*RND
Если надо, чтобы вырабатываемые числа лежали в интервале [-N; N-1] и были целыми, то можно применить выражение INT(2*N*RND - N) и т. д.
Алгоритм формирования и печати исходного массива
CLS
RANDOMIZE TIMER
PRINT “Введите размер массива “;
INPUT N
DIM S(N)
PRINT “Исходный массив:”
FOR I=0 TO N
S (I) = INT(200*RND - 100)
PRINT S (I),
NEXT I
Алгоритм поиска максимального и минимального значений в массиве s(n)
MAX = S (0): J = 0
MIN = MAX: K = 0
FOR I=1 TO N
IF S (I) > MAX THEN MAX = S (I): J = I
IF S (I) < MIN THEN MIN = S (I): K = I
NEXT I
PRINT “ MAX =”; S (J), “MIN =”; S (K)
END
Таким образом, максимальный элемент массива - S (J), минимальный - S (K ).
Минимальные и максимальные значения массива можно получить, отсортировав массив. Например, в случае сортировки массива по возрастанию первый элемент массива – минимальный, а последний – максимальный.
Алгоритмы сортировки массива Сортировка выбором мах (или мin)
Сортировка массива – это упорядочение по возрастанию или убыванию значений его элементов в соответствии с их индексом.
Алгоритм основан на определении и выборе минимального элемента вначале из всего массива, потом – из оставшегося и так последовательно до исчерпания всего массива. Выбираемые элементы вставляются по порядку в начало массива: сначала самый малый, затем минимум, найденный вторым и т. д. В итоге мы получаем отсортированный по возрастанию массив.
Если мы хотим иметь массив, отсортированный по убыванию, то соответственно находим и ставим последовательно в начало массива элементы с максимальными значениями.
FOR I = 1 TO N-1
MIN = S(N)
K=N
FOR J = N TO I STEP –1
IF S(J) < MIN THEN MIN= S(J): K=J
NEXT J
SWAP S(K), S(I)
NEXT I
‘Вывод отсортированного массива
FOR I = 1 TO N
PRINT S(I); “ “;
NEXT I
END
Сортировка вставками
Идея сортировки вставками в том, что начинают формировать новый отсортированный массив. И когда там помещено i элементов, то i + 1 элемент размещают среди них так, чтобы не нарушить порядок последовательности.
. . . . . . . . . . . . . . .
FOR J = 2 TO N
I = J – 1
DO
IF A(I + 1) < A(I) THEN SWAP A(I + 1), A(I): I = I - 1
ELSE
I = 0
END IF
LOOP WHILE I <> 0
NEXT J
‘Вывод отсортированного массива
FOR I = 1 TO N
PRINT S(I); “ “;
NEXT I
END
Метод «пузырька»
FOR I = 1 TO N-1
FOR J = 1 TO N-1
IF A(J + 1) < A(J) THEN SWAP A(J + 1), A(J)
NEXT J
NEXT I
‘Вывод отсортированного массива
FOR I = 1 TO N
PRINT S(I); “ “;
NEXT I
END
Приведенные алгоритмы называются квадратичными – т. к. они требуют порядка n*n действий. Существуют ряд алгоритмов сортировки, требующих выполнения меньшего числа операций. Но программы, реализующие эти алгоритмы, содержат большее количество операторов, чем в приведенных примерах.