Содержание
- 2. Алгоритм – последовательность действий, направленных на достижение конкретного результата
- 3. Программа – последовательность команд (инструкций), выполняемых процессором и описывающих алгоритм на языке программирования
- 4. Данные – информация, которая обрабатывается в процессе выполнения программы
- 5. Современные языки программирования
- 6. Машинный код
- 7. Ассемблерный код
- 8. Код на языке С
- 9. Код на языке С#
- 10. Основные преимущества языков низкого уровня Прямой доступ к аппаратным ресурсам Малый размер исполняемого файла Высокая скорость
- 11. Основной недостаток языков низкого уровня – сложность программирования из-за огромных размеров исходного кода
- 12. Главное преимущество языков высокого уровня – быстрота разработки сложных программных продуктов
- 13. Основные недостатки языков высокого уровня Ограниченный доступ к аппаратным ресурсам Большой размер исполняемого файла Сравнительно невысокая
- 14. Основные этапы разработки программы Постановка задачи Проектирование Кодирование
- 15. На этапе постановки задачи программист выясняет у заказчика требования к программе
- 16. На этапе проектирования программист выбирает алгоритм для написания программы
- 17. На этапе кодирования программист переводит алгоритм на какой-либо язык программирования
- 18. Этапы создания исполняемого файла (.exe)
- 19. Препроцессор включает в исходный текст программы заголовочные файлы, содержащие описания используемых элементов
- 20. Компилятор выявляет синтаксические ошибки и, в случае их отсутствия, строит объектный модуль (.obj)
- 21. Компоновщик формирует исполняемый модуль программы (.exe) из объектных модулей (.obj) и библиотечных файлов (.lib)
- 22. Литералы Строковый Символьный Целочисленный Вещественный Логический
- 23. Строковый литерал – последовательность символов, заключенная в двойные кавычки “The C++ Programming Language”
- 24. Символьный литерал – одиночный символ, заключенный в одинарные кавычки ‘!’ ‘A’ ‘8’
- 25. Целочисленный литерал – любое положительное или отрицательное целое число -15 100 OxFF
- 26. Вещественный литерал – дробное число, представленное в форме с десятичной точкой либо в экспоненциальной форме -5.7
- 27. Логический литерал true (истина) false (ложь)
- 28. Понятие переменной
- 29. Переменная – именованная область оперативной памяти, предназначенная для хранения изменяемого значения указанного типа
- 30. Типы данных Целочисленный Символьный Вещественный Логический
- 31. Целочисленные типы signed short (2 байта) -32768 … 32767 unsigned short (2 байта) 0 … 65535
- 32. Целочисленные типы unsigned int (4 байта – равен размеру машинного слова) 0 … 4 294 967
- 33. Целочисленные типы signed long long (8 байт) -9 223 372 036 854 775 808 … 9
- 34. Тип данных int строго не определён стандартом языка и должен быть равен размеру машинного слова
- 35. Размер машинного слова определяется архитектурой (разрядностью) операционной системы
- 36. Однако в соответствии со стандартом языка тип данных int не должен быть меньше short (2 байта)
- 37. Символьные типы signed char(1 байт) -128 … 127 unsigned char (1 байт) 0 … 255
- 38. Тип данных char представляет один символ в кодировке ASCII
- 39. ASCII (American standard code for information interchange) — название таблицы (кодировки), в которой символам сопоставлены числовые
- 41. Например, символу ‘D’ соответствует ASCII-код 68, а символу ‘d’ – ASCII-код 100
- 42. Вещественные типы float (4 байта) 3.4E-38 … 3.4E+38 double (8 байт) 1.7E-308 … 1.7E+308
- 43. Логический тип bool (1 байт) true false
- 44. Для того чтобы использовать в программе переменную, ее необходимо объявить
- 45. Синтаксис объявления переменных: тип_переменной имя_переменной;
- 46. Имя переменной называется идентификатором
- 47. Правила именования идентификаторов: Имя переменной не может начинаться с цифры Имя переменной может содержать буквы, цифры
- 49. Константа – именованная область оперативной памяти, предназначенная для хранения постоянного значения указанного типа
- 50. Синтаксис объявления константы: const тип_константы имя_ константы = значение;
- 51. Литералы, рассмотренные ранее, представляют собой константы, непосредственно включаемые в текст программы
- 52. Литералы отличаются от констант тем, что они не имеют идентификаторов
- 53. Ввод данных
- 54. Синтаксис ввода данных: cin >> имя_переменной;
- 56. Понятие оператора
- 57. Оператор – это конструкция языка программирования, которая выполняет определённое действие над аргументами (операндами)
- 58. Операнд - это аргумент оператора, то есть то значение, над которым оператор выполняет действие
- 59. В зависимости от количества операндов операторы бывают: Унарные Бинарные Тернарные
- 60. Оператор присваивания
- 61. Синтаксис оператора присваивания: имя_переменной = выражение;
- 63. Множественные присваивания - присваивания одного и того же значения нескольким переменным одновременно
- 64. Арифметические операторы Оператор сложения (бинарный) Оператор вычитания (бинарный) Оператор умножения (бинарный) Оператор деления (бинарный)
- 65. Арифметические операторы Оператор остаток от деления (бинарный) Оператор минус (унарный) Оператор инкремент (унарный) Оператор декремент (унарный)
- 66. Сокращённые формы операторов: += -= *= /= %=
- 67. Приведение типов
- 68. Выражение – конструкция, состоящая из операндов, объединенных знаками операций
- 69. Результат вычисления выражения характеризуется значением и типом
- 70. В выражение могут входить операнды различных типов
- 71. Если операнды имеют одинаковый тип, то результат операции будет иметь тот же тип
- 72. Если операнды разных типов, то они должны быть приведены к одному типу перед вычислением выражения
- 73. В этом случае выполняется неявное (автоматическое) расширяющее преобразование типов операндов по определенным правилам
- 74. Эти правила обеспечивают преобразование более коротких типов в более длинные для сохранения значимости и точности
- 77. Неявное расширяющее преобразование типа может также происходить при присваивании переменной результата выражения
- 78. Неявное преобразование типа при присваивании переменной результата выражения может быть сужающим
- 79. Сужающие преобразования бывают: с потерей точности (данных) с переполнением разрядной сетки с изменением интерпретации внутреннего представления
- 80. Приведение типов может быть явным
- 81. Явное приведение типов указывается программистом в коде программы
- 82. Синтаксис явного приведения типа: (тип) выражение;
- 84. Структура ветвления
- 85. Операторы отношения == (равно) != (не равно) > (больше) >= (больше либо равно)
- 86. Операторы отношения предназначены для составления логических выражений
- 87. Результат вычисления любого логического выражения – ИСТИНА или ЛОЖЬ
- 89. Логические операторы && (логическое умножение, логическое И) || (логическое сложение, логическое ИЛИ) ! (логическое отрицание, логическое
- 90. Логические операторы предназначены для объединения логических выражений
- 92. Логическое «ИЛИ» 5 == 5 || 5 == 9 // true, потому что первое выражение true
- 93. Логическое «И» 5 == 5 && 4 == 4 // true, потому что оба выражения true
- 94. Логическое «НЕ» !(10 != 10) // true, потому что выражение false !(5 > 3) // false,
- 95. Оператор ветвления «if» if (выражение) { // оператор_1; } else { // оператор_2; }
- 96. Оператор ветвления «if» if (выражение) { // оператор; }
- 97. Оператор ветвления «if» if (выражение_1) { // оператор_1; } else if (выражение_2) { // оператор_2; }
- 98. Таблица приоритетов операций
- 99. Структура повторения
- 100. Структура повторения позволяет программисту определить действие, которое должно повторяться, пока некоторое условие остается истинным
- 101. В языке программирования С++ структура повторения реализуется с помощью оператора цикла
- 102. Виды циклов Цикл с предусловием (while) Цикл с постусловием (do while) Параметрический цикл (for)
- 103. Цикл с предусловием while while (выражение) { // оператор // или группа // операторов }
- 104. Цикл с постусловием do while do { // оператор // или группа // операторов } while
- 105. Параметрический цикл for
- 106. Массивы
- 107. Массив – это совокупность элементов, объединенных под общим именем и имеющих один и тот же тип
- 108. Каждый элемент массива является самостоятельной единицей и представляет собой переменную или константу
- 109. Все элементы массива располагаются в памяти последовательно друг за другом и имеют свой индекс – смещение
- 110. Объявление массива Синтаксис объявления массива: тип_данных имя_массива[количество_элементов]; int numbers[4]; const int nSize = 6; double arr[nSize];
- 111. Инициализация массива тип_данных имя_массива[количество элементов] = {значение1, значение2, ... значение n};
- 112. Количество элементов массива можно не указывать. Размер массива определяется исходя из числа элементов в списке инициализации.
- 113. Если значений в списке инициализации меньше чем количество элементов массива, то оставшиеся значения автоматически заполняются нулями
- 114. Если значений в списке инициализации больше чем количество элементов массива, то происходит ошибка на этапе компиляции
- 115. Расположение массива в памяти Формула, согласно которой производится позиционирование по массиву: базовый адрес + размер базового
- 116. Операция индексирования массива Запись значения в массив: имя_массива[индекс_элемента] = значение; Получение значения из массива: cout const
- 117. Большинство операций с массивами разумно проводить с помощью итерационных (переборных) циклов, по очереди перебирая элементы
- 118. Циклическая обработка массива
- 119. Линейный поиск элемента в массиве
- 120. Бинарный поиск элемента в массиве
- 121. Сортировка массива прямым обменом (метод «пузырька»)
- 123. Скачать презентацию