Скачать презентацию Язык Pascal Свойства алгоритмов 1 2 3 Скачать презентацию Язык Pascal Свойства алгоритмов 1 2 3

Pascal_ABC_Ma_10Б.ppt

  • Количество слайдов: 100

Язык Pascal Язык Pascal

Свойства алгоритмов 1) 2) 3) 4) 5) Массовость – способность алгоритма быть применимым не Свойства алгоритмов 1) 2) 3) 4) 5) Массовость – способность алгоритма быть применимым не к одному исходному данному, а к целому классу таковых. Результативность – способность алгоритма приводить к результату. Детерминированность – способность алгоритма быть чётко и ясно сформулированным. Дискретность – способность алгоритмы быть разбитым на конечное число шагов. Конечность – способность алгоритма быть законченным.

Способы записи алгоритмов 1)Словесный 2)Графический 3)Структурно-стилизованный 4)Алгоритмический ( языки программирования) 5)Табличный Способы записи алгоритмов 1)Словесный 2)Графический 3)Структурно-стилизованный 4)Алгоритмический ( языки программирования) 5)Табличный

Значения графических блоков – Блок ввода данных с клавиатуры, блок вывода результатов на экран. Значения графических блоков – Блок ввода данных с клавиатуры, блок вывода результатов на экран. – Блок начала и конца программы, процесса. – Вычислительный процесс, действие. – Логический блок (исп. В циклических и разветвляющихся алгоритмах). – Вывод результатов на бумажный носитель. – Циклический блок, повторяющийся процесс.

Задача № 1 Дано: a, b Найти: a + b=? начало a, b S: Задача № 1 Дано: a, b Найти: a + b=? начало a, b S: =a+b S конец Алг сумма (вещ a, b, S) арг a, b рез S Нач S: =a+b Всё Конец

