
- •Экзамен по информатике
- •Цели программирования.
- •Области языков программирования. Научные приложения.
- •Области языков программирования. Коммерческие приложения.
- •Области языков программирования. Искусственный интеллект.
- •Области языков программирования. Системное программирование.
- •Области языков программирования. Языки сценариев.
- •Области языков программирования. Web-программирование.
- •Уровни языков программирования. Машинные языки (история возникновения, отличительные особенности, пример языков).
- •Уровни языков программирования. Языки ассемблера (история возникновения, отличительные особенности, пример языков).
- •Уровни языков программирования. Языки высокого уровня (история возникновения, отличительные особенности, пример языков).
- •Методы реализации программ. Компиляция (схема получения результата из исходного кода, преимущества и недостатки, сравнительная таблица).
- •Методы реализации программ. Интерпретация (схема получения результата из исходного кода, преимущества и недостатки, сравнительная таблица).
- •Методы реализации программ. Смешанная реализация (схема получения результата из исходного кода, преимущества и недостатки, сравнительная таблица).
- •Методы реализации программ. Трансляция (схема получения результата из исходного кода, преимущества и недостатки, сравнительная таблица).
- •Жизненный цикл программного продукта.
- •Этапы решения задач на эвм.
- •Цикл с параметром
- •Пример 1
- •Пример 2
- •Способы записи алгоритма. Псевдокод.
- •Пример 1
- •Пример 2
- •Рекомендации
- •Сравнение примеров
- •Способы записи алгоритма. Сравнение различных подходов. Выгоды использования блок-схем и псевдокода
- •Только псевдокод
- •Концепция памяти.
- •Принципы типизации данных.
- •Тип данных bool
- •Тип данных char
- •Целочисленные типы данных
- •Типы данных с плавающей точкой
- •Иерархия простых типов данных.
- •Стандартные типы данных. Таблица характеристик. Особенности выбора типа.
- •Правила приведения типов.
- •Пример, использующий преобразование типов
- •Оператор sizeof.
- •Переменные (объявление, инициализация, присвоение).
- •Константы. Специальные символы. Квалификатор const.
- •Область видимости переменных.
- •Операторы управления областью видимости.
- •Группы операций (особенности записи, таблица приоритетов)
- •Понятие ассоциативности, приоритета, размерности. Таблица приоритета операций.
- •Арифметические операции.
- •Логические операции (краткая схема вычислений).
- •Побитовые операции (таблицы истинности). Побитовые логические операции
- •Побитовое отрицание (not)
- •Побитовое и (and)
- •Побитовое или (or)
- •Сложение по модулю два (xor)
- •Другие побитовые логические операции
- •Битовые сдвиги
- •Принципы структурного программирования.
- •Структурное программирование: три базовые конструкции.
- •Основные операторы.
- •Параметры по-умолчанию.
- •Перегрузка функций.
- •Файлы (понятие, текстовые и двоичные файлы, структурированные и неструктурированные, операции, основные библиотеки для работы с файлами).
- •Режимы открытия файлов
- •Потоковый ввод-вывод. Библиотека потокового ввода-вывода. Вступление.
- •Консольный ввод/вывод.
- •Форматирование.
- •Потоковый ввод/вывод пользовательских типов.
- •Файловый ввод/вывод.
- •Файловый ввод-вывод. Стандартная библиотека ввода-вывода.
Концепция памяти.
Имена переменных, такие, как a, b и c в действительности соответствуют областям памяти компьютера. Каждая переменная имеет имя, тип, размер и значение.
При выполнении оператора
cin >> a;
значение, введённое пользователем, помещается в область памяти, которой компилятор присвоил имя a. Допустим, пользователь вводит число 5, как значение a. Компилятор разместит 5 в области памяти a.
Распределение памяти
Всякий раз, когда значение помещается в область памяти, оно замещает предыдущее значение, хранившееся в этом месте. Другими словами предыдущее значение пропадает.
Возвращаясь к нашей программе сложения, допустим, что при выполнении оператора
cin >> b;
пользователь вводит значение 4. Это значение помещается в область памяти b и теперь распределение памяти выглядит так:
Заметим, что соседство этих областей в памяти необязательно.
Когда программа получила значения a и b, она складывает их и помещает сумму в переменную c. Оператор
c = a + b;
выполняет сложение и подразумевает уничтожение предыдущего значения c. Это происходит, когда вычисленное значение суммы помещается в область памяти c. После вычисления распределение памяти выглядит следующим образом:
Заметим, что значения a и b использовались, но не пропали во время, когда компьютер выполнял вычисления. Таким образом, считывание значений из памяти – процесс неразрушающий.
Принципы типизации данных.
|
|
|
В данном разделе будут рассмотрены основные типы данных в С++, эти типы данных ещё называются встроенными. Данный раздел создан для общего ознакомления с основными типами данных в С++. Язык программирования С++ является расширяемым языком программирования. Понятие расширяемый означает то, что в языке программирования, кроме встроенных типов данных, можно создавать свои типы данных. Поэтому в С++ существует огромное количество типов данных. Мы будем изучать только основные типы данных в С++.
Таблица 1 - Типы данных С++ |
||
Зарезервированное слово |
Размер занимаемой памяти(байт) |
Диапазон принимаемых значений |
целочисленный (логический) тип данных |
||
bool |
1 |
0 / 255 |
целочисленный (символьный) тип данных |
||
char |
1 |
0 / 255 |
целочисленные типы данных |
||
short int |
2 |
-32 768 / 32 767 |
unsigned short int |
2 |
0 / 65 535 |
int |
4 |
-2 147 483 648 / 2 147 483 647 |
unsigned int |
4 |
0 / 4 294 967 295 |
long int |
4 |
-2 147 483 648 / 2 147 483 647 |
unsigned long int |
4 |
0 / 4 294 967 295 |
типы данных с плавающей точкой |
||
float |
4 |
-2 147 483 648.0 / 2 147 483 647.0 |
long float |
8 |
-9 223 372 036 854 775 808 .0 / 9 223 372 036 854 775 807.0 |
double |
8 |
-9 223 372 036 854 775 808 .0 / 9 223 372 036 854 775 807.0 |
В таблице 1 представлены основные типы данных в С++. Вся таблица делится на три столбца. В первом столбце указывается зарезервированное слово в С++, которое будет определять, каждое свой, тип данных. Во втором столбце указывается количество байт, которое отводится под переменную с соответствующим типом данных. В третьем столбце показан диапазон допустимых значений для каждого типа данных. Обратите внимание на то, что в таблице все типы данных расположены от меньшего к большему.