Интернет Университет информационных технологий Твой путь к знаниям
  Искать!
Курсы | Обучение | Школа | Магазин | Общение | Новости | Помощь

поддержка курса Основы программирования
Автор: В.В. Борисенко | ISBN: 978-5-9556-00039-6

? Уровень: для начинающих || Статус: бесплатный || Опубликован: 16.09.2005
Рейтинг: 4.33 || Популярность: 104 || Студентов: 8497/333


Поддержка
Microsoft Курс создан при финансовой поддержке компании
Microsoft

Microsoft Dreamspark
Бесплатные лицензионные версии программ для студентов и преподавателей.
Специальное предложение для студентов Интуит.ру. подробнее »

Внимание! Для получения индивидуальный кода Dreamspark студенту Интуит необходимо приступить к изучению одного из курсов по технологиям Microsoft

Рады сообщить, что теперь для студентов Интуит, зарегистрированных на учебные курсы по технологиям Microsoft, стала доступной программа DreamSpark.

  Инициатива DreamSpark предоставляет участникам программы бесплатный доступ к таким продуктам, как Visual Studio 2010 Professional, Windows Server 2008 R2 Standard, Windows Server 2008 Standard, Expression Studio 4 Ultimate, SQL Server 2008 R2 Developer, XNA Game Studio 4.0, Robotics Developer Studio 2008 R2 и многим другим.

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

  Также для участников программы DreamSpark открыта возможность бесплатно зарегистрироваться в Windows Marketplace для размещения своих приложений для Windows Phone 7. В этом случае делается исключение из ограничений, указанных выше, и допускается коммерческая разработка с использованием предоставляемых инструментов.

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

Информация о курсе
Курс предназначен для обучения основам программирования. Рассматриваются основные понятия программирования - алгоритма, исполнителя, алгоритмического языка, переменной, основные типы данных, управляющие конструкции алгоритмического языка и т.п. Излагаются общие приемы программирования, основанные на применении математики, такие, как вычисление функций на последовательностях с помощью применения теории индуктивных функций и схема построения цикла с помощью инварианта.
Рассматриваются общие принципы устройства и работы компьютера, типичные команды и регистры процессора, методы адресации, способы вызова функций и передачи параметров и т.п. Приводятся примеры записи программ как на виртуальном Ассемблере RTL, так и на Ассемблере процессора Intel 80386. Кратко рассмотрены аппаратные средства поддержки многозадачности. Значительная часть курса посвящена основам языка Си. Помимо основ языка, в ней приведено много примеров реализации алгоритмов на Си, таких как вычисление корня функции, приведение матрицы к ступенчатому виду методом Гаусса, работа с файлами и текстами и т.п. Последние лекции посвящены структурам данных и их реализациям. Рассматриваются структуры последовательного и прямого доступа, такие как стек, очередь, список, дерево, множество и нагруженное множество, а также их непрерывные и ссылочные реализации. Значительное место уделено реализациям множества с помощью бинарного поиска, на базе сбалансированнных деревьев и с помощью хеш-функции. Курс полезен студентам и преподавателям ВУЗов.

Цель
Обучение основам программирования.

Записаться на обучение
  Варианты обучения Цена Документы
  Самостоятельно Бесплатно сертификат
  ИДО "ИНТУИТ" 2000 руб. сертификат + официальное удостоверение о повышении квалификации
  ВШБИ НИУ ВШЭ 8000 руб. удостоверение о повышении квалификации государственного образца
 
