Содержание
- 2. Программирование на алгоритмическом языке. Часть II Тема 1. Обработка массивов
- 3. Реверс массива Задача: переставить элементы массива в обратном порядке. Алгоритм: поменять местами A[1] и A[N], A[2]
- 4. Как переставить элементы? 2 3 1 Задача: поменять местами содержимое двух чашек. Задача: поменять местами содержимое
- 5. Программа алг Реверс нач цел i, c, N = 10 целтаб A[1:N] | здесь нужно заполнить
- 6. Задания «3»: Заполнить массив из 10 элементов случайными числами в интервале [-10..10] и сделать реверс всех
- 7. Задания «5»: Заполнить массив из 12 элементов случайными числами в интервале [-12..12] и выполнить реверс для
- 8. Циклический сдвиг Задача: сдвинуть элементы массива влево на 1 ячейку, первый элемент становится на место последнего.
- 9. Программа алг Циклический сдвиг влево нач цел i, c, N = 10 целтаб A[1:N] | здесь
- 10. Задания «3»: Заполнить массив из 10 элементов случайными числами в интервале [-10..10] и выполнить циклический сдвиг
- 11. Задания «5»: Заполнить массив из 12 элементов случайными числами в интервале [-12..12] и выполнить циклический сдвиг
- 12. Выбор нужных элементов Задача – найти в массиве элементы, удовлетворяющие некоторому условию (например, отрицательные), и скопировать
- 13. Выбор нужных элементов Решение: ввести счетчик найденных элементов count, очередной элемент ставится на место B[count]. цел
- 14. Как вывести массив B? Примитивное решение: вывод "Выбранные элементы:", нс нц для i от 1 до
- 15. Задания «3»: Заполнить массив случайными числами в интервале [-10,10] и записать в другой массив все положительные
- 16. Задания «5»: Заполнить массив случайными числами и выделить в другой массив все числа, которые встречаются более
- 17. Программирование на алгоритмическом языке. Часть II Тема 2. Сортировка массивов
- 18. Сортировка Сортировка – это расстановка элементов массива в заданном порядке (по возрастанию, убыванию, последней цифре, сумме
- 19. Метод пузырька Идея – пузырек воздуха в стакане воды поднимается со дна вверх. Для массивов –
- 20. Программа 1-ый проход: сравниваются пары A[N-1] и A[N], A[N-2] и A[N-1], ..., A[1] и A[2] A[j]
- 21. Программа алг Сортировка нач цел N = 5, i, j, c целтаб A[1:N] | здесь нужно
- 22. Задания «3»: Заполнить массив из 10 элементов случайными числами в интервале [-10..10] и отсортировать его по
- 23. Задания «5»: Заполнить массив из 10 элементов случайными числами в интервале [0..100] и отсортировать первую половину
- 24. Метод выбора Идея: найти минимальный элемент и поставить на первое место (поменять местами с A[1]) из
- 25. Метод выбора нц для i от 1 до N-1 nMin:= i нц для j от i+1
- 26. Задания «3»: Заполнить массив из 10 элементов случайными числами в интервале [0..99] и отсортировать его по
- 27. Задания «5»: Заполнить массив из 10 элементов случайными числами в интервале [0..100] и отсортировать первую половину
- 28. «Быстрая сортировка» (Quick Sort) Идея – более эффективно переставлять элементы, расположенные дальше друг от друга. div(N,2)
- 29. «Быстрая сортировка» (Quick Sort) Медиана – такое значение X, что слева и справа от него в
- 30. «Быстрая сортировка» (Quick Sort)
- 31. «Быстрая сортировка» (Quick Sort) алг qSort(аргрез целтаб A[1:5], арг цел iStart, iEnd) нач цел L, R,
- 32. «Быстрая сортировка» (Quick Sort) алг Сортировка Quick Sort нач цел N = 5, i целтаб A[1:N]
- 33. Количество перестановок (случайные данные)
- 34. Задания «3»: Заполнить массив из 10 элементов случайными числами в интервале [-50..50] и отсортировать его с
- 35. Программирование на алгоритмическом языке. Часть II Тема 3. Двоичный поиск
- 36. Поиск в массиве Задача – найти в массиве элемент, равный X, или установить, что его нет.
- 37. Линейный поиск i:= 1 нц пока A[i] X i:= i + 1 кц если i то
- 38. Двоичный поиск X = 7 X 8 4 X > 4 6 X > 6 Выбрать
- 39. Двоичный поиск L:= 1; R:= N; nX:= 0 если nX > 0 то вывод "A[", nX,
- 40. Сравнение методов поиска
- 41. Задания «3»: Написать программу, которая сортирует массив по возрастанию и ищет в нем элемент, равный X
- 42. Программирование на алгоритмическом языке. Часть II Тема 4. Символьные строки
- 43. Задачи на обработку строк Задача: с клавиатуры вводится число N, обозначающее количество футболистов команды «Шайба», а
- 44. Программа использовать Строки алг Футболисты нач цел N, i, p, year, goal, count=0 лит s ввод
- 45. Разбор строки Пропуск фамилии: p:= найти(" ", s) s:= s[p+1:длин(s)] Пропуск имени: Ввод года рождения: p:=
- 46. Разбор строки Если фамилия нужна: p:= найти(" ", s) fam:= s[1:p-1] s:= s[p+1:длин(s)] лит fam Иванов
- 47. Задания «3»: Вывести фамилии всех футболистов, которые забили больше двух голов. Пример: Иванов Василий Семёнов Кузьма
- 48. Задания «5»: Вывести в алфавитном порядке фамилии и имена всех футболистов, которые забили хотя бы один
- 49. Рекурсивный перебор Задача: Алфавит языка племени «тумба-юмба» состоит из букв Ы, Ц, Щ и О. Вывести
- 50. Рекурсивный перебор 1 K Рекурсия: Решения задачи для слов из К букв сводится к 4-м задачам
- 51. Процедура алг Рек(цел p) нач если p > K то вывод s, нс count:= count +
- 52. Основная программа лит s, цел count = 0, K алг Рекурсивный перебор нач вывод "Введите длину
- 53. Процедура (много букв) алг Рек(цел p) нач если p > K то вывод s, нс count:=
- 54. Задания Алфавит языка племени «тумба-юмба» состоит из букв Ы, Ц, Щ и О. Число K вводится
- 55. Программирование на алгоритмическом языке. Часть II Тема 5. Матрицы
- 56. Операции с матрицами Задача 1. Вывести на экран главную диагональ квадратной матрицы из N строк и
- 57. Операции с матрицами Задача 3. Найти сумму элементов, стоящих на главной диагонали и ниже ее. строка
- 58. Операции с матрицами Задача 4. Перестановка строк или столбцов. В матрице из N строк и M
- 59. Задания Заполнить матрицу из 7 строк и 7 столбцов случайными числами в интервале [10,90] и вывести
- 60. Программирование на алгоритмическом языке. Часть II Тема 6. Файлы
- 61. Файлы Файл – это данные на диске, имеющие имя. Файлы только текст без оформления, не содержат
- 62. Работа с файлами: принцип сэндвича I этап. открыть файл: сделать его активным, приготовить к работе связать
- 63. Работа с файлами Особенности: имя файла упоминается только при открытии файла, работа с файлом – через
- 64. Последовательный доступ при открытии файла курсор устанавливается в начало чтение выполняется с той позиции, где стоит
- 65. Последовательный доступ как вернуться назад и начать с начала? не открывая файл заново начать чтение (
- 66. Пример Задача: в файле input.txt записаны числа (в столбик), сколько их – неизвестно. Записать в файл
- 67. Программа: чтение данных из файла использовать Файлы П алг Сумма чисел нач цел F, S, x
- 68. Программа: запись результата в файл F:= открыть на запись("output.txt") Фвывод F, S закрыть( F ) Особенности:
- 69. Задания В файле input.txt записаны числа, сколько их – неизвестно. «3»: Найти сумму всех чётных чисел
- 70. Обработка массивов Задача: в файле input.txt записаны числа (в столбик), сколько их – неизвестно, но не
- 71. Программа: чтение данных в массив использовать Файлы П алг Сортировка нач цел F, MAX = 100,
- 72. Программа: вывод массива в файл F:= открыть на запись("output.txt") нц для i от 1 до N
- 73. Задания В файле input.txt записаны числа (в столбик), известно, что их не более 100. «3»: Отсортировать
- 74. Обработка текстовых данных Задача: в файле input.txt записаны строки, в которых есть слово-паразит «короче». Очистить текст
- 75. Обработка текстовых данных Алгоритм: Прочитать строку из файла. Удалить все сочетания ", короче,". Записать строку в
- 76. Работа с двумя файлами одновременно использовать Строки использовать Файлы П алг Обработка строк нач цел fIn,
- 77. Цикл обработки файла нц пока не конец файла(fIn) Фввод fIn, s | обработка строки s Фвывод
- 78. Обработка одной строки нц пока да p:= найти(", короче,", s) если p s:= s[1:p-1] + s[p+9:длин(s)]
- 79. Задания В файле input.txt записаны строки, сколько их – неизвестно. «3»: Заменить все слова «короче» на
- 80. Сортировка списков Задача: в файле list.txt записаны фамилии и имена пользователей сайта (не более 100). Вывести
- 81. Сортировка списков Алгоритм: прочитать строки из файла в массив строк, подсчитать их в переменной N отсортировать
- 82. Сортировка списков Ввод массива строк из файла: f:= открыть на чтение("list.txt") N:= 0 нц пока не
- 83. Сортировка списков Сортировка первых N элементов массива: нц для i от 1 до N-1 nMin:= i
- 84. Сортировка списков Как сравниваются строки: || || || || ? s1 s2 Кодовая таблица: Win UNICODE
- 85. Сортировка списков Как сравниваются строки: || || || ? s1 s2 "х" > ¤ "Пароход" >
- 86. Сортировка списков Работа с отдельной строкой массива: литтаб s[1:MAX] лит c | вспомогательная строка нц для
- 87. Задания «3»: Добавить к списку нумерацию: 1) Анисимов Никита 2) Иванов Федор «4»: Выполнить задачу на
- 88. Списки с числовыми данными Задача: в файле marks.txt записаны фамилии и имена школьников и баллы, полученные
- 89. Работа с двумя файлами одновременно использовать Файлы П использовать Строки алг Отметки на экзамене нач цел
- 90. Цикл обработки файла цел ball нц пока не конец файла(fIn) Фввод fIn, s | обработка строки
- 91. Преобразования «строка»-«число» Из строки в число: s:= "123" N:= лит_в_цел(s, OK) | N = 123 если
- 92. Обработка строки n:= найти(" ", s) | n:= 7 фамилия:= s[1:n-1] | фамилия:= "Пупкин" s:= удалить(s,
- 93. Обработка строки n:= найти(" ", s) | n:= 7 фамилия:= s[1:n-1] | фамилия:= "Пупкин" s:= удалить(s,
- 94. Задания «3»: Добавить к списку нумерацию: 1) Федоров Иван 78 2) Анисимов Никита 90 «4»: Выполнить
- 96. Скачать презентацию