Разделы презентаций


ОСНОВЫ

Содержание

НЕОБХОДИМЫЙ МИНИМУМПрекрасное владение языком программированияУверенное знание большого количества алгоритмов (уверенно знать – значит уметь быстро, без подготовки реализовать алгоритм)Математическая подготовкаБольшое количество прорешенных задачОпыт участия в тренировочных и реальных олимпиадахПсихологическая подготовка

Слайды и текст этой презентации

Слайд 1ОСНОВЫ

ОСНОВЫ

Слайд 2НЕОБХОДИМЫЙ МИНИМУМ
Прекрасное владение языком программирования
Уверенное знание большого количества алгоритмов (уверенно

знать – значит уметь быстро, без подготовки реализовать алгоритм)
Математическая подготовка
Большое

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

НЕОБХОДИМЫЙ МИНИМУМПрекрасное владение языком программированияУверенное знание большого количества алгоритмов (уверенно знать – значит уметь быстро, без подготовки

Слайд 3ЛИТЕРАТУРА
Окулов С.М. «Программирование в алгоритмах», 2004
Порублев И.Н., Ставройский

А.Б. «Алгоритмы и программы. Решение олимпиадных задач», 2007
Меньшиков Ф.В.

«Олимпиадные задачи по программированию», 2006
Андреева Е.В. «Математические основы информатики. Элективный курс», 2012
Шень А. «Программирование. Теоремы и задачи», 2004

ЛИТЕРАТУРА Окулов С.М. «Программирование в алгоритмах», 2004 Порублев И.Н., Ставройский А.Б. «Алгоритмы и программы. Решение олимпиадных задач»,

Слайд 4САЙТЫ
Учебные курсы www.intuit.ru
Коллекция алгоритмов http://e-maxx.ru/algo
Международные и всероссийские

олимпиады по информатике http://info.rusolymp.ru
Сайт школьных олимпиад, проводимых в Приморском

крае http://imcs.dvgu.ru/works/school.html
Площадка соревнований по программированию http://codeforces.ru/
Дистанционная подготовка школьников по информатике http://informatics.mccme.ru
Сайт «Школа программиста» Красноярского края http://acmp.ru

САЙТЫ Учебные курсы www.intuit.ru Коллекция алгоритмов http://e-maxx.ru/algo Международные и всероссийские олимпиады по информатике http://info.rusolymp.ru Сайт школьных олимпиад,

Слайд 5ЯЗЫКИ
Конкретный язык не существенен – задачи спортивного программирования успешно решаются

на любых языках программирования (возможно, за исключением эзотерических).

В рамках занятий

задачи будут рассматриваться на языке C++
ЯЗЫКИКонкретный язык не существенен – задачи спортивного программирования успешно решаются на любых языках программирования (возможно, за исключением

Слайд 6ПРАВИЛА ХОРОШЕГО ТОНА
Не забывайте о проектировании программ сверху вниз:


прежде чем приступить к кодированию, вы должны спроектировать программу

на достаточном уровне детализации на бумаге.
Не приступайте к кодированию до тех пор, пока не сможете ясно, понятно для любого слушателя рассказать идею решения
Разбивайте программу на отдельные подпрограммы (процедуры и функции). Старайтесь отлаживать каждую функцию по отдельности

ПРАВИЛА ХОРОШЕГО ТОНА Не забывайте о проектировании программ сверху вниз: прежде чем приступить к кодированию, вы должны

Слайд 7ПРАВИЛА ХОРОШЕГО ТОНА
Старайтесь использовать как можно меньше глобальных переменных: процедуры

и функции должны быть максимально независимыми
Всегда программируйте «с отступами»
Выбирайте осмысленные

имена для переменных, функций и т.д.
Одна строка – один оператор
Не забывайте присваивать переменным начальные значения, даже если компилятор сделает это за вас
Добавляйте комментарии по ходу написания программы
Не пренебрегайте тестированием программы. Помните, что каждая последняя ошибка – есть предпоследняя.


ПРАВИЛА ХОРОШЕГО ТОНАСтарайтесь использовать как можно меньше глобальных переменных: процедуры и функции должны быть максимально независимымиВсегда программируйте

Слайд 8ОСОБЕННОСТИ РЕШЕНИЯ ОЛИМПИАДНЫХ ЗАДАЧ
Программа представляет собой консольное приложение
Как

правило, исходные данные должны считываться из исходного файла и записываться

в выходной файл. Все файлы текстовые.
Проверять корректность данных в исходном файле не требуется!
Необходимо тщательно следить за корректностью данных, которые записываются в выходной файл.


ОСОБЕННОСТИ РЕШЕНИЯ ОЛИМПИАДНЫХ ЗАДАЧ Программа представляет собой консольное приложение Как правило, исходные данные должны считываться из исходного

Слайд 9ОСОБЕННОСТИ РЕШЕНИЯ ОЛИМПИАДНЫХ ЗАДАЧ
Заданы ограничения на время и на

ресурсы памяти (программа должна выполняться не дольше предъявленного лимита и

не превышать требований к допустимому объему памяти), т.е. необходимо работать над эффективностью программы
Решения проверяются автоматизированной системой по заранее заготовленному большому набору тестов (порядка 30 – 40).


ОСОБЕННОСТИ РЕШЕНИЯ ОЛИМПИАДНЫХ ЗАДАЧ Заданы ограничения на время и на ресурсы памяти (программа должна выполняться не дольше

Слайд 10ТИПЫ ДАННЫХ C++

ТИПЫ ДАННЫХ C++

Слайд 11ТИПЫ ДАННЫХ C++

ТИПЫ ДАННЫХ C++

Слайд 12ВВОД/ВЫВОД В КОНСОЛЬ
Из языка C:
printf
scanf
Из языка C++:
std::cout

ВВОД/ВЫВОД В КОНСОЛЬИз языка C:printfscanfИз языка C++:std::cout

Слайд 13УСЛОВИЯ
if (условие)
{}
еlse{}

switch (парам)
{
case a:

break;
case b:

break;
default:
….
break;
}
b=условие?x:y;

УСЛОВИЯif (условие){}еlse{}switch (парам){case a:…break;case b:…break;default:	….	break;	}b=условие?x:y;

Слайд 14ЦИКЛЫ
for – цикл со счетчиком
while – цикл с условием
do-while –

цикл с постусловием
int a=0;
while (a==1) //ни разу не выполнится
cout

один раз
cout<}
while (a==1);
ЦИКЛЫfor – цикл со счетчикомwhile – цикл с условиемdo-while – цикл с постусловиемint a=0;while (a==1) //ни разу

Слайд 15МАССИВЫ
int *a=new int[n]; //динамический – размер можно задать по ходу

программы
int b[10]; //статический
int c[10][5]; //статический двумерный
int ** d=new int*[n]; //динамический

двумерный
for (int i=0;i d[i]=new int[m];
МАССИВЫint *a=new int[n]; //динамический – размер можно задать по ходу программыint b[10]; //статическийint c[10][5]; //статический двумерныйint **

Слайд 16ОПЕРАЦИИ
+ – сложение
- – вычитание
* – умножение
/ – деление
%

– остаток от деления
^ – XOR – исключающее ИЛИ
& –

И
| – ИЛИ
>> – битовый сдвиг вправо
<< – битовый сдвиг влево
~ – инверсия битов
ОПЕРАЦИИ+ – сложение - – вычитание* – умножение/ – деление% – остаток от деления^ – XOR –

Слайд 17ФУНКЦИИ
int func (int a, int b){
return a+b;
}
Функции описываются по порядку

их следования в программе.

int f1 (int a, int b) {

//Не заработает
int c=f2(a,b); // f2 тут ещё не объявлена
return c+a+b;
}
int f2 (int a, int b){
return a*b;
}
ФУНКЦИИint func (int a, int b){return a+b;}Функции описываются по порядку их следования в программе.int f1 (int a,

Слайд 18ФУНКЦИИ
int f2 (int a, int b);
int f1 (int a, int

b) { //заработает
int c=f2(a,b);
return c+a+b;
}

int f2 (int a, int

b){
return a*b;
}

Прототип – объявление функции с отложенным описанием

ФУНКЦИИint f2 (int a, int b);int f1 (int a, int b) { //заработает	int c=f2(a,b); 	return c+a+b;}…int f2

Слайд 19ФАЙЛЫ
#include
ifstream in; //поток для чтения
ofstream out; //поток для записи
string

d;
in.open(“file.txt”);
out=new ofstream (“file2.txt”);
in>>d;
ofstream

ФАЙЛЫ#include ifstream in; //поток для чтенияofstream out; //поток для записиstring d;in.open(“file.txt”);out=new ofstream (“file2.txt”);in>>d;ofstream

Слайд 20СТРОКИ
#include
string s=“asdasdasdasd”;
Операции:
Конкатенация (сложение строк)
Поиск вхождения
Выделение подстроки
И т.д.

СТРОКИ#include string s=“asdasdasdasd”;Операции:Конкатенация (сложение строк)Поиск вхожденияВыделение подстрокиИ т.д.

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

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

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

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

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


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

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