Содержание
- 2. Программирование на языке Паскаль § 62. Массивы
- 3. Что такое массив? Массив – это группа переменных одного типа, расположенных в памяти рядом (в соседних
- 4. Выделение памяти (объявление) var A: array[1..5] of integer; V: array[0..5] of real; L: array[-5..5] of boolean;
- 5. Что неправильно? var A: array[10..1] of integer; ... A[5] := 4.5; [1..10] var A: array[1..10] of
- 6. Обращение к элементу массива A массив 3 15 НОМЕР элемента массива (ИНДЕКС) A[1] A[2] A[3] A[4]
- 7. Как обработать все элементы массива? Объявление: Обработка: const N = 5; var A: array[1..N] of integer;
- 8. Как обработать все элементы массива? Обработка с переменной: i:= 1; { обработать A[i] } i:= i
- 9. Заполнение массива program Arr; const N = 10; var A: array[1..N] of integer; i: integer; begin
- 10. Ввод с клавиатуры и вывод на экран Объявление: Ввод с клавиатуры: Вывод на экран: const N
- 11. Заполнение случайными числами for i:=1 to N do begin A[i]:= 20 + random(81); write(A[i],' ') end;
- 12. Перебор элементов Общая схема: for i:=1 to N do begin ... { сделать что-то с A[i]
- 13. Перебор элементов Среднее арифметическое: count:= 0; sum:= 0; for i:=1 to N do if (180 then
- 14. Задачи «A»: Заполните массив случайными числами в интервале [0,100] и найдите среднее арифметическое его значений. Пример:
- 15. Задачи «C»: Заполните массив из N элементов случайными числами в интервале [1,N] так, чтобы в массив
- 16. Программирование на языке Паскаль § 63. Алгоритмы обработки массивов
- 17. Поиск в массиве Найти элемент, равный X: i:= 1; while A[i] X do i:= i +
- 18. Поиск в массиве nX:= 0; for i:=1 to N do if A[i] = X then begin
- 19. Задачи «A»: Заполните массив случайными числами в интервале [0,5]. Введите число X и найдите все значения,
- 20. Задачи «B»: Заполните массив случайными числами в интервале [0,5]. Определить, есть ли в нем элементы с
- 21. Задачи «C»: Заполните массив случайными числами. Определить, есть ли в нем элементы с одинаковыми значениями, не
- 22. Максимальный элемент M:= A[1]; for i:= 2 to N do if A[i] > M then M:=
- 23. Максимальный элемент и его номер
- 24. Задачи «A»: Заполнить массив случайными числами и найти минимальный и максимальный элементы массива и их номера.
- 25. Задачи «C»: Введите массив с клавиатуры и найдите (за один проход) количество элементов, имеющих максимальное значение.
- 26. Реверс массива «Простое» решение: for i:= 1 to N do поменять местами A[i] и A[N+1-i] N
- 27. Реверс массива for i:= 1 to N div 2 do begin c:= A[i]; A[i]:= A[N+1-i]; A[N+1-i]:=
- 28. Циклический сдвиг элементов «Простое» решение: c:= A[1]; for i:= 1 to N-1 do A[i]:= A[i+1] A[N]:=
- 29. Задачи «A»: Заполнить массив случайными числами и выполнить циклический сдвиг элементов массива вправо на 1 элемент.
- 30. Задачи «C»: Заполнить массив случайными числами в интервале [-100,100] и переставить элементы так, чтобы все положительные
- 31. Отбор нужных элементов «Простое» решение: Задача. Отобрать элементы массива A, удовлетворяющие некоторому условию, в массив B.
- 32. Отбор нужных элементов A B выбрать чётные элементы count:= 0; { счётчик } for i:= 1
- 33. Задачи «A»: Заполнить массив случайными числами в интервале [-10,10] и отобрать в другой массив все чётные
- 34. Задачи «C»: Заполнить массив случайными числами и отобрать в другой массив все числа Фибоначчи. Используйте логическую
- 35. Программирование на языке Паскаль § 64. Сортировка
- 36. Что такое сортировка? Сортировка – это расстановка элементов массива в заданном порядке. …по возрастанию, убыванию, последней
- 37. Метод пузырька (сортировка обменами) Идея: пузырек воздуха в стакане воды поднимается со дна вверх. Для массивов
- 38. Метод пузырька 2-й проход: 3-й проход: 4-й проход:
- 39. Метод пузырька 1-й проход: for j:= N-1 downto 1 do if A[j+1] { поменять местами A[j]
- 40. Метод пузырька for i:= 1 to N-1 do for j:= N-1 downto do if A[j+1] {
- 41. Задачи «A»: Напишите программу, в которой сортировка выполняется «методом камня» – самый «тяжёлый» элемент опускается в
- 42. Метод выбора (минимального элемента) Идея: найти минимальный элемент и поставить его на первое место. for i:=
- 43. Метод выбора (минимального элемента) for i:= 1 to N-1 do begin if i nMin then begin
- 44. Задачи «A»: Массив содержит четное количество элементов. Напишите программу, которая сортирует первую половину массива по возрастанию,
- 45. Задачи «B»: Напишите программу, которая сортирует массив и находит количество различных чисел в нем. Пример: Массив:
- 46. Сортировка слиянием Слияние отсортированных массивов: A B С type TIntArray = array of integer; var iA,
- 47. Процедура слияния (I) iA:= 0; iB:= 0; { позиции в A и B } j:= 0;
- 48. Процедура слияния (II) while iA C[j]:= A[iA]; Inc(iA); Inc(j) end; while iB C[j]:= B[iB]; Inc(iB); Inc(j)
- 49. Процедура слияния (III) function merge(A, B: TIntArray): TIntArray; var iA, iB, nA, nB, j: integer; C:
- 50. Сортировка слиянием function mergeSort(A: TIntArray): TIntArray; var L, R: TIntArray; i, mid: integer; begin if Length(A)
- 51. Сортировка слиянием function mergeSort(A: TIntArray): TIntArray; var L, R: TIntArray; i, mid: integer; begin { выход
- 52. Сортировка слиянием function mergeSort(A: TIntArray): TIntArray; var L, R: TIntArray; i, mid: integer; begin { выход
- 53. Сортировка слиянием задача разбивается на несколько подзадач меньшего размера; эти подзадачи решаются с помощью рекурсивных вызовов
- 54. Быстрая сортировка (QuickSort) Идея: выгоднее переставлять элементы, который находятся дальше друг от друга.
- 55. Быстрая сортировка Шаг 2: переставить элементы так: при сортировке элементы не покидают « свою область»! Шаг
- 56. Быстрая сортировка Разделение: выбрать любой элемент массива (X=67) установить L = 1, R = N увеличивая
- 57. Быстрая сортировка
- 58. Быстрая сортировка program QuickSort; const N = 7; var A: array[1..N] of integer; ... begin {
- 59. Быстрая сортировка procedure qSort(nStart, nEnd: integer); var L, R, c, X: integer; begin if nStart >=
- 60. Быстрая сортировка Сортировка массива случайных значений:
- 61. Задачи «B»: Напишите программу, которая сортирует массив и находит количество различных чисел в нем. Используйте алгоритм
- 62. Задачи «C»: Напишите программу, которая сравнивает число перестановок элементов при использовании сортировки «пузырьком», методом выбора и
- 63. Программирование на языке Паскаль § 65. Двоичный поиск
- 64. Двоичный поиск X = 7 X 8 4 X > 4 6 X > 6 Выбрать
- 65. Двоичный поиск X = 44
- 66. Двоичный поиск var L, R, c: integer; ... L:= 1; R:= N + 1; { начальный
- 67. Двоичный поиск скорость выше, чем при линейном поиске нужна предварительная сортировка Число сравнений:
- 68. Задачи «A»: Заполнить массив случайными числами и отсортировать его. Ввести число X. Используя двоичный поиск, определить,
- 69. Задачи «B»: Заполнить массив случайными числами и отсортировать его. Ввести число X. Используя двоичный поиск, определить,
- 70. Задачи «C»: Заполнить массив случайными числами и ввести число и отсортировать его. Ввести число X. Используя
- 71. Программирование на языке Паскаль § 66. Символьные строки
- 72. Зачем нужны символьные строки? var s: array[1..80] of char; { массив символов } элементы массива –
- 73. Символьные строки Присваивание: s:= 'Вася пошёл гулять'; Ввод с клавиатуры: readln(s); Вывод на экран: writeln(s); Отдельный
- 74. Символьные строки program ReplaceAB; var s: string; i: integer; begin writeln('Введите строку'); readln(s); for i:=1 to
- 75. Задачи «A»: Ввести с клавиатуры символьную строку и заменить в ней все буквы «а» на «б»
- 76. Задачи «B»: Ввести с клавиатуры символьную строку и определить, сколько в ней слов. Словом считается последовательности
- 77. Задачи «C»: Ввести с клавиатуры символьную строку и найдите самое длинное слово и его длину. Словом
- 78. Операции со строками Объединение (конкатенация) : s1:= 'Привет'; s2:= 'Вася'; s := s1 + ', '
- 79. Удаление и вставка символов Вставка: s:= '123456789'; Insert('ABC', s, 3); { '12ABC3456789' } что куда с
- 80. Поиск в строках s:= 'Здесь был Вася.'; n:= Pos('с', s) if n > 0 then write('Номер
- 81. Пример обработки строк Задача: Ввести имя, отчество и фамилию. Преобразовать их к формату «фамилия-инициалы». Пример: Введите
- 82. Пример обработки строк program FIO; var s, name, name2: string; n: integer; begin write('Введите имя, отчество
- 83. Задачи «A»: Ввести с клавиатуры в одну строку фамилию, имя и отчество, разделив их пробелом. Вывести
- 84. Задачи «B»: Ввести адрес файла и «разобрать» его на части, разделенные знаком '/'. Каждую часть вывести
- 85. Задачи «C»: Напишите программу, которая заменяет во всей строке одну последовательность символов на другую. Пример: Введите
- 86. Преобразования «строка» – «число» Из строки в число: s:= '123'; Val(s, N, r); { N =
- 87. Задачи «A»: Напишите программу, которая вычисляет сумму трех чисел, введенную в форме символьной строки. Все числа
- 88. Задачи «C»: Напишите программу, которая вычисляет выражение, состоящее из трех чисел и двух знаков (допускаются знаки
- 89. Задачи «D»: Напишите программу, которая вычисляет выражение, состоящее из трех чисел и двух знаков (допускаются знаки
- 90. Строки в процедурах и функциях Задача: построить процедуру, которая заменяет в строке s все вхождения слова-образца
- 91. Замена всех экземпляров подстроки
- 92. Замена всех экземпляров подстроки program Replace; var s: string; ... { здесь будет процедура } begin
- 93. Замена всех экземпляров подстроки procedure replaceAll(var s: string; wOld, wNew: string); var res: string; p, len:
- 94. Замена: из процедуры в функцию program Replace; var s: string; begin s:= '12.12.12'; s:= replaceAll(s, '12',
- 95. Задачи «A»: Напишите функцию, которая возвращает первое слово переданной ей символьной строки. Пример: Введите строку: Однажды
- 96. Задачи «B»: Напишите функцию, которая заменяет расширение файла на заданное новое расширение. Пример: Введите имя файла:
- 97. Задачи «C»: Напишите функцию, которая заменяет во всей строке все римские числа на соответствующие десятичные числа.
- 98. Рекурсивный перебор Задача. В алфавите языка племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно
- 99. Рекурсивный перебор Перебор К символов var w: string; begin w[1]:='Ы'; { перебор последних K-1 символов }
- 100. Рекурсивный перебор program YSCHO; var word: string; begin word:= '...'; TumbaWords('ЫШЧО', word, 0); end. procedure TumbaWords(A,
- 101. Задачи «A»: В алфавите языке племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно вывести
- 102. Задачи «C»: В алфавите языке племени «тумба-юмба» четыре буквы: «Ы», «Ш», «Ч» и «О». Нужно вывести
- 103. Сравнение строк Сравнение по кодам символов:
- 104. Сравнение строк 5STEAM steam
- 105. Сортировка строк const N = 10; var i,j: integer; s1: string; S: array[1..N] of string; begin
- 106. Задачи «A»: Вводится 5 строк, в которых сначала записан порядковый номер строки с точкой, а затем
- 107. Задачи «B»: Вводится несколько строк (не более 20), в которых сначала записан порядковый номер строки с
- 108. Задачи «C»: Вводится несколько строк (не более 20), в которых сначала записаны инициалы и фамилии работников
- 109. Программирование на языке Паскаль § 67. Матрицы
- 110. Что такое матрица? Матрица — это прямоугольная таблица, составленная из элементов одного типа (чисел, строк и
- 111. Объявление матриц const N = 3; M = 4; var A: array[1..N, 1..M] of integer; X:
- 112. Простые алгоритмы Заполнение случайными числами: for i:=1 to N do begin for j:=1 to M do
- 113. Задачи «A»: Напишите программу, которая заполняет квадратную матрицу случайными числами в интервале [10,99], и находит максимальный
- 114. Задачи «B»: Яркости пикселей рисунка закодированы числами от 0 до 255 в виде матрицы. Преобразовать рисунок
- 115. Задачи «С»: Заполните матрицу, содержащую N строк и M столбцов, натуральными числами по спирали и змейкой,
- 116. Перебор элементов матрицы Главная диагональ: for i:= 1 to N do begin { работаем с A[i,i]
- 117. Перестановка строк 2-я и 4-я строки: for j:= 1 to M do c:= A[2,j]; A[2,j]:= A[4,j];
- 118. Задачи «A»: Напишите программу, которая заполняет квадратную матрицу случайными числами в интервале [10,99], а затем записывает
- 119. Задачи «B»: Пиксели рисунка закодированы числами (обозначающими цвет) в виде матрицы, содержащей N строк и M
- 120. Программирование на языке Паскаль § 68. Работа с файлами
- 121. Как работать с файлами? файлы текстовые двоичные «plain text»: текст, разбитый на строки; из специальных символов
- 122. Принцип сэндвича var Fin, Fout: Text; Assign(Fin, 'input.txt'); Assign(Fout, 'output.txt'); Reset(Fin); { открыть на чтение }
- 123. Ввод данных var a, b: integer; Fin: Text; ... Assign(Fin, 'input.txt'); Reset(Fin); Close(Fin); Close(Fin); Reset(Fin); readln(Fin,
- 124. Вывод данных в файл var a, b: integer; Fout: Text; ... a:= 1; b:= 2; Assign(Fout,'output.txt');
- 125. Чтение неизвестного количества данных while { не конец файла } do begin { прочитать число из
- 126. Задачи «A»: Напишите программу, которая находит среднее арифметическое всех чисел, записанных в файле в столбик, и
- 127. Обработка массивов Задача. В файле записано не более 100 целых чисел. Вывести в другой текстовый файл
- 128. Обработка массивов Ввод массива: var N: integer; Fin: Text; ... Assign(Fin,'input.txt'); Reset(Fin); N:= 0; while (not
- 129. Обработка массивов Вывод результата: var Fout: Text; ... Assign(Fout, 'output.txt'); Rewrite(Fout); for i:= 1 to do
- 130. Задачи «A»: В файле записано не более 100 чисел. Отсортировать их по возрастанию последней цифры и
- 131. Обработка строк Задача. В файле записано данные о собаках: в каждой строчке кличка собаки, ее возраст
- 132. Обработка строк { найти в строке пробел } { удалить из строки кличку с первым пробелом
- 133. Обработка строк var s, s0: string; ... while not Eof(Fin) do begin readln(Fin, s0); s:= s0;
- 134. Задачи «A»: В файле записаны данные о результатах сдачи экзамена. Каждая строка содержит фамилию, имя и
- 135. Задачи «C»: В файле записаны данные о результатах сдачи экзамена. Каждая строка содержит фамилию, имя и
- 136. Конец фильма ПОЛЯКОВ Константин Юрьевич д.т.н., учитель информатики ГБОУ СОШ № 163, г. Санкт-Петербург [email protected] ЕРЕМИН
- 138. Скачать презентацию


![Выделение памяти (объявление) var A: array[1..5] of integer; V: array[0..5] of real;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-3.jpg)
![Что неправильно? var A: array[10..1] of integer; ... A[5] := 4.5; [1..10]](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-4.jpg)



![Заполнение массива program Arr; const N = 10; var A: array[1..N] of](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-8.jpg)

![Заполнение случайными числами for i:=1 to N do begin A[i]:= 20 +](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-10.jpg)


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

![Поиск в массиве Найти элемент, равный X: i:= 1; while A[i] X](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-16.jpg)
![Поиск в массиве nX:= 0; for i:=1 to N do if A[i]](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-17.jpg)
![Задачи «A»: Заполните массив случайными числами в интервале [0,5]. Введите число X](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-18.jpg)
![Задачи «B»: Заполните массив случайными числами в интервале [0,5]. Определить, есть ли](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-19.jpg)

![Максимальный элемент M:= A[1]; for i:= 2 to N do if A[i]](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-21.jpg)





![Циклический сдвиг элементов «Простое» решение: c:= A[1]; for i:= 1 to N-1](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-27.jpg)

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


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





![Метод пузырька 1-й проход: for j:= N-1 downto 1 do if A[j+1]](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-38.jpg)








![Процедура слияния (II) while iA C[j]:= A[iA]; Inc(iA); Inc(j) end; while iB](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-47.jpg)









![Быстрая сортировка program QuickSort; const N = 7; var A: array[1..N] of](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-57.jpg)













![Зачем нужны символьные строки? var s: array[1..80] of char; { массив символов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-71.jpg)


























![Рекурсивный перебор Перебор К символов var w: string; begin w[1]:='Ы'; { перебор](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/953625/slide-98.jpg)





































Вход системы
Кратчайший путь в графе
Классификация сайтов в интернете
Одномерные массивы
Основы построения систем оповещения
Графические методы и процедуры
Славянский колорит в играх
Транспортный протокол. Проект .v17. Интернет+
Массфолловинг и таргет кейсы
История фотошопа (Display)
Квалификационная работа: Разработка базы данных для учёта успеваемости при семейном обучении
Общая теория алгоритмов
git
Инструкция по получению электроной почты студента
Построение таблиц истинности
Форсайт. Калькулятор
Burint OC 12. Установка
Кибербуллинг
Системный блок: память
Возможности сетевого программного обеспечения для организации коллективной деятельности в компьютерных сетях
Стек протоколов TCP/IP
Автомат выдачи
Пропаганда ПАВ в сети интернет
Состав и устройство компьютера SHOE
Организация сетевого администрирования
MathCAD. Основы работы
07_Funktsionalnoe_predstavlenie_488349700ee190718c7d62ab40969119
v3