Телефон: +7(499) 253-9312, факс: +7(499) 253-9310, e-mail: dpo@intuit.ru, ICQ: Intuit.Ru (632-332-736), Skype: Intuit.Ru
1.
Рассматривается общее понятие алгоритма и дается краткий обзор существующих алгоритмических языков. Вводится неформальный алгоритмический язык - псевдокод, максимально приближенный к естественному языку. Рассматриваются основные конструкции алгоритмического языка - алгоритм, ветвление, цикл; приводятся простейшие примеры программ на псевдокоде. Определяется понятие переменной.
2.
Определяется понятие типа переменной как множества значений, которые она может принимать, и набора операций, которые можно совершать со значениями. Рассматриваются наиболее важные базовые типы алгоритмического языка - целые и вещественные числа. Подчеркивается особенность представления целых чисел в компьютере как элементов кольца вычетов, рассматривается интерпретация элементов кольца вычетов как неотрицательных чисел или чисел со знаком. Приводится представление вещественных чисел в компьютере в плавающей форме, рассматриваются особенности арифметики плавающих чисел.
3.
Рассматриваются символьные переменные и способы кодирования символов. Вводится логический тип и логические выражения, подчеркивается отличие логических выражений от арифметических: сокращенное вычисление результата. Определяется конструкция массива. Рассматриваются возможные способы представления текстовых строк.
4.
Вычисление функции на последовательности элементов встречается как фрагмент в большинстве реальных программ. Рассматривается общая схема вычисления функций на последовательностях, основанная на понятии индуктивной функции и индуктивного расширения. Применение общей схемы иллюстрируется на примерах - вычисление суммы и максимума последовательности, схема Горнера вычисления значения многочлена и его производной и т.п.
5.
Рассматривается схема построения цикла "пока" с помощью инварианта, т.е. утверждения, которое сохраняется при каждом выполнении тела цикла. Применение этой схемы дает возможность сознательно строить алгоритм и доказывать правильность его работы по тексту, не прибегая к тестированию. Применение схемы иллюстрируется на примерах: алгоритм Евклида вычисления наибольшего общего делителя, алгоритм быстрого возведения в степень, расширенный алгоритм Евклида, приближенное вычисление логарифма без использования разложения в ряд.
6.
Рассматривается устройство компьютера, построенного по фон-Неймановской архитектуре. Приводятся основные составные части компьютера: процессор, оперативная память, шина, внешние устройства. Рассматриваются общие принципы построения и работы процессора, указываются важнейшие регистры процессора и алгоритм его работы. Дается классификация CISC и RISC-процессоров. Рассматривается аппаратный стек и его использование в командах вызова подпрограмм и для размещения локальных переменных.
7.
Рассматривается способ записи программ на языке RTL (Register Transfer Language), представляющем собой Ассемблер, не зависящий от команд конкретного процессора. Приводятся примеры записи программ на RTL и на Ассемблере процессора Intel 80386. Кратко рассматриваются более сложные принципы работы компьютера: взаимодействие с внешними устройствами, асинхронные и синхронные прерывания, использование виртуальной памяти для поддержки параллельных задач, процессы, нити и их синхронизация.
8.
Лекция посвящена введению в язык Си. Объясняются общие принципы построения Си-программы: разбиение проекта на h- и c-файлы, т.е. разделение интерфейса и реализации, использование препроцессора. Приводятся базовые типы языка Си, конструкции массива и указателя, позволяющие строить новые типы, а также модификаторы типов. Рассматриваются всевозможные операции и выражения языка Си.
9.
Рассматриваются управляющие конструкции языка Си: ветвления "if-else" и "if-else if", циклы "while" и "for". Приводятся также конструкции, которых лучше избегать: "switch", "do-while", "goto". Рассматривается представление программы в виде набора функций, прототипы функций, методы передачи входных и выходных параметров. Перечисляются различные виды памяти: статическая, стековая, динамическая (куча) и способы работы с памятью в Си. Вводится составной тип данных "структура". Материал иллюстрируется многочисленными примерами программ: решение квадратного уравнения, вычисление квадратного корня, вычисление НОД двух чисел и расширенный алгоритм Евклида, печать N первых простых чисел, рекурсивный обход дерева и др.
10.
Приводятся правильные и неправильные способы реализации матриц и многомерных массивов на языке Си. Работа с матрицами иллюстрируется на примере приведения матрицы к ступенчатому виду методом Гаусса. Рассматриваются методы работы с файлами, использующие функции ввода-вывода из стандартной библиотеки ANSI. Приводятся способы работы с символами и текстовыми строками с помощью функций стандартной библиотеки. Материал иллюстрируется примерами, включающими программу "wc" подсчета символов, слов и строк в файле и программу "Записная книжка", которая позволяет находить телефон человека по его имени, а также сохранять и модифицировать содержимое книжки.
11.
Дается общее понятие структуры данных как исполнителя, который организует работу с данными: хранение, добавление и удаление, поиск и т.п. Рассматриваются реализации одних структур на базе других, в частности, реализации на базе массива. Приводятся наиболее важные из простейших структур данных: очередь и стек, а также их непрерывные реализации на базе массива. Даются многочисленные примеры использования стека в программировании. Рассматривается обратная польская запись формулы (знак операции после аргументов) и способ ее вычисления на стековой машине. В качестве примера использования обратной польской записи рассматривается графический язык PostScript. Материал иллюстрируется проектом "Cтековый калькулятор", реализованным на языке Си.
12.
Рассматриваются ссылочные реализации структур данных, в которых элементы хранятся в произвольном порядке, при этом каждый элемент хранит ссылки на соседей. Ссылочные реализации позволяют избавиться от массовых операций при удалении или добавлении элементов в середине структуры. Приводятся типичные примеры структур, для которых применяются ссылочные реализации: одно- и двунаправленные списки, деревья. Рассматривается важнейшая структура данных: множество и нагруженное множество. Приводятся различные способы реализации множества: 1) непрерывная реализация с последовательным или с бинарным поиском; 2) ссылочная реализация множества на базе упорядоченного бинарного дерева, при этом используются сбалансированные AVL-деревья или красно-черные деревья; 3) реализация на базе хеш-функции и массива подмножеств.
 
 

Внимание! Если Вы увидите ошибку на нашем сайте, выделите её и нажмите Ctrl+Enter.
Нужна помощь?
• Забыли пароль? Вам сюда...
• Есть вопрос? Спрашивайте!
Вы можете:
• Изменить персональные данные
• Изменить параметры подписки
Интернет-магазин:
• Ваши заказы здесь
• Ваш личный счет
Курсы | Учебные программы | Учебники | Вопросы и Ответы | Форум | Новости | Помощь

Телефон: +7 (499) 253-9312, 253-9313, факс: +7 (499) 253-9310, email: info@intuit.ru
© INTUIT.ru::Интернет-Университет Информационных Технологий - дистанционное образование, 2003-2011
Проект Издательства "Открытые Системы".
Партнеры: РМ Телеком, KRAFTWAY COMPUTERS.
Rambler's Top100