Задача № 2 Дано: a, b Найти: Max-? Алг max 2 x (вещ a, Задача № 2 Дано: a, b Найти: Max-? Алг max 2 x (вещ a, b, max) арг a, b рез max Нач если а>b то max: =a иначе max: =b Всё конец Начало a, b, c, d. a>b y: =a y: =b max конец

Задача № 3 Начало Дано: a, b, с Найти: Max-? a, b, c, d. Задача № 3 Начало Дано: a, b, с Найти: Max-? a, b, c, d. a>b y: =a y: =b y>c max: =y max: =c max конец Алг max 3 x (вещ a, b, c, max) арг a, b, c. рез max. Нач если а>b то y: =a иначе y: =b Всё если y>c то max: =y иначе max: =c Всё конец

Задача № 4 Дано: a, b, c, d Найти: Max-? Алг max 4 x Задача № 4 Дано: a, b, c, d Найти: Max-? Алг max 4 x (вещ a, b, c, d, max) арг a, b, c, d. рез max. Нач если а>b то y: =a иначе y: =b Всё если y>c то z: =y иначе z: =c Всё если z>d то max: =z иначе max: =d Всё конец Начало a, b, c, d. a>b y: =a y: =b y>c z: =y z: =c z>d max: =d max конец

Задача № 5 начало Дано: 1. . . n Найти: S-? n S: =0 Задача № 5 начало Дано: 1. . . n Найти: S-? n S: =0 Для i от 1 до N или 1 x S: =S+x S конец aлг Summa (вещ x, n, S); арг x, n рез S нач вещ i S: = 0 для i=1 до n нц S: =S+x кц кон

Задача № 6 Дано: 1. . . n, Найти S для х: 2. aлг Задача № 6 Дано: 1. . . n, Найти S для х: 2. aлг Summa (вещ i, n, S); арг i, n рез S нач вещ i S: = 0 для i=1 до n нц если i: 2 то S: =S+i иначе S=0 кц кон начало n S: =0 Для i от 1 до N или 1 i/2 S=S+i S S=0 конец

Задача № 7 Дано: 1. . . n Найти: S-? для 9<x<99 aлг Summa Задача № 7 Дано: 1. . . n Найти: S-? для 9

Задача № 8 Дано: x=i до n Найти: у; для x>0 у: =x*x*x*x для Задача № 8 Дано: x=i до n Найти: у; для x>0 у: =x*x*x*x для x<0 y: =x*x алг числ (вещ n, x, y) арг x, n рез y Нач Для i от 1 до n нц если x>0 то y: =x*x*x*x иначе y: =x*x кц конец начало n i: =1, N y x конец X>0 y: =x*x*x*x y: =x*x

Задача № 9 В начальный момент времени была одна бактерия, через минуту стало 2. Задача № 9 В начальный момент времени была одна бактерия, через минуту стало 2. Каждую минуту каждая бактерия делилась надвое. Написать программу, которая за введённые минуты считает кол-во бактерий. Алг бакт (вещ t, b) арг t рез b Нач вещ i b: =1 Для i от 1 до t нц b: =2 b кц конец начало t b: =1 Для i от 1 до t b: =2 b b конец

Задача № 10 Дано: с1, c 2, c 3, c 4, c 5, c Задача № 10 Дано: с1, c 2, c 3, c 4, c 5, c 6 Найти: с1+с2+с3 ? с3+с4+с5 Алг билет (вещ с1, c 2, c 3, c 4, c 5, c 6, S 1, S 2) арг с1, c 2, c 3, c 4, c 5, c 6 рез S 1, S 2 Нач S 1: =c 1+c 2+c 3 S 2: =c 4+c 5+c 6 если S 1=S 2 то happy иначе unhapppy Всё Конец. начало c 1, c 2, c 3, c 4, c 5, c 6 S 1: =c 1+c 2+c 3 S 2: =c 3+c 4+c 5 S 1=S 2 Happy unhappy конец

Запись графически и на «Кумире» Найти минимальн ое из 10 чисел, заданных случайным образом Запись графически и на «Кумире» Найти минимальн ое из 10 чисел, заданных случайным образом на интервале от 1 до 100 Алг min (вещ x, min) арг x рез min нач для i от 1 до 9 нц если x

Задача № 12 Составить программу, определяющ ую максимальн ое из 10 введённых с клавиатуры Задача № 12 Составить программу, определяющ ую максимальн ое из 10 введённых с клавиатуры чисел. (числа могут быть как положитель ными, так и отрицательн ыми) Алг а 1 (вещ S, a, b, c) арг а, b, c рез S S: =100 a+10 c+b нач если a=b то ‘palendrom’ иначе ‘ne palendrom’ всё Конец. начало S S: =100 a+10 c+b a=b palendrom Ne palendrom конец

Задача Написать программу, которая будет вводить целые числа до тех пор, пока не будет Задача Написать программу, которая будет вводить целые числа до тех пор, пока не будет введён 0. посчитать количество положительных и отрицательных чисел. Алг 1 (вещ x, kp, ko) Арг х Рез кр, ко Нач Кр: =0 Ко: =0 Повторить Если x>0 То кр: =кр+1 Если x<0 То ко: =ко+1 Пока х=0 Всё конец начало Kp: =0 Ko: =0 x x>0 Kp: =kp+1 x<0 Ko: =ko+1 x=0 Kp, ko конец

Задача № 14 С клавиатуры вводится длинное целое число. Посчитать количество цифр в числе. Задача № 14 С клавиатуры вводится длинное целое число. Посчитать количество цифр в числе. Алг 2 (вещ n, t) Арг n Рез t Нач t: =0 Повторить n: = n div 10 t: =t+1 Пока n=0 Всё конец. начало n t: =0 n: =n div 10 t: =t+1 n=0 t конец

Задача № 15 С клавиатуры вводится целое число. Посчитать сумму его цифр. алг 3 Задача № 15 С клавиатуры вводится целое число. Посчитать сумму его цифр. алг 3 (вещ n, S) Арг n Рез S S: =0 Повторить S: = S+ (n mod 10) n: = n div 10 Пока n=0 Всё Конец. начало n S: =0 S: =S+(n mod 10 n: =n div 10 n=0 S конец

Задача № 16 Положительное ноль отрицательное Задача № 16 Положительное ноль отрицательное

Символьный тип char, строковый тип string Символьный тип данных представляет собой любой символ, который Символьный тип char, строковый тип string Символьный тип данных представляет собой любой символ, который может быть отражён на экране дисплея и занимает в памяти компьютера 1 байт. Описывается служебным словом char и его значение заключается в апострофе а = ‘b’. Символы, как любые однотипные данные, могут быть объединены в массивы. В описании такого массива можно задать строку символов (a: array [1… 20] of char – строка из 20 символов), или таблицу (b: array [1… 10, 1… 15] of char – 10 строк по 15 символов в каждом), состоящую из строк символов. Обработка символьных массивов мало чем отличается от обработки числовых.

Обработка строк, операции над строками. Для строк определены следующие операции: • Объединение (+)ж • Обработка строк, операции над строками. Для строк определены следующие операции: • Объединение (+)ж • Сравнение (=, <>, >=, <, >) Сравнение строк производится слева направо до первого несовпадающего символа; длиннее считается та строка, у которой первый несовпадающий символ имеет больший номер в таблице кодов (буквы в таблице расположены по возрастанию) ‘abc’>’abc’ Если строки имеют различную длину, но в общей части символы совпадают, считается, что более короткая строка меньше. ‘abcd’ < ‘abcdfe’ При вводе текста пробел также является символом.

Задача № 17 С клавиатуры вводится буквы, вывести на экран её код, затем вывести Задача № 17 С клавиатуры вводится буквы, вывести на экран её код, затем вывести на экран последнюю и предыдущую.

Задача № 18 С клавиатуры вводится ascii код, вывести соответствующий символ. Задача № 18 С клавиатуры вводится ascii код, вывести соответствующий символ.

Задача № 19 Найти разность кодов чисел 2 и 6. Задача № 19 Найти разность кодов чисел 2 и 6.

Задача № 20 Дано слово Бойтик, начти сумму его кодов. Задача № 20 Дано слово Бойтик, начти сумму его кодов.

Использование процедур и функций над строками. СЦЕПЛЕНИЕ – CONCAT (строка 1, строка 2, …)Аналогична Использование процедур и функций над строками. СЦЕПЛЕНИЕ – CONCAT (строка 1, строка 2, …)Аналогична операции сцепления. Исходные данные: а=‘код’, b=‘ил’ Оператор: S: =concat (‘кро’, a, b). Результат: b: =‘рок’ КОПИРОВАТЬ - COPY (строка, число 1, число 2). Отыскивает первое вхождение строки 1 в строку 2 и возвращает номер начальной позиции вхождения или нуль, если строка 1 не входит в строку 2. Исходные данные: S: =‘крокодил’. Оператор: b: =copy (S, 2, 3). Результат: b: =‘рок’. ПОЗИЦИЯ – POS (строка 1, строка 2). Отыскивает первое вхождение строка 1 в строку 2 и возвращает номер начальной позиции вхождения или нуль, если строка 1 не входит в строку 2. Исходные данные: S= ‘крокодил’. Оператор: i: =pos (‘око’, S). Результат i=3. Оператор: i: =pos ‘(я’, ’крокодил’). Результат: i=0.

Продолжение ДЛИНА – LENGTH (строка). Возвращает длину строки-аргумента. Исходные данные: S= ‘крокодил’ Оператор: j: Продолжение ДЛИНА – LENGTH (строка). Возвращает длину строки-аргумента. Исходные данные: S= ‘крокодил’ Оператор: j: = length (S); Результат: j=8. ВСТАВИТЬ – INSERT (строка 1, строка 2, число). Вставляет строку 1 в строку 2, начиная с позиции, заданной числом. Если в результате получается строка больше максимальной длины, то она усекается справа. Исходные данные: S= ‘крокодил’. Оператор: d: =copy (S, 3, 3). Результат: d= ‘око’. Оператор: insert (‘H’, d, 3). Результат: d= ‘окно’. УДАЛИТЬ – DELETE (строка, число 1, число 2). Удаляет из строки подстроку, начиная с позиции, заданной числом 1, и длиной, заданной числом 2. Если число 1 больше размера строки, то подстрока удаляется. Если число 2 больше имеющегося количества, то удаляются символя до конца строки. Исходные данные: S= ‘крокодил’. Оператор: delete (S, 4, 3). Результат: S= ‘кроил’. Оператор: delete (S, 1, 1). Результат; S= ‘роил’.

Продолжение ПРЕОБРАЗОВАТЬ число и строку – STR (число [: M[: N]], строка)ю Преобразует число Продолжение ПРЕОБРАЗОВАТЬ число и строку – STR (число [: M[: N]], строка)ю Преобразует число в строку. М задаёт общее количество символов, получаемых в строке, N для вещественных чисел (типа real) задаёт количество цифр в дробной части: Str (123, S). Результат: S=‘ 123’. ПРЕОБРАЗОВАТЬ строку в число – VAL (строка, число, код). Преобразовать строку символов во внутреннее представление числа. Код указывает код неправильного символа или равен 0 в случае успешного преобразования. Val (‘+12. 3’, v, k). Результат v=12. 3, k=0 (преобразование прошло успешно). Val (‘ 23+5’, v, k). Результат v – не определено, k=3 (ошибка при попытке преобразовать третий символ).

Пример № 1 (сцепление) Пример № 2 (Копировать) Пример № 1 (сцепление) Пример № 2 (Копировать)

Пример № 3 (позиция) Пример № 4 (длина) Пример № 3 (позиция) Пример № 4 (длина)

Пример № 5 (вставить) Пример № 6 (Удалить) Пример № 5 (вставить) Пример № 6 (Удалить)

Пример № 7(преобразовать) Пример № 7(преобразовать)

Пример № 8 (преобразовать) Пример № 8 (преобразовать)

Задача № 21 • Выделить часть строки после первого пробела Задача № 21 • Выделить часть строки после первого пробела

Задача № 22 • Удалить последний символ строки S. Задача № 22 • Удалить последний символ строки S.

Задача № 23 • Записать оператор, позволяющий получить из слова «моряк» слово «морячок» . Задача № 23 • Записать оператор, позволяющий получить из слова «моряк» слово «морячок» .

Задача № 24 Дана строка. Подсчитать в ней количество вхождений букв r, k, t. Задача № 24 Дана строка. Подсчитать в ней количество вхождений букв r, k, t.

Задача № 25 Дана строка. Определить, сколько в ней символов *, ; , : Задача № 25 Дана строка. Определить, сколько в ней символов *, ; , : .

Задача № 26 Дана строка, заканчивающаяся точкой. Подсчитать, сколько в ней слов. Задача № 26 Дана строка, заканчивающаяся точкой. Подсчитать, сколько в ней слов.

Задача № 27 • С клавиатуры вводится строка слов, опре 6 делить длину наибольшего Задача № 27 • С клавиатуры вводится строка слов, опре 6 делить длину наибольшего слова.

Задача № 28 • Написать программу с переменной text 1 и вопросом, на который Задача № 28 • Написать программу с переменной text 1 и вопросом, на который нужно дать ответ. Результат сцепления этих строк положить в 3 строку и вывести на экран.

Задача № 28 Дана строка символов. Группа символов между пробелами считается словами. Определить самое Задача № 28 Дана строка символов. Группа символов между пробелами считается словами. Определить самое длинное слово в строке и количество слов такой же длины.

Задача № 29 • Дано слово. Определить, является ли оно палиндромом. Задача № 29 • Дано слово. Определить, является ли оно палиндромом.

Задача № 30 • Дана строка символов. Группа символов между пробелами считается словами. Определить Задача № 30 • Дана строка символов. Группа символов между пробелами считается словами. Определить количество слов в строке.

Операторы графиков в Turbo Pascal Set. Bk. Color – устанавливает текущий цвет фона, используя Операторы графиков в Turbo Pascal Set. Bk. Color – устанавливает текущий цвет фона, используя палитру, где Color – переменная типа Word. Put Pixel (х, у, color) – выводит точку с заданным цветом (где х, у – const или переменная типа integer – координаты точки. Line (х1, у1, х2, у2) – х1, у1, х2, у2 – координаты начала и конца линии (const, переменная – integer) Set view Port (х1, у1, х2, у2, clip) – clip – Boolean, определитель удаления не умещающихся элементов изображения Clear Device – очищает экран цветом фона (графический курсор при этом находится в левом верхнем углу) Circle (x, y, r) – окружность (x, y – integer, r – word)

Установка цвета графических фигур • • • • Set. Color(1) - синий Set. Color(2) Установка цвета графических фигур • • • • Set. Color(1) - синий Set. Color(2) - зелёный Set. Color(3) - бирюзовый Set. Color(4) - красный Set. Color(5) - лиловый Set. Color(6) - коричневый Set. Color(7) - серый Set. Color(8) – тёмно-серый Set. Color(9) – васильковый синий Set. Color (10) - салатовый Set. Color(11) – светло-бирюзовый Set. Color(12) – кораллово-розовый Set. Color(13) – ярко-розовый Set. Color(14) - жёлтый

Задача № 31 Вывести на экран несколько циклически расположенных кругов, установив при этом цвет Задача № 31 Вывести на экран несколько циклически расположенных кругов, установив при этом цвет их окружностей и цвет фона.

Задача № 32 • Написать программу, выводящую на экран последовательно круги и прямоугольники в Задача № 32 • Написать программу, выводящую на экран последовательно круги и прямоугольники в случайной последовательности и со случайным выбором цвета.

Задача № 33 • Написать программу, выводящую на экран точки случайным образом со случайным Задача № 33 • Написать программу, выводящую на экран точки случайным образом со случайным выбором цвета, создавая эффект звёздного неба.

Задача № 34 • Написать программу, выводящую и удаляющую случайным образом круги со случайным Задача № 34 • Написать программу, выводящую и удаляющую случайным образом круги со случайным выбором цвета.

Задача № 35 • Написать программу, выводящую на экран случайным образом прямоугольники со случайным Задача № 35 • Написать программу, выводящую на экран случайным образом прямоугольники со случайным выбором цвета.

Задача № 36 Задача № 36

Строчные и символьные переменные символы(char), множества(set of), строки(string). Символьный тип данных представляет собой любой Строчные и символьные переменные символы(char), множества(set of), строки(string). Символьный тип данных представляет собой любой символ, который может быть отображён на экране дисплея и занимает в памяти компьютера 1 байт. Описывается служебным словом char и его значение заключается в апостроф: а=‘b’. Символы как любые однотипные данные могут быть объединены в массивы. В описании такого массива можно задать строку символов ( a: array of c[1… 20] of char – строка из 20 символов) или таблицу (b: array [1… 10, 1… 15] of char - 10 строк по 15 символов в каждой), состоящую из строк символов. Обработка символьных массивов мало чем отличается от обработки числовых.

Задача № 37 • Сосчитать количество гласных букв в строке Задача № 37 • Сосчитать количество гласных букв в строке

Задача № 38 • слово задано как массив символов, получить новое слово, состоящее из Задача № 38 • слово задано как массив символов, получить новое слово, состоящее из символов исходного массива, записанных в обратном порядке

Задача № 39 Дана строка, заканчивающаяся точкой. Подсчитать, сколько в ней слов. Задача № 39 Дана строка, заканчивающаяся точкой. Подсчитать, сколько в ней слов.

Задача № 40 • Дан текст. Слова отделяются друг от друга «; » , Задача № 40 • Дан текст. Слова отделяются друг от друга «; » , в конце предложения стоит «: » . Найти количество слов, оканчивающихся буквой а.

Задача № 41 • Найти количество слов в тексте, начинающихся на букву b Задача № 41 • Найти количество слов в тексте, начинающихся на букву b

Операции над строками Для строковых величин определены следующие четыре стандартные функции: 1. Функция соединения Операции над строками Для строковых величин определены следующие четыре стандартные функции: 1. Функция соединения - concat(sl, s 2, . . . , sk). Значение функции - результат соединения строк sl , s 2, . . . sk, если он содержит не более 256 символов. 2. Функция выделения - copy(s, i, k). Из строки s выделяется k символов, начиная с i-того символа: а: =сору('крокодил', 4, 3); (в результате а='код’). 3. Функция определения длины строки - length(s). Вычисляется количество символов, составляющих текущее значение строки s: b: =length('каникулы'); (b=8). 4. Функция определения позиции - pos(s, t). Вычисляется номер позиции, начиная с которого строка s входит первый раз в строку t; результат равен 0, если строка s не входит в t: с: =роs('ом', 'компьютер'); (с=2). В Паскале определены также четыре стандартные процедуры для обработки строковых величин: 1. Процедура удаления delete(s, i, k). Из строки s удаляется k символов, начиная с i-того символа: s: ='таракан'; delete(s, 5, 2); (в результате S='таран'). 2. Процедура вставки - insert(s, t, i). Строка s вставляется в строку t, начиная с позиции i: t: ='таран'; insert ('ka', t, 5); (t='таракан'). 3. Процедура преобразования числа в строку символов - str(k, s): str(564, s); (s='564'). 4. Процедура преобразования строки из цифр в число - val(s, k, i): val('780', k, i); (k=780; i=0).

Множества • • Тип «множество» задаёт интервал значений, который является множеством всех подмножеств базового Множества • • Тип «множество» задаёт интервал значений, который является множеством всех подмножеств базового типа. Множество описывается в разделе var с помощью зарезервированного слова set. Базовым типом множества может быть любой тип, состоящий не более чем из 256 элементов. Константы множественного типа записываются с помощью квадратных скобок и списка элементов в них: abc = [‘a’, ’b’, ’c’]. Отсутствие списка элементов означает пустое множество: abc = [ ]. Множества языка Паскаль обладают свойствами мате- математических множеств. Над ними можно выполнять те же операции. Если S 1 и S 2 – константы или переменные множественного типа, то S 1+ S 2 будет их объединением, S 1*S 2 - пере- сечением, S 1 -S 2 – разностью. Операции отношений = (равенство), <> (неравенство), <= (является подмножеством), >= (является надмножеством) к множествам применяются, а отношения строго включения < и > - не применяются. Чтобы добавить в множество какой-либо элемент, можно добавить множество, состоящее из единственного элемента. Либо использовать процедуру include(S, a) , где S – множество, в которое добавляем, a – добавляемый элемент. Имеется и об- ратная процедура – exclude(S , a) - для исключения элемента из множества. Здесь параметры S и a имеют тот же смысл.

Задача № 42 • Найти сумму 1 и последней цифр заданного числа и разделить Задача № 42 • Найти сумму 1 и последней цифр заданного числа и разделить её на 2.

Задача № 43 • В заданном числе заменить все цифры 2 на 5 и Задача № 43 • В заданном числе заменить все цифры 2 на 5 и разделить новое число на 5.

Задача № 44 • Определить количество чётных цифр в числе. Задача № 44 • Определить количество чётных цифр в числе.

Задача № 45 Найти разность первой и последней цифр заданного числа. Задача № 45 Найти разность первой и последней цифр заданного числа.

Задача № 46 • В заданном числе заменить все цифры 0 на 9, а Задача № 46 • В заданном числе заменить все цифры 0 на 9, а цифры 1 на 8. К полученному числу прибавить 999.

Задача № 47 • Разделить произведение цифр заданного числа на из сумму. Задача № 47 • Разделить произведение цифр заданного числа на из сумму.

Задача № 48 • Дана строка символов. Вывести символы, из которых она состоит, по Задача № 48 • Дана строка символов. Вывести символы, из которых она состоит, по диагонали.

Задача № 48 • Написать программу, которая считает среднее арифметическое всех натуральных двузначных чисел, Задача № 48 • Написать программу, которая считает среднее арифметическое всех натуральных двузначных чисел, кратных 8.

Задача № 48 • Задайте символьный массив. Найдите и выведите на экран те слова, Задача № 48 • Задайте символьный массив. Найдите и выведите на экран те слова, которые имеют длину слова меньше пяти.

Задача № 48 • Задайте символьный массив из 12 элементов, содержащий фамилии учителей. Найдите Задача № 48 • Задайте символьный массив из 12 элементов, содержащий фамилии учителей. Найдите фамилию с наименьшей длиной. Выведите на экран массив и найденный элемент.

Задача № 49 • Задайте символьный массив. Найдите и выведите на экран те слова, Задача № 49 • Задайте символьный массив. Найдите и выведите на экран те слова, которые имеют длину слова меньше пяти.

Решение олимпиадных задач. Язык программирования Pascal 1. 2. 3. 4. 5. 6. 7. 8. Решение олимпиадных задач. Язык программирования Pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Сумма чисел Условие Решение Пассажиры Условие Решение Наибольшее отношение. Условие Решение Ёжик Условие Решение Чёрно – белая графика Условие Решение Газон Условие Решение Abracadabra Условие Решение Курьеры Условие Решение Треугольник Условие Решение Поездка на дачу Условие Решение Шахматы Условие Решение Турнир четырёх Условие Решение Массив. Поменять местами наибольший и наименьший элементы массива Решение Массив. Поменять местами соседние элементы на четных и нечётных местах Решение

План прямоугольного сада размером mxn состоит из квадратных зон. В каждой зоне растёт по План прямоугольного сада размером mxn состоит из квадратных зон. В каждой зоне растёт по дереву. С каждого дерева любой зоны могут упасть несколько яблок. В левом верхнем квадратике находится ёжик, который должен дойти до правого нижнего квадратика. В саду существуют ограничения относительно способа передвижения: ёжик может двигаться из текущего квадратика только в один из двух соседних правый либо нижний. Составьте программу, которая вычисляет максимальное количество яблок, которое может собрать ёжик, передвигаясь к нужному квадратику. Технические условия: План сада задан таблицей apples содержащей m строк и n столбиков. Элемент apples[i, j] таблицы указывает количество яблок, упавших с дерева в зону с координатами i, j. Текстовый файл "input. txt" содержит в первой строке числа m, n разделённые пробелом. В каждой из следующих m строк содержится по n чисел apples[i, j] разделённых пробелами. Файл "output. txt" должен содержать одно натуральное число. Примеры входных и выходных файлов: Input. txt 3 3 1 2 3 Output. txt 12

Имя входного файла: lawn. in Имя выходного файла: lawn. out Максимальное время работы на Имя входного файла: lawn. in Имя выходного файла: lawn. out Максимальное время работы на одном тесте: 2 секунды Максимальный объем используемой памяти: 64 мегабайта Фермер Иван с юности следит за своим газоном. Газон можно считать плоскостью, на которой в каждой точке с целыми координатами растет один пучок травы. В одно из воскресений Иван воспользовался газонокосилкой и постриг некоторый прямоугольный участок газона. Стороны этого участка параллельны осям координат, а две противоположные вершины расположены в точках (x 1, y 1) и (x 2, y 2). Следует отметить, что пучки травы, находящиеся на границе этого прямоугольника, также были пострижены. Довольный результатом Иван купил и установил на газоне дождевальную установку. Она была размещена в точке с координатами (x 3, y 3) и имела радиус действия струи r. Таким образом, установка начала поливать все пучки, расстояние от которых до точки (x 3, y 3) не превышало r. Все было хорошо, но Ивана заинтересовал следующий вопрос: сколько пучков травы оказалось и пострижено, и полито в это воскресенье? Требуется написать программу, которая позволит дать ответ на вопрос Ивана. Формат входных данных В первой строке входного файла содержатся четыре целых числа x 1, y 1, x 2, y 2 (− 100 000 ≤ x 1 < x 2 ≤ 100 000; − 100 000 ≤ y 1 < y 2 ≤ 100 000). Во второй строке входного файла содержатся три целых числа x 3, y 3, r (− 100 000 ≤ x 3, y 3 ≤ 100 000; 1 ≤ r ≤ 100 000) Формат выходных данных В выходной файл необходимо вывести одно целое число — число пучков травы, которые были и пострижены, и политы. Пример входных и выходных данных

 • Найдите наибольшее значение отношения трехзначного числа к сумме его цифр. Например, число • Найдите наибольшее значение отношения трехзначного числа к сумме его цифр. Например, число 361, отношение числа к сумме цифр равна 361 : 10=36, 1

Как мы видим, наибольшее отношение – число 100: 1=100 Как мы видим, наибольшее отношение – число 100: 1=100

На конференцию приехало N человек. Для их перевоза выделили автомобили вместимостью K и M На конференцию приехало N человек. Для их перевоза выделили автомобили вместимостью K и M человек (без водителя). К гостинице автомобили подаются в таком порядке: сначала вместимостью K человек, потом - M человек, после этого опять - K человек, потом M человек и так далее. В автомобиле можно перевозить не более максимально допустимого количества пассажиров. Определить, сколько необходимо автомобилей для перевозки всех делегатов конференции. Технические условия: Программа должна читать исходные данные из файла input. txt, первая строка которого содержит количество делегатов, а вторая и третья - числа K и M. В файл output. txt должно выводиться количество машин, необходимых для перевозки всех делегатов. Примеры входного и выходного файлов: Input. txt Output. txt 20 3 4 6 12 2 2 6 25 5 100 2 1 67

 • Условие: Хлестакова приглашали управлять департаментом. В первый день ему прислали 1000 курьеров, • Условие: Хлестакова приглашали управлять департаментом. В первый день ему прислали 1000 курьеров, а в каждый следующий - в 2 раза больше, чем в предыдущий. Хлестаков согласился, когда прислали 30000 курьеров. На какой день это произошло? (Учесть, что Хлестаков слаб в умножении и делении).

 • • Условие: Вычислите, в какой координатной четверти расположен треугольник, образованный прямой, заданной • • Условие: Вычислите, в какой координатной четверти расположен треугольник, образованный прямой, заданной уравнением y=ax+b, и осями координат. Решение: Если в уравнении прямой первый коэффициент положительный, то прямая лежит либо во второй, либо в четвертой четверти, при этом если свободный член положительный, то во второй, а если отрицательный- то в четвертой. Значит там же находится и весь треугольник, так как он образован этой прямой и осями координат. Аналогично рассуждаем и для отрицательного углового коэффициента: при положительном свободном члене - первая четверть, а при отрицательном - третья.

Одномерный массив Одномерный массив

Двумерный массив. Поменять местами строки с номерами К 1 и К 2. Двумерный массив. Поменять местами строки с номерами К 1 и К 2.

Одномерный массив Одномерный массив