Содержание
- 2. Программирование на языке C++ § 9. Массивы
- 3. Что такое массив? Массив – это группа переменных одного типа, расположенных в памяти рядом (в соседних
- 4. Выделение памяти (объявление) int A[5]; double V[8]; bool L[10]; char S[80]; число элементов const int N
- 5. Обращение к элементу массива A массив 2 15 НОМЕР элемента массива (ИНДЕКС) A[0] A[1] A[2] A[3]
- 6. Как обработать все элементы массива? Объявление: Обработка: const int N = 5; int A[N]; // обработать
- 7. Как обработать все элементы массива? Обработка с переменной: i = 0; // обработать A[i] i ++;
- 8. Заполнение массива main() { const int N = 10; int A[N]; int i; for ( i
- 9. Ввод с клавиатуры и вывод на экран Объявление: Ввод с клавиатуры: Вывод на экран: const int
- 10. Заполнение случайными числами for ( i = 0; i { A[i] = irand ( 20, 100
- 11. Перебор элементов Общая схема: for ( i = 0; i { ... // сделать что-то с
- 12. Перебор элементов Среднее арифметическое: int count, sum; count = 0; sum = 0; for ( i
- 13. Задачи «A»: Заполните массив случайными числами в интервале [0,100] и найдите среднее арифметическое его значений. Пример:
- 14. Задачи «C»: Заполните массив из N элементов случайными числами в интервале [1,N] так, чтобы в массив
- 15. Программирование на языке C++ § 10. Алгоритмы обработки массивов
- 16. Поиск в массиве Найти элемент, равный X: i = 0; while ( A[i] != X )
- 17. Поиск в массиве nX = -1; for ( i = 0; i if ( A[i] ==
- 18. Задачи «A»: Заполните массив случайными числами в интервале [0,5]. Введите число X и найдите все значения,
- 19. Задачи «B»: Заполните массив случайными числами в интервале [0,5]. Определить, есть ли в нем элементы с
- 20. Задачи «C»: Заполните массив случайными числами. Определить, есть ли в нем элементы с одинаковыми значениями, не
- 21. Максимальный элемент M = A[0]; for ( i = 1; i if ( A[i]> M )
- 22. Максимальный элемент и его номер
- 23. Задачи «A»: Заполнить массив случайными числами и найти минимальный и максимальный элементы массива и их номера.
- 24. Задачи «C»: Введите массив с клавиатуры и найдите (за один проход) количество элементов, имеющих максимальное значение.
- 25. Реверс массива «Простое» решение: for( i = 0; i { // поменять местами A[i] и A[N-1-i]
- 26. Реверс массива for ( i = 0; i { c = A[i]; A[i] = A[N-1-i]; A[N-1-i]
- 27. Циклический сдвиг элементов «Простое» решение: c = A[0]; for ( i = 0; i A[i] =
- 28. Задачи «A»: Заполнить массив случайными числами и выполнить циклический сдвиг элементов массива вправо на 1 элемент.
- 29. Задачи «C»: Заполнить массив случайными числами в интервале [-100,100] и переставить элементы так, чтобы все положительные
- 30. Отбор нужных элементов «Простое» решение: Задача. Отобрать элементы массива A, удовлетворяющие некоторому условию, в массив B.
- 31. Отбор нужных элементов A B выбрать чётные элементы count = 0; for ( i = 0;
- 32. Задачи «A»: Заполнить массив случайными числами в интервале [-10,10] и отобрать в другой массив все чётные
- 33. Задачи «C»: Заполнить массив случайными числами и отобрать в другой массив все числа Фибоначчи. Используйте логическую
- 34. Программирование на языке C++ § 11. Сортировка
- 35. Что такое сортировка? Сортировка – это расстановка элементов массива в заданном порядке. …по возрастанию, убыванию, последней
- 36. Метод пузырька (сортировка обменами) Идея: пузырек воздуха в стакане воды поднимается со дна вверх. Для массивов
- 37. Метод пузырька 2-й проход: 3-й проход: 4-й проход:
- 38. Метод пузырька 1-й проход: сделать для j от N-2 до 0 шаг -1 если A[j+1] //
- 39. Метод пузырька for ( i = 0; i for ( j = N-2; j >= i
- 40. Задачи «A»: Напишите программу, в которой сортировка выполняется «методом камня» – самый «тяжёлый» элемент опускается в
- 41. Метод выбора (минимального элемента) Идея: найти минимальный элемент и поставить его на первое место. сделать для
- 42. Метод выбора (минимального элемента) for ( i = 0; i { nMin = i; for (
- 43. Задачи «A»: Массив содержит четное количество элементов. Напишите программу, которая сортирует первую половину массива по возрастанию,
- 44. Задачи «B»: Напишите программу, которая сортирует массив и находит количество различных чисел в нем. Пример: Массив:
- 45. Быстрая сортировка (QuickSort) Идея: выгоднее переставлять элементы, который находятся дальше друг от друга.
- 46. Быстрая сортировка Шаг 2: переставить элементы так: при сортировке элементы не покидают « свою область»! Шаг
- 47. Быстрая сортировка Разделение: выбрать средний элемент массива (X=67) установить L = 1, R = N увеличивая
- 48. Быстрая сортировка
- 49. Быстрая сортировка const int N = 7; int A[N]; ... main() { // заполнить массив qSort(
- 50. Быстрая сортировка void qSort( int nStart, int nEnd ) { int L, R, c, X; if
- 51. Быстрая сортировка void qSort( int A[], int nStart, int nEnd ) { ... qSort ( A,
- 52. Быстрая сортировка Сортировка массива случайных значений:
- 53. Задачи «A»: Массив содержит четное количество элементов. Напишите программу, которая сортирует по возрастанию отдельно элементы первой
- 54. Задачи «B»: Напишите программу, которая сортирует массив и находит количество различных чисел в нем. Используйте алгоритм
- 55. Задачи «C»: Напишите программу, которая сравнивает число перестановок элементов при использовании сортировки «пузырьком», методом выбора и
- 56. Программирование на языке C++ § 12. Двоичный поиск
- 57. Двоичный поиск X = 7 X 8 4 X > 4 6 X > 6 Выбрать
- 58. Двоичный поиск X = 44
- 59. Двоичный поиск int X, L, R, c; L = 0; R = N; // начальный отрезок
- 60. Двоичный поиск скорость выше, чем при линейном поиске нужна предварительная сортировка Число сравнений:
- 61. Задачи «A»: Заполнить массив случайными числами и отсортировать его. Ввести число X. Используя двоичный поиск, определить,
- 62. Задачи «B»: Заполнить массив случайными числами и отсортировать его. Ввести число X. Используя двоичный поиск, определить,
- 63. Задачи «C»: Заполнить массив случайными числами и ввести число и отсортировать его. Ввести число X. Используя
- 64. Программирование на языке C++ § 13. Символьные строки
- 65. Зачем нужны символьные строки? char s[10]; // массив символов элементы массива – отдельные объекты сложно работать
- 66. Символьные строки Начальное значение: string s = "Привет!"; Вывод на экран: cout s = "Привет!"; Присваивание:
- 67. Символьные строки Ввод с клавиатуры: cin >> s; Отдельный символ: s[4] = 'a'; Длина строки: только
- 68. Символьные строки #include using namespace std; main() { string s; int i; cout getline ( cin,
- 69. Задачи «A»: Ввести с клавиатуры символьную строку и заменить в ней все буквы «а» на «б»
- 70. Задачи «B»: Ввести с клавиатуры символьную строку и определить, сколько в ней слов. Словом считается последовательности
- 71. Задачи «C»: Ввести с клавиатуры символьную строку и найдите самое длинное слово и его длину. Словом
- 72. s = "0123456789"; s1 = s.substr( 3 ); // "3456789" Операции со строками Объединение (конкатенация): string
- 73. Операции со строками Вставка: s = "0123456789"; s.insert( 3,"ABC" ); // "012ABC3456789" что куда с какого
- 74. Поиск символа в строке string s = "Здесь был Вася."; int n; n = s.find (
- 75. Поиск подстроки string s = "Здесь был Вася."; int n; n = s.find ( "Вася" );
- 76. Пример обработки строк Задача: Ввести имя, отчество и фамилию. Преобразовать их к формату «фамилия-инициалы». Пример: Введите
- 77. Пример обработки строк main() { string s, name, name2; int n; cout getline ( cin, s
- 78. Задачи «A»: Ввести с клавиатуры в одну строку фамилию, имя и отчество, разделив их пробелом. Вывести
- 79. Задачи «B»: Ввести адрес файла и «разобрать» его на части, разделенные знаком '/'. Каждую часть вывести
- 80. Задачи «C»: Напишите программу, которая заменяет во всей строке одну последовательность символов на другую. Пример: Введите
- 81. Преобразования «строка» – «число» Из строки в число: string s = "123"; int N; N =
- 82. Преобразования «строка» – «число» Из числа в строку: ostringstream ss; string s; int N = 123;
- 83. Преобразования «строка» – «число» Вещественное число в строку: ostringstream ss; string s; double X = 123.456;
- 84. Задачи «A»: Напишите программу, которая вычисляет сумму трех чисел, введенную в форме символьной строки. Все числа
- 85. Задачи «C»: Напишите программу, которая вычисляет выражение, состоящее из трех чисел и двух знаков (допускаются знаки
- 86. Задачи «D»: Напишите программу, которая вычисляет выражение, состоящее из трех чисел и двух знаков (допускаются знаки
- 87. Строки в процедурах и функциях Задача: построить процедуру, которая заменяет в строке s все вхождения слова-образца
- 88. Замена всех экземпляров подстроки
- 89. Замена всех экземпляров подстроки main() { string s = "12.12.12"; replaceAll ( s, "12", "A12B" );
- 90. Замена всех экземпляров подстроки void replaceAll ( string &s, string wOld, string wNew ) { string
- 91. Замена всех экземпляров подстроки p = s.find ( wOld ); if ( p { res =
- 92. Замена: из процедуры в функцию main() { string s = "12.12.12"; s = replaceAll ( s,
- 93. Задачи «A»: Напишите функцию, которая возвращает первое слово переданной ей строки. Пример: Введите строку: Однажды в
- 94. Задачи «B»: Напишите функцию, которая заменяет расширение файла на заданное новое расширение. Пример: Введите имя файла:
- 95. Задачи «C»: Напишите функцию, которая заменяет во всей строке все римские числа на соответствующие десятичные числа.
- 96. Рекурсивный перебор Задача. В алфавите языка племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно
- 97. Рекурсивный перебор перебор L символов w[0]='Ы'; // перебор последних L-1 символов w[0]='Ш'; // перебор последних L-1
- 98. Рекурсивный перебор main() { string word = "..."; TumbaWords ( "ЫШЧО", word, 0 ); } void
- 99. Задачи «A»: В алфавите языке племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно вывести
- 100. Задачи «C»: В алфавите языке племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно вывести
- 101. Сравнение строк Сравнение по кодам символов:
- 102. Сравнение строк 5STEAM steam
- 103. Сортировка строк main() { const int N = 10; string s1, S[N]; int i, j; cout
- 104. Задачи «A»: Вводится 5 строк, в которых сначала записан порядковый номер строки с точкой, а затем
- 105. Задачи «B»: Вводится несколько строк (не более 20), в которых сначала записан порядковый номер строки с
- 106. Задачи «C»: Вводится несколько строк (не более 20), в которых сначала записаны инициалы и фамилии работников
- 107. Программирование на языке C++ § 14. Матрицы
- 108. Что такое матрица? Матрица — это прямоугольная таблица, составленная из элементов одного типа (чисел, строк и
- 109. Объявление матриц const int N = 3, M = 4; int A[N][M]; double X[10][12]; bool L[N][2];
- 110. Простые алгоритмы Заполнение случайными числами: for ( i = 0; i for ( j = 0;
- 111. Задачи «A»: Напишите программу, которая заполняет квадратную матрицу случайными числами в интервале [10,99], и находит максимальный
- 112. Задачи «B»: Яркости пикселей рисунка закодированы числами от 0 до 255 в виде матрицы. Преобразовать рисунок
- 113. Задачи «С»: Заполните матрицу, содержащую N строк и M столбцов, натуральными числами по спирали и змейкой,
- 114. Перебор элементов матрицы Главная диагональ: for ( i = 0; i // работаем с A[i][i] }
- 115. Перестановка строк 2-я и 4-я строки: for ( j = 0; j { c = A[2][j];
- 116. Задачи «A»: Напишите программу, которая заполняет квадратную матрицу случайными числами в интервале [10,99], а затем записывает
- 117. Задачи «B»: Пиксели рисунка закодированы числами (обозначающими цвет) в виде матрицы, содержащей N строк и M
- 118. Программирование на языке C++ § 15. Работа с файлами
- 119. Как работать с файлами? файлы текстовые двоичные «plain text»: текст, разбитый на строки; из специальных символов
- 120. Принцип сэндвича хлеб хлеб начинка ifstream Fin; // поток ввода ofstream Fout; // поток вывода Fin.open
- 121. Обработка ошибок ifstream F; F.open ( "input.txt" ); if ( F ) { // здесь работаем
- 122. Ввод данных int a, b; ifstream Fin; Fin.fopen ( "input.txt" ); Fin.close(); Fin.close(); Fin.open ( "input.txt"
- 123. Вывод данных в файл int a = 1, b = 2; ofstream Fout; Fout.open ( "output.txt"
- 124. Чтение неизвестного количества данных пока не конец файла // прочитать число из файла // добавить его
- 125. Задачи «A»: Напишите программу, которая находит среднее арифметическое всех чисел, записанных в файле в столбик, и
- 126. Обработка массивов Задача. В файле записано не более 100 целых чисел. Вывести в другой текстовый файл
- 127. Обработка массивов Ввод массива: N = 0; while ( N { if ( Fin >> A[N]
- 128. Обработка массивов Вывод результата: Fout.open ( "output.txt" ); for ( i = 0; i Fout Fout.close();
- 129. Задачи «A»: В файле записано не более 100 чисел. Отсортировать их по возрастанию последней цифры и
- 130. Обработка строк Задача. В файле записано данные о собаках: в каждой строчке кличка собаки, ее возраст
- 131. Чтение строк из файла while ( getline(Fin, s) ) { // обработать строку s } Чтение
- 132. Обработка строк // найти в строке пробел // удалить из строки кличку с первым пробелом //
- 133. Задачи «A»: В файле записаны данные о результатах сдачи экзамена. Каждая строка содержит фамилию, имя и
- 135. Скачать презентацию


![Выделение памяти (объявление) int A[5]; double V[8]; bool L[10]; char S[80]; число](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-3.jpg)



![Заполнение массива main() { const int N = 10; int A[N]; int](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-7.jpg)

![Заполнение случайными числами for ( i = 0; i { A[i] =](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-9.jpg)


![Задачи «A»: Заполните массив случайными числами в интервале [0,100] и найдите среднее](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-12.jpg)
![Задачи «C»: Заполните массив из N элементов случайными числами в интервале [1,N]](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-13.jpg)



![Задачи «A»: Заполните массив случайными числами в интервале [0,5]. Введите число X](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-17.jpg)
![Задачи «B»: Заполните массив случайными числами в интервале [0,5]. Определить, есть ли](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-18.jpg)

![Максимальный элемент M = A[0]; for ( i = 1; i if](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-20.jpg)




![Реверс массива for ( i = 0; i { c = A[i];](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-25.jpg)
![Циклический сдвиг элементов «Простое» решение: c = A[0]; for ( i =](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-26.jpg)

![Задачи «C»: Заполнить массив случайными числами в интервале [-100,100] и переставить элементы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-28.jpg)


![Задачи «A»: Заполнить массив случайными числами в интервале [-10,10] и отобрать в](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-31.jpg)
















![Быстрая сортировка const int N = 7; int A[N]; ... main() {](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-48.jpg)

![Быстрая сортировка void qSort( int A[], int nStart, int nEnd ) {](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-50.jpg)













![Зачем нужны символьные строки? char s[10]; // массив символов элементы массива –](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-64.jpg)

![Символьные строки Ввод с клавиатуры: cin >> s; Отдельный символ: s[4] =](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-66.jpg)





























![Рекурсивный перебор перебор L символов w[0]='Ы'; // перебор последних L-1 символов w[0]='Ш';](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-96.jpg)





![Сортировка строк main() { const int N = 10; string s1, S[N];](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-102.jpg)





![Объявление матриц const int N = 3, M = 4; int A[N][M];](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/930860/slide-108.jpg)
























Виды текстовых процессоров и их возможности. Основные элементы. Тема №13
Оформление проекта
Архитектура компьютера
Руководство по использованию активов в сети Ethereum через платформу Flamingo
Сберкласс
Обзор инфлюенсеров в социальных сетях
Оплата курсов подготовки водителей
Storage Box Use Cases
УТП, техники копирайтинга
Локальные и глобальные сети. Лекция 10-11
Фрактальная графика
Языки программирования
Мир науки и техники. Книги Килемарской детской библиотеки
Массива. Одномерные массивы
Построение 3D-моделей с помощью информационных систем. 3D- печать. Практическая работа №4
Синий экран смерти BSoD
Как работает жесткий диск
Развитие вычислительной техники
Формирование организационной структуры в области информатизации. (Тема 3)
Создание компьютерной игры
Презентация на тему Линейный алгоритм
Инструмент для создания цветовых комбинаций на базе исходного изображения
Бесплатный курс по созданию авторского видео на компьютере для начинающих пользователей
Аппаратная реализация компьютера
Основные этапы развития информационного общества
Информационные технологии: понятие, виды информационных технологий
Моя профессия – оператор ЭВМ
Лабиринт. Мини-игра