Презентация, доклад Порядок решения олимпиадных задач

Содержание

Всегда смотри на вещи со светлой стороны, а если таковых нет, то натирай тёмные, пока не заблестят. китайская пословица

Слайд 1Порядок решения олимпиадных задач
Андриященко Н.В.
учитель информатики
Краснодонской СОШ № 2

Порядок решения олимпиадных задач Андриященко Н.В.учитель информатикиКраснодонской СОШ № 2

Слайд 2Всегда смотри на вещи со светлой стороны, а если таковых нет,

то натирай тёмные, пока не заблестят.

китайская пословица
Всегда смотри на вещи со светлой стороны, а если таковых нет, то натирай тёмные, пока не заблестят.							китайская

Слайд 31. Универсальная заготовка
{$A+,B-,D+,E+,F+,G-,I+,L+,N+,O-,P-,Q+,R+,S+,T+,V+,X+,Y+}
{$M 65520,0,655360}
var
i,j,k:longint;
procedure readdata;
begin
assign(input,'');
reset(input);
end;
procedure outdata;
begin
assign(output,'');
rewrite(output);

close(output)
end;
procedure initial;
begin
fillchar(i,?,0);{см. лекцию 3}
end;
procedure run;
begin
end;
begin
readdata;
initial;
run;
outdata
end.

1. Универсальная заготовка{$A+,B-,D+,E+,F+,G-,I+,L+,N+,O-,P-,Q+,R+,S+,T+,V+,X+,Y+}{$M 65520,0,655360}var i,j,k:longint;procedure readdata;begin assign(input,''); reset(input);end;procedure outdata;begin assign(output,''); rewrite(output); close(output)end;procedure initial;begin fillchar(i,?,0);{см. лекцию 3}end;procedure run;beginend;begin

Слайд 4Директивы
Оператор
Переменная
Begin и End обозначают начало и конец, какого либо программного блока.

End с точкой - конец программы
ДирективыОператорПеременнаяBegin и End обозначают начало и конец, какого либо программного блока. End с точкой - конец программы

Слайд 5Сохранение заготовки

Сохранение заготовки

Слайд 6Команда
Директивы компилятора - это комментарии со специальным синтаксисом.

Они могут использоваться везде, где разрешены комментарии.

Директивы компилятора
 - Начинаются со знаков "{$" или "(*$"  - Сопровождаются именем директивы  - Заканчиваются знаками "}" или "*)"
Директивы компилятора делятся на три класса:
 - Переключатели - Включают и выключают возможности компилятора, когда вы ставите знак "+" или "-" после имени директивы.  - Параметры - Определяют параметры, которые воздействуют на компиляцию.  - Условные директивы - Управляют условной компиляцией частей    исходного текста.
Команда Директивы компилятора - это комментарии со специальным синтаксисом. Они могут использоваться везде, где разрешены комментарии.Директивы компилятора -

Слайд 7Автосохраниние редактируемых файлов

Автосохраниние редактируемых файлов

Слайд 82. Внимательно читаем условие!
Здесь нужна тренировка внимания и умения формально

подходить к тексту условия задачи, то есть понимать условие буквально, а не так, как покажется при его поверхностном чтении.
2. Внимательно читаем условие! Здесь нужна тренировка внимания и умения формально подходить к тексту условия задачи, то

Слайд 93. Решение конкретной задачи
описать основные глобальные переменные
Набить процедуру readdata ввода

данных, чтобы она считывала все параметры задачи так, как это указано в условии.
3. Решение конкретной задачи описать основные глобальные переменныеНабить процедуру readdata ввода данных, чтобы она считывала все параметры

Слайд 10Процедуры
При считывании из файла чисел обычно следует использовать только процедуру read

(а не readln), для случаев же считывания символов и строк (тип string).
ПроцедурыПри считывании из файла чисел обычно следует использовать только процедуру read (а не readln), для случаев же

Слайд 11Функции
Если количество чисел во входном файле неизвестно, то нужно использовать функцию

seekeof вместо eof для проверки условия окончания считывания чисел.
Для файлов, содержащих произвольный текст, это опять же уже не так.

ФункцииЕсли количество чисел во входном файле неизвестно, то нужно использовать функцию seekeof вместо eof для проверки условия

Слайд 124. Процедура initial
следует обнулить или присвоить соответствующие начальные значения всем

(!!!) глобальным переменным, за исключением тех, которые будут использоваться в качестве параметров циклов. Затем запрограммировать вывод результата в процедуре outdata так, как это требуется в условии задачи.
4. Процедура initial следует обнулить или присвоить соответствующие начальные значения всем (!!!) глобальным переменным, за исключением тех,

