- •2. Понятие информатики и информации. Понятие об информации и её измерение.
- •2.8. Виды и свойства информации.
- •2.9. Мера количества информации. Семантическая, синтаксическая и прагматическая меры. Информационная энтропия. Формула Шеннона
- •2.11. Автоматизированная система управления
- •2.13.Информатика. Задачи информатики. Информация. Характеристики информации.
- •2.14. Безопасность и защита информации
- •2.15. Виды угроз с точки зрения защиты информации
- •2.16. Резервирование информации. Raid – массивы.
- •2.17. Криптографические системы шифрования. Симметричные и ассиметричные методы.
- •2.18. Задачи информатики
- •2.19. Кодирование информации. Представление видео, аудио и текстовой информации. Теорема Котельникова. Ацп и цап. Дискретизация. Квантование. Кодовые страницы.
- •2. Принципы фон Нэймана и архитектура эвм
- •3.История развития вычислительной техники. Поколения эвм.
- •4 Основные устройства компьютера: материнская плата.
- •5.Основные устройства компьютера:процессор
- •6.Основные устройства компьютера: оперативная память
- •7.Основные устройства компьютера: системная шина
- •8. Основные устройства компьютера: устройства ввода- вывода
- •9. Основные устройства компьютера: устройства хранения информации
- •10.Система прерываний эвм
- •11. Информация, её виды и свойства. Непрерывная и дискретная информация. Единицы количества информации: вероятностный и объёмный подходы.
- •12.Представление числовой информации. Позиционные системы счисления и их назначения: десятичная, двоичная, восьмеричная и шестнадцатеричная. Правила перевода чисел из одной системы счисления в другую.
- •Двоичная система счисления
- •13. Двоичная система счисления как базовая система представления и хранения числовой информации в компьютере. Единицы двоичной информации и их назначение: бит, байт, машинное слово.
- •18. Модель открытой системы osi. Семь уровней. Протоколы
- •1.Системное по. Операционные системы и их назначение. Основные функции: управление процессором, памятью, устройствами ввода/вывода, процессами и заданиями пользователя.
- •Функции ос
- •3.Режимы организации вычислительного процесса.
- •5. Инструментальное по. Компиляторы и интерпретаторы языков программирования. Типовая технология создания программы
- •9.Кодирование информации. Префиксный код Хаффмана.
- •2.Концепция типов данных в с. Базовые типы данных. Характеристика типа: множество допустимых значений, формат представления в памяти, размер занимаемой памяти, допустимый набор операций.
- •3.Определение переменных в с. Определение констант. Инициализация переменных.
- •Int k; // это переменная целого типа int
- •4. Ввод и вывод данных. Универсальные функции ввода и ввода.
- •5. Выражения и операции: арифметические, сравнения, логические, поразрядные. Особенности выполнения операций в выражениях. Библиотека математических функций компилятора Borland с.
- •6.Базовые управляющие структуры: следование, ветвление, цикл, вызов подпрограммы. Нисходящее и пошаговое проектирование алгоритма программы.
- •7.Алгоритм линейного поиска значений в одномерном массиве. Поиск с барьером.
- •8. Алгоритм двоичного поиска значения в одномерном массиве.
- •9. Сортировки. Внешние и внутренние. Устойчивые и неустойчивые.
- •10. Основные методы сортировки: метод обмена.
- •11.Основные методы сортировки: метод вставки
- •12.Основные методы сортировки: метод выбора
- •13.Поиск минимального и максимального элементов
- •14. Вставка и удаление элементов
- •15. Файлы произвольного и последовательного доступа. Работа с файлами в с
- •6.Принцип программного управления. Функциональная и структурная организация компьтера.
- •6.1. Органиация открытой компьютерной архитектуры
- •6.2.Схема с общей шиной
- •6.4. Функционирование процессора
- •6.5.Организация оперативной памяти
- •6.7.Контроль оперативной памяти
- •6.9.Прерывание
- •6.13.Описать событие «прерывание выполняется»
- •6.14. Описать событие «прерывание пришло»
- •6.15. Организация внешних устройств
- •6.18.Обмен по запросу
- •6.21.Канальная программа
- •6.23.Организация винчестера
11.Основные методы сортировки: метод вставки
Здесь основная идея в том, чтобы вставить следующий не отсортированный элемент в нужную позицию уже отсортированного диапазона. На практике это выглядит так:
сортируем первые два элемента
смотрим третий элемент и вставляем его в нужную позицию по отношению к первым двум
Продолжаем процесс до конца сортируемого множества.
const int n=10;
int a[n], i, j;
...
for (i=1; i<=n-1; i++)
{
x=a[i];
j=i-1;
while (j>=0 && a[j]>x)
{
a[j+1]=a[j];
j--;
}
a[j+1]=x;
}
12.Основные методы сортировки: метод выбора
В этом алгоритме основная идея заключается в том, чтобы на каждом проходе найти наименьший или наибольший элемент и поменять его с первым или последним не отсортированным элементом в зависимости от условия сортировки.
const int n=10;
int a[n], i, j, imin;
...
for (i=0; i<n-1; i++)
{
imin=i;
for (j=i+1; j<n; j++)
if (a[j]<a[imin])
imin=j;
int t=a[i];
a[i]=a[imin];
a[imin]=t;
}
13.Поиск минимального и максимального элементов
const int n; // n - количество элементов в массиве
int a[100]; // a - массив целых чисел, максимальный размер 100 элементов
cin >> n;
for (int i = 0; i < n; i++) // ввод массива
cin >> a[i];
int m = a[0];
for (int i = 0; i < n; i++)
if (a[i] < m)
m = a[i];
cout << m; // вывод минимального значения
const int n; // n - количество элементов в массиве
int a[100]; // a - массив целых чисел, максимальный размер 100 элементов
cin >> n;
for (int i = 0; i < n; i++) // ввод массива
cin >> a[i];
int m = a[0];
for (int i = 0; i < n; i++)
if (a[i] > m)
m = a[i];
cout << m; // вывод максимального значения
14. Вставка и удаление элементов
Вставка:
const int maxn=10;
int a[maxn], n, x, k, i;
...
cin>>k;
//k – номер элемента, после которого будет производиться вставка нового элемента
cin>>x;
//x – значение нового элемента
for (i=n-1; i>k+1; i--)
a[i]=a[i-1];
a[k+1]=x;
Удаление:
const int maxn=10;
int a[maxn], n, k, i;
...
cin>>k; //номер элемента, который будет удален
for (i=k; i<n; i++)
{
a[i-1]=a[i];
}
15. Файлы произвольного и последовательного доступа. Работа с файлами в с
Файлы с произвольным доступом — файлы, хранящие информацию в структурированном (для поиска и обращения) виде. Поиск в таких файлах осуществляется в области адресов (ключей) и завершается обращением непосредственно к искомому участку.
Последовательные файлы — файлы, хранящие информацию в неструктурированном (для поиска и обращения) виде. Поиск в таких файлах осуществляется последовательным считыванием файла с начала и сравнением «всего» с искомым. Так же и обращение к определённому участку файла каждый раз требует «чтения с начала».
Примером последовательных файлов являются текстовые файлы (*.txt)
Последовательные файлы выигрывают у файлов с произвольным доступом по компактности, но проигрывают по скорости доступа.
Файлы с последовательным доступом читаются от начала к концу, поэтому невозможно одновременно и считывать из них данные, и записывать таковые. Обычно информация из текстового файла считывается вся в память и сохраняется вся в файле после окончания работы с ней. Чтобы изменить одну запись файла последовательного доступа, его нужно весь записать заново. Если же приложению требуется частый доступ к данным, хранящимся в некотором файле, следует использовать файлы с произвольным доступом.
Работа с файлами в С:
Библиотека работы с файлами - <stdio.h>
FILE *f; - задание переменной файлового типа
fopen(“C:\\input.txt”,”wt”) – функция открытия файла, у неё два параметра: первый -- это путь к файлу (строка), второй -- параметры открытия файла.
Параметры открытия файла состоят из двух частей: тип операции w – запись, r – чтение, a – дозапись, если к этим символам добавить знак «+», то тогда можно выполнять и противоположное действие (н-р r+ обозначает не только чтение, но и запись); тип файла t – текстовый файл, b – бинарный (двоичный) файл.
Закрывается файл с помощью функции fclose();
Запись текстовой строки в файл выполняет функция fprintf(): fprintf( имя-файловой-переменной, формат, список-переменных-для-вывода );
Для ввода данных (текстовой строки) используют функцию fscanf():
fscanf( файловая-переменная, формат-ввода, список-адресов-переменных );
функция feof(файловая-переменная) возвращает 1 (истинное значение), если файл, открытый для считывания, закончился. Она возвращает 0, если из файла еще можно продолжать ввод.