Содержание
- 2. ЯЗЫКИ И МЕТОДЫ ПРОГРАММИРОВАНИЯ § 1. ИСТОРИЯ РАЗВИТИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ Одной из самых революционных идей, приведших
- 3. АДУ ЛАВЛЕЙС, одну из немногих современников Чарльза Бэббиджа, кто сумел по достоинству оценить аналитическую машину, называют
- 4. Революционным моментом в истории языков программирования стало появление системы кодирования машинных команд с помощью специальных символов,
- 5. При работе на компьютере «Марк-I» Г.Хоппер и ее группе пришлось столкнуться со многими проблемами и все,
- 6. На заре компьютерной эры машинный код был единственным средством общения человека с компьютером. Огромным достижением создателей
- 7. Уже в 1951 г. Хоппер создала первый в мире компилятор и ею же был введен сам
- 8. В 1954 г. группа под руководством Г. Хоппер разработала систему, включающую язык программирования и компилятор, которая
- 9. В 1958 г. появился компилятор FLOW-MATIC. В отличие от ФОРТРАНа - языка для научных приложений -
- 10. Середина 50-х годов характеризуется стремительным прогрессом в области программирования. Роль программирования в машинных командах стала уменьшаться.
- 11. В середине 60-х годов сотрудники математического факультета Дартмутского колледжа Томас Курц и Джон Кемени создали специализированный
- 12. В начале 60-х годов все существующие языки программирования высокого уровня можно было пересчитать по пальцам, однако
- 13. Первым детищем этого направления стал PL/1 (Programm Language One), 1967 г. Затем на эту роль претендовал
- 14. Языки программирования служат разным целям и их выбор определяется удобностью пользователя, пригодностью для данного компьютера и
- 15. Например, Бейсик широко употребляется при написании простых программ; Фортран является классическим языком программирования при решении на
- 16. Обучаясь программированию на ЛОГО, дети задают простые команды, которые управляют игрушечной черепашкой, снабженной карандашиком. Отметим и
- 17. В конце 50-х годов плодом международного сотрудничества в области программирования явился Алгол (ALGOL, от ALGOrithmic Language
- 18. Развитие идеи Алгола о структуризации разработки алгоритмов нашло наивысшее отражение при создании в начале 70-х годов
- 19. Период с конца 60-х и до начала 80-х годов характеризуется бурным ростом числа различных языков программирования,
- 20. В мае 1979 г. был объявлен победитель - группа ученых во главе с Жаном Ихбиа. Победивший
- 21. Большой отпечаток на современное программирование наложил язык Си (первая версия - 1972 г.), являющийся очень популярным
- 22. В течение многих лет программное обеспечение строилось на основе операциональных и процедурных языков, таких как Фортран,
- 23. Классическое операциональное и/или процедурное программирование требует от программиста детального описания того, как решать задачу, т.е. формулировки
- 24. Принципиально иное направление в программировании связано с методологиями (иногда говорят «парадигмами») непроцедурного программирования. К ним можно
- 25. Классификация языков программирования
- 26. При использовании декларативного языка программист указывает исходные информационные структуры, взаимосвязи между ними и то, какими свойствами
- 27. § 2. ЯЗЫКИ ПРОГРАММИРОВАНИЯ ВЫСОКОГО УРОВНЯ Языки программирования - это формальные языки специально созданные для общения
- 28. При описании языка и его применении используют понятия языка. Понятие подразумевает некоторую синтаксическую конструкцию и определяемые
- 29. Языки программирования, имитирующие естественные языки, обладающие укрупненными командами, ориентированными на решение прикладных содержательных задач, называют языками
- 30. Во-первых, машинная программа в конечном счете записывается с помощью лишь двух символов 0 и 1. Во-вторых,
- 31. Команда на машинном языке содержит очень ограниченный объем информации, поэтому она обычно определяет простейший обмен содержимого
- 32. Языки программирования высокого уровня имеют следующие достоинства: алфавит языка значительно шире машинного, что делает его гораздо
- 33. Таким образом, языки программирования высокого уровня являются машинно-независимыми и требуют использования соответствующих программ-переводчиков (трансляторов) для представления
- 34. МЕТАЯЗЫКИ ОПИСАНИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ Интерпретация конструкций языка программирования должна быть абсолютно однозначной, ибо фраза на языке
- 35. В этом отношении языки программирования значительно отличаются от естественных языков, допускающих неоднозначно интерпретируемые фразы, рассчитанные на
- 36. Для строгого и точного описания синтаксиса языка программирования, как правило, используют специальные метаязыки (языки для описания
- 37. Язык БНФ (называемый также языком нормальных форм) представляет компактную форму в виде некоторых формул, похожих на
- 38. Например, метаформулы ::=А|В ::= | + + | - означают, что в том (сугубо модельном) языке,
- 39. Правая часть метаформулы может содержать правило построения допустимых последовательностей. Допускаются рекурсивные определения терминов и понятий, т.е.
- 40. Рекурсия здесь не мешает конструктивному построению понятия , так как по принятым правилам при первом обращении
- 41. Для задания синтаксических конструкций произвольной длины часто используют фигурные скобки как метасимволы. Фигурные скобки означают, что
- 42. Синтаксическая диаграмма является графическим представлением значения метапеременной метаязыка. Диаграмма состоит из основных символов или понятий языка.
- 43. Еще примеры: Металингвистические формулы в некотором виде заложены в трансляторы; с их помощью ведется проверка конструкций,
- 44. ГРАММАТИКА ЯЗЫКОВ ПРОГРАММИРОВАНИЯ Описанию грамматики языка предшествует описание его алфавита. Алфавит любого языка состоит из фиксированного
- 45. Алфавиты большинства языков программирования близки друг другу и основываются на буквах латинского алфавита, арабских цифрах и
- 46. : : = AaBbCcDdEeFf и т.д. :: = 0 1 2 3 4 5 6 7
- 47. Несмотря на значительные различия между языками программирования, ряд фундаментальных понятий в большинстве из них схожи. Приведем
- 48. В соответствии с теорией алгоритмов выделяют основные (базисные) операторы языка: присвоения, условный и безусловный переход, пустой
- 49. Все операторы языка в тексте программы отделяются друг от друга явными или неявными разделителями, например: S1;S2;...;Sn
- 50. Большая часть операторов ведет обработку величин. Величины могут быть постоянными и переменными. Значения постоянных величин не
- 51. Другая важная классификация величин - простые и структурированные. Простая величина в каждый момент может иметь не
- 52. Важнейшие характеристики структурированной величины таковы: упорядоченность (да или нет), однородность (да или нет), способ доступа к
- 53. Всем программным объектам в языках даются индивидуальные имена. Имя программного объекта называют идентификатором (от слова «идентифицировать»).
- 54. Как правило, в большинстве языков программирования в качестве идентификатора запрещается использовать служебные слова языка. Многим слово
- 55. Программисты выбирают имена по своему усмотрению. Принципы выбора и назначения имен программным объектам естественны. Следует избегать
- 56. Описания или объявления программных объектов связаны с правилами обработки данных. Данные бывают разные и необходимо для
- 57. В некоторых языках стандартные описания простых числовых и символьных данных опускают (описания по умолчанию), или в
- 58. Особый интерес представляют в языках программирования описания нестандартных структур данных, таких как запись, файл, объект, список,
- 59. Переменные играют важнейшую роль в системах программирования. Понятие «переменная» в языках программирования отличается от общепринятого в
- 60. Семантический смысл переменной заключается в хранении некоторого значения, соответствующего ее типу (например, переменная целого типа может
- 61. Функция - это программный объект, задающий вычислительную процедуру определения значения, зависимого от некоторых аргументов. Вводится в
- 62. Выражения строятся из величин - постоянных и переменных, функций, скобок, знаков операций и т.д. Выражение имеет
- 63. Процедура - это программный объект, представляющий некоторый самостоятельный этап обработки данных. По сути, процедуры явились преемниками
- 64. Модуль (Unit) - это специальная программная единица, предназначенная для создания библиотек и разделения больших программ на
- 65. § 3. ПАСКАЛЬ КАК ЯЗЫК СТРУКТУРНО-ОРИЕНТИРОВАННОГО ПРОГРАММИРОВАНИЯ Язык Паскаль, начиная с момента своего создания Н.Виртом в
- 66. Существует много версий языка Паскаль. Различия между ними порой весьма велики. Так, базовая версия Вирта имеет
- 67. Любая Паскаль-программа является текстовым файлом с собственным именем и с расширением .pas. Рассмотрим в качестве примера
- 68. Программа 1 program KvadUravn; {заголовок программы} var {список переменных} a,b,c: real; {коэффициенты уравнения} d,x1,x2: real; {вспомогательные
- 69. Схематически программа представляется в виде последовательности восьми разделов: заголовок программы; описание внешних модулей, процедур и функций;
- 70. Каждый раздел начинается со служебного слова, назначение которого зафиксировано в Паскале так, что его нельзя употреблять
- 71. В этой программе можно выделить четыре раздела. Описание заголовка начинается со служебного слова program, описание констант
- 72. Постоянные величины описываются в разделе констант по схеме: const = В разделе констант может быть описано
- 73. Группа типов, значения каждого из которых можно перечислить в некотором списке - скалярные типы. Для них
- 74. Для логического типа выполняется неравенство: false Переменные описываются в разделе описания переменных по схеме: var :
- 75. Над целыми величинами (тип integer) определены арифметические операции : * (умножение), div (деление нацело), mod (вычисление
- 76. Над вещественными величинами определены операции: *, +, -, /, а также стандартные функции при вещественном или
- 77. Выражения - это конструкции, задающие правила вычисления значений переменных. В общем случае выражения строятся из переменных,
- 78. Примеры. l:=2*pi*r; p:=(a+b+c)/2; z:=sqrt(sqr(x)+sqr(y)) В Паскале можно вводить с клавиатуры числовые и символьные данные. Имеются две
- 79. Процедура readln отличается от read только тем, что при завершении ввода курсор перемещается в начало следующей
- 80. Процедура write(x1,x2,...,xN) печатает на экране значения выражений из списка x1, х2, ..., xN. Процедура writeln отличается
- 81. Для управления печатью используются форматы данных. Пусть х - переменная типа real. Если не использовать форматы,
- 82. Пусть, например, х = 387.26. Следующая таблица демонстрирует влияние форматов на вывод значения х: оператор строка
- 83. 3.2. ОСНОВНЫЕ КОНСТРУКЦИИ ЯЗЫКА Паскаль - язык структурного программирования. Это означает, что программист должен выражать свои
- 84. Раздел операторов в программе всегда является составным оператором. Служебные слова begin и end часто называют операторными
- 85. Пример: составим программу, которая определяет длину общей части двух отрезков числовой оси, заданных координатами своих концов
- 86. Оператор варианта имеет следующую форму: case of : ; : ; …………………………………………………… : end. Выражение, стоящее
- 87. Оператор варианта вычисляет значение выражения, записанного после case. Если его значение совпадает с одной из констант
- 88. В качестве примера приведем программу, которая в зависимости от номера месяца выдает сообщение о времени года.
- 89. Для реализации циклов в Паскале имеются три оператора. Если число повторений известно заранее, то удобно воспользоваться
- 90. Цикл с предусловием является наиболее мощным в Паскале. Другие операторы цикла можно выразить через него. Его
- 91. На склад привозят однородный груз на машинах различной грузоподъемности. На компьютер, управляющий работой склада, поступает информация
- 92. Программа 5 program store; var sum,w:real; num:integer; begin num:=0;sum:=0; while sum begin writeln('введите вес груза машины');
- 93. Оператор цикла с постусловием имеет форму: repeat until Действие: выполняется последовательность операторов. Далее вычисляется значение логического
- 94. Программа 6 program store2; var sum,w:real; num:integer; begin num:=0; sum:=0; repeat writeln('введите вес груза машины'); readln(w);
- 95. Оператор цикла с параметром предусматривает повторное выполнение некоторого оператора с одновременным изменением по правилу арифметической прогрессии
- 96. Если в этом описании отношение = , а функцию succ на pred, то параметр в цикле
- 97. Программа 7 program mili; const a=1.603; b='км'; с='мили'; var k:integer; m:real; begin writeln(b:5,c:7); writeln; for k:=1
- 98. СТРУКТУРЫ ДАННЫХ Мы уже познакомились с простыми типами real, integer, boolean, byte, char. В Паскале программист
- 99. Поскольку перечисляемый тип относится к ординальным, то к его элементам можно применять функции ord(x), pred(x), succ(x)
- 100. Программа 8 program week; type days=(mon,tue,wed,thu,fri,sat,sun); var d:days; begin for d:=mon to sun do case d
- 101. Интервальный тип - это подмножество другого уже определенного ординального типа, называемого базовым. Интервал можно задать в
- 102. Операции и функции - те же, что и для базового типа. Использование интервальных типов в программе
- 103. СОСТАВНЫЕ СТРУКТУРЫ. Данные, с которыми имеет дело ЭВМ, являются абстракциями некоторых реальных или существующих в воображении
- 104. Значительные удобства представляются пользователю в Паскале при организации однотипных величин в виде множества с соответствующим набором
- 105. Часто используемый составной тип - массив. Массив - это последовательность, состоящая из фиксированного числа однотипных элементов.
- 106. Тип элементов - произвольный, он может быть составным. Число типов индексов называется размерностью массива. После описания
- 107. Обращение к элементу массива осуществляется с помощью задания имени переменной, за которым следует заключенный в квадратные
- 108. В Турбо-Паскале разрешена инициализация начальных значений составных перемененных с помощью, так называемых, типизированных констант. Типизированные константы
- 109. Пример: используя массив, составим программу, которая напечатает на экране 20 чисел Фибоначчи. Последовательность Фибоначчи определяется равенствами
- 110. Программа 9 program fibon; const n=20; var a:array[1..n] of integer; k:integer; begin a[1]:=1; a[2]:=1; for k:=3
- 111. Рассмотрим часто встречающуюся задачу упорядочения членов числовой последовательности по какому-либо признаку. Пример: упорядочить члены числовой последовательности
- 112. В начале просмотра присвоим некоторой логической переменной значение true: p:=true; если при просмотре пар была хотя
- 113. Программа 10 program bubble; uses crt; const a:array[1..10] of integer=(19, 8,17, 6,15, 4,13, 2,11, 0) ;
- 114. Обработка элементов двумерных массивов (матриц) обычно выполняется с помощью двойного цикла. Один цикл управляет номером строки,
- 115. 1. Строковый тип определяется в разделе описания типов, переменные этого типа - в разделе описания переменных:
- 116. Символы, составляющие строку, занумерованы слева направо; к ним можно обращаться с помощью индексов, как к элементам
- 117. Для строковых величин определены следующие четыре стандартные функции. 1. Функция соединения - concat(s1,s2,...,sk). Значение функции -
- 118. В Паскале определены также четыре стандартные процедуры для обработки строковых величин: 1. Процедура удаления delete(s,i,k). Из
- 119. Рассмотрим несколько программ, в которых используются строковые величины. 1. Составить программу, определяющую количество гласных в русском
- 120. Программа 11 program vowel; const с:string[18] = 'аеиоуыэюяАЕИОУЫЭЮЯ'; var a:string[100]; k,n:integer; begin writeln(‘введите текст’); readln(a); n:=0;
- 121. 2. Заменить в арифметическом выражении функцию sqr на ехр. Замена выражения sqr на ехр достигается последовательным
- 122. 3. Ввести и упорядочить по алфавиту 10 латинских слов. В программе определим массив из 10 элементов-строк
- 123. Множество в Паскале имеет такой же смысл, как и в алгебре - это неупорядоченная совокупность отличных
- 124. Задание конкретного множества определяется правилом (конструктором) - списком элементов или интервалов, заключенным в квадратные скобки. Пустое
- 125. Можно совместить описание множественного типа и соответствующих переменных: var code : set of 0..7; digits :
- 126. Для данных множественного типа определены операции объединения, пересечения и дополнения множеств, обозначаемые в Паскале соответственно знаками
- 127. Пусть alfa- множество всех букв латинского алфавита. Будем вводить заданный текст с клавиатуры символ за символом,
- 128. Программа 14 program search; const alfa:set of char=['a' . .'z']; var c:char; E,N:set of char; begin
- 129. Переменные множественного типа удобно применять в задачах, где порядок данных не имеет значения, например при моделировании
- 130. В программе используются обозначения: mn - множество натуральных чисел из интервала 1..36, а - множество чисел,
- 131. Программа 15 program lottery; type mn = set of 1 . . 36; var x,a, z:
- 132. Записи (комбинированный тип) - одна из наиболее гибких и удобных структур данных, применяющихся при описании сложных
- 133. Так же, как и массив, запись содержит ряд отдельных компонент, но компонентами записи могут быть данные
- 134. Как и при описании массивов, можно совместить описание типа записи и соответствующих переменных. Например, данные о
- 135. С компонентами записи можно обращаться как с переменными соответствующего типа. Обращение к компонентам записи осуществляется с
- 136. Программа 16 program compl; type compl = record re : real; im : real end; var
- 137. Громоздкость обозначений в программе компенсируется большей наглядностью алгоритма за счет структуризации данных. Во многих случаях, если
- 138. Например: man = record fio : record fam, im, otch : string[10]; end; data : record
- 139. В Паскале разрешается использовать тип «запись» при описании других составных типов данных, например, можно построить массив
- 140. Предположим, что вводится список группы с соответствующими оценками за экзамены. Графа «Балл» вычисляет суммарную оценку за
- 141. Программа 17 program spisok; type stud = record fio :string[20]; ex1, ex2, ехЗ :2 . .
- 142. for i:= 1 to n do with x[i] do begin bal:=ex1+ex2+ex3; if (ex1=2) or (ex2=2) or
- 143. 3.4. ПРОЦЕДУРЫ И ФУНКЦИИ Описание и вызов. В Паскале подпрограммы называются процедурами и функциями и описываются
- 144. Данные для обработки могут передаваться процедуре через глобальные имена или через аргументы процедуры. В процедуре каждый
- 145. Указанные выражения называют фактическими параметрами. Их список должен точно соответствовать списку описаний формальных параметров процедуры. Во
- 146. Программа 18 program section; var х:integer; procedure line(a:integer; c:char) ; var j:integer; begin for j:=1 to
- 147. Функция - это подпрограмма, определяющая единственное скалярное, вещественное или строковое значение. Отличия подпрограммы-функции от процедуры: заголовок
- 148. Пример: составим программу, которая для заданных четырех натуральных чисел а, b, с, d напечатает наибольшие общие
- 149. Программа 19 Program four; var a,b,c,d,m,n:integer; function nod(x,у:integer):integer; var h:integer; begin if y=0 then h:=x else
- 150. Внешние библиотеки. Как известно, подпрограммы (процедуры и функции) используются в программах с целью их структурирования, а
- 151. С одной из таких библиотек - встроенной библиотекой стандартных подпрограмм - пользователи имеют дело практически всегда.
- 152. Внешние подпрограммы создаются обычным образом в виде отдельного файла или файлов. Для подключения внешних подпрограмм в
- 153. Программа 20 procedure PRIVET; var a:char; begin clrscr; gotoxy(20,10); write('здравствуйте, желаю успехов!'); repeat {цикл позволяет} gotoxy(35,50);
- 154. Пусть представленные три подпрограммы записаны в файл с именем lab.pas. А теперь составим программу, использующую созданную
- 155. Модули используют в более поздних версиях Паскаля для создания библиотек и разделения больших программ на логически
- 156. Таким образом модуль - это набор констант, типов данных, переменных, процедур и функций. Каждый модуль компилируется
- 157. В Турбо-Паскале версии 5.0 и выше применяют стандартные модули CRT, GRAPH и др. В этих модулях
- 158. Пример. Создать модуль, дополняющий математические возможности Паскаля арифметическими действиями над комплексными числами. Будем представлять комплексные числа
- 159. Создаваемый модуль будет включать четыре процедуры: Sum - сумма, Raz -разность, Proiz - произведение, Chastn -
- 160. Программа 22 unit CompChisla; interface procedure Sum(a,b,c,d: real; var x,y: real); procedure Raz(a,b,c,d: real; var x,y:
- 161. 3.5. РАБОТА С ФАЙЛАМИ Файл (последовательность) - это одна из наиболее фундаментальных структур данных. Программная организация
- 162. В качестве типа компонентов файла разрешается использовать любой тип данных, кроме файлового. Например: type intfile =
- 163. Файловая переменная является буфером между Паскаль-программой и внешним устройством и должна быть логически с ним связана.
- 164. Если внешним устройством является принтер, то связь осуществляется оператром assign(f, ‘lst:'). Здесь lst - логическое имя
- 165. Закрытие файла осуществляется командой close(f). Условно файл можно представить в виде ленты, у которой есть начало,
- 166. Команда закрытия файла close(f) обязательна, поскольку эта команда формирует маркер конца файла, что в большинстве случаев
- 167. На практике широко используются текстовые файлы, которые состоят из литерных (логических) строк. Поэтому в языке Паскаль
- 168. Ниже приведены несколько примеров, иллюстрирующих работу с файлами. Пример 1. Вывод данных на печатающее устройство -
- 169. Пример 2. Создание и сохранение в файле «xxx.dat» последовательности целых чисел от 10 до 20. Программа
- 170. Пример 4. В текстовом файле (text) «slov.txt» содержится русский текст. Определить сколько гласных букв в тексте.
- 171. Поскольку длина текста (файла) неизвестна, то в цикле «пока» используется логическая функция eof(f), которая возвращает значение
- 172. Программа 27 (а) program key; var n: integer; f: file of integer; begin assign (f,'n.key’); rewrite(f);
- 173. Программа 27 (б) program sekret; var slovo,anslovo: string[100]; alfavit : string[33]; n, i, k, p :
- 174. Программа 27 (в) program retsek; var slovo, anslovo : string[100]; alfavit : string[33]; n,i,k,p : integer;
- 175. 3.7. РАБОТА С ГРАФИКОЙ Машинная (компьютерная) графика - одно из важных направлений в современной прикладной информатике.
- 176. Подключение модуля Graph.tpu к программе выполняется директивой uses graph; Инициализация графического экрана осуществляется с помощью процедуры
- 177. Таблица 3.1 Некоторые сведения о драйверах и определяемых ими режимах
- 178. Процедура инициализации в Турбо-Паскале имеет три аргумента: Initgraph( , ,' ') Она может быть выполнена так:
- 179. Целая константа detect=0 в модуле Graph автоматически распознает драйвер и устанавливает режим максимального разрешения для данной
- 180. uses graph; var gd, gm, errorcod: integer; begin gd:=detect; initgraph(gd,gm,' ') ; errorcod:=graphresult; if errorcod ogrok
- 181. Процедура Halt останавливает выполнение программы и возвращает управление операционной системе. Для формирования палитры используется система смешения
- 182. Координаты точек воспринимаются в «экранной» системе координат, в которой начало - верхний левый угол экрана, ось
- 183. Таблица 3.2 Основные процедуры модуля Graph
- 184. Первый аргумент процедуры setfillstyle(t,c) - тип закраски t - принимает значения из интервала 0..12. Наиболее употребителен
- 185. Размер букв определяется параметром d, принимающим значения из интервала 1.. 10. Если d = 1 и
- 187. Скачать презентацию












































































































![Программа 9 program fibon; const n=20; var a:array[1..n] of integer; k:integer; begin](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-109.jpg)


![Программа 10 program bubble; uses crt; const a:array[1..10] of integer=(19, 8,17, 6,15,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-112.jpg)






![Программа 11 program vowel; const с:string[18] = 'аеиоуыэюяАЕИОУЫЭЮЯ'; var a:string[100]; k,n:integer; begin](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-119.jpg)







![Программа 14 program search; const alfa:set of char=['a' . .'z']; var c:char;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-127.jpg)









![Например: man = record fio : record fam, im, otch : string[10];](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-137.jpg)


![Программа 17 program spisok; type stud = record fio :string[20]; ex1, ex2,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-140.jpg)
![for i:= 1 to n do with x[i] do begin bal:=ex1+ex2+ex3; if](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-141.jpg)






























![Программа 27 (б) program sekret; var slovo,anslovo: string[100]; alfavit : string[33]; n,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-172.jpg)
![Программа 27 (в) program retsek; var slovo, anslovo : string[100]; alfavit :](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/385141/slide-173.jpg)











Династический кризис 1825 года. Выступление декабристов
Михайлова Татьяна Николаевна
Поддержка субъектов малого и среднего предпринимательства в условиях пандемии
Дзержинский филиал ННГУ
Какие слова являются наречиями?
т.в. Flower Fresh 30мл
Траттория Геркулес
Метод проектов как одна из технологий развития познавательной активности учащихся.
Природные зоны Африки.Тропические пустыни. Влияние человека на природу
Жарка в аппаратах ИК-нагрева
Презентация на тему Птицы отряда Куриные
экономика потребительская корзина
Расстройства речи
Проект Лагода Парк
Экспофорум 2021. Газпромбанк
Arustamov Markar Ivanovich, a doctor from birth
ОАО «Челябинский цинковый завод» Лучший PR проект в коммерческой сфере «Тайна волшебного света»
График тригонометрических функций
Microsoft PowerPoint
Информация о работе клиентской службы УПФР
Презентация на тему Интеграция образовательных областей в НОД
Углерод
Атомная энергетика (9 класс)
Живопись в России на рубеже XIX и XX веков
ЭмоциональныйЭкстремальныйЭнергичныйАзартный Зрелищный Чемпионский.
Сведения о наречии
Прямоугольное проецирование. 8 класс
Презентация на тему Спортсмены – наша гордость! (Подготовительная к школе группа)