Слайд 13Инициализировать переменные
Переменная должна быть инициализирована при описании:
имя переменной: тип =

значение;
var i: integer := 1;
Кроме того, можно инициализировать переменные не только константными, но и неконстантными выражениями, в частности, вызовам конструкторов:
var L: List := new List;

Инициализировать переменные Переменная должна быть инициализирована при описании:	имя переменной: тип = значение;

Слайд 145. Подходы к решению задачи
Проверить данные на фактическую корректность, то есть

всегда ли задача имеет решение для введенного набора данных, например, связан ли граф, нет ли деления на 0 и т.п., если только в условии не сказано, что все данные и в этом смысле корректны.
Определить, относится ли данная задача к знакомому вам классу или решение придется искать “с нуля”.
5. Подходы к решению задачиПроверить данные на фактическую корректность, то есть всегда ли задача имеет решение для

Слайд 15Подходы к решению задачи
Попытаться найти на бумаге (!!!) точное решение, возможно

только для малых размерностей. Такой подход зачастую позволяет обнаружить закономерности, которые затем можно попытаться распространить и на общий случай. Отобразить на бумаге принципиально различные случаи, в том числе и вырожденные. Это поможет при составлении тестов для самопроверки написанной программы.
Попробуйте сформулировать условие существования решения, пусть только необходимое или только достаточное.
Продумать и выпишите (!!!) достаточную систему тестов.
Подходы к решению задачиПопытаться найти на бумаге (!!!) точное решение, возможно только для малых размерностей. Такой подход

Слайд 166. Имитации настоящего , мнимого или пустого действия
Запрограммируйте решение задачи

в виде вызовов процедур и функций, которые пока следует описать в виде “заглушек”

Шаг 1. Проработка головной программы

6. Имитации настоящего , мнимого или пустого действия Запрограммируйте решение задачи в виде вызовов процедур и функций,

Слайд 17Заглушка 
― это очень простой по структуре модуль, в котором входные и

выходные данные соответствуют замещаемому модулю, но алгоритм обработки данных очень упрощён. Часто в заглушке помимо описания входных и выходных данных присутствует лишь один оператор печати, сообщающий, что в этом месте программы вызывается заглушка.

Шаг 2. Детализация программы

Заглушка ― это очень простой по структуре модуль, в котором входные и выходные данные соответствуют замещаемому модулю, но

Слайд 18Для проектирования модульных программ существуют два основных метода:.
нисходящее 
восходящее проектирование

Для проектирования модульных программ существуют два основных метода:.нисходящее восходящее проектирование

Слайд 198. Если вы не придумали эффективного решения задачи
то запрограммируйте его по-простому:

например, с помощью полного перебора или простой эвристики (приближенного решения в ряде случаев дающего точный ответ). Если и это сложно, то упростите себе задачу, то есть отбросьте условия, которые вам мешают или добейтесь, чтобы программа проходила на самых простых, например, вырожденных тестах (большинство параметров равны 0 или 1).
8. Если вы не придумали эффективного решения задачито запрограммируйте его по-простому: например, с помощью полного перебора или

Слайд 209. exe-файл
Прежде, чем окончательно cоздавать exe-файл, замените ряд директив компилятора на

следующие: D-,I-,L-,R-,Q- и отрегулируйте размер необходимого вашей программе стека.

9. exe-файлПрежде, чем окончательно cоздавать exe-файл, замените ряд директив компилятора на следующие: D-,I-,L-,R-,Q- и отрегулируйте размер необходимого

Слайд 2110. Работоспособность
Постарайтесь запустить ваш exe-файл непосредственно в операционной системе хотя бы

для одного теста, чтобы убедиться в его работоспособности. Причины, по которым работающая в среде программирования программа, может оказаться не работоспособной в виде исполняемого файла заключаются, в основном, в неинициализации значений ряда переменных.
10. РаботоспособностьПостарайтесь запустить ваш exe-файл непосредственно в операционной системе хотя бы для одного теста, чтобы убедиться в

Слайд 22Надеюсь, что приведенные выше рекомендации помогут ребятам продемонстрировать на олимпиаде любого

уровня то, на что они действительно способны. 
Надеюсь, что приведенные выше рекомендации помогут ребятам продемонстрировать на олимпиаде любого уровня то, на что они действительно

Что такое shareslide.ru?

Это сайт презентаций, где можно хранить и обмениваться своими презентациями, докладами, проектами, шаблонами в формате PowerPoint с другими пользователями. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами.


Для правообладателей

Яндекс.Метрика

Обратная связь

Email: Нажмите что бы посмотреть