Алгоритмизация и программирование 11 класс презентация



Объявления и домашние задания

  • Первое чтение: Крамер Д.
  • Домашнее задание 1:
    1. Проект 1: Боевые катера
    2. Разработайте подробное описание выполнения одной из следующих задач:
      • Слепи снеговика.
      • Разработайте презентацию PowerPoint на сегодняшнюю тему.
      • Раскладывай пасьянс.
      • Разработайте флэш — анимацию прыгающего мяча.
      • Подведите итоги протокола собрания.
      • Нарисуйте белку, бурундука или кролика.

      Некоторые примеры

  • Второе чтение: Colwell, B.
  • Домашнее задание 2:
    1. Проект 2: Банкомат
    2. Предложите стратегию, как вытащить мышь из лабиринта.
    3. Подумайте, что может быть самым простым занятием. Необходимым для приготовления пищи и для прогулок.

  • Третье чтение: Chazelle, B.
  • Домашнее задание 3:
    1. Опишите пошаговую процедуру (алгоритм) рисования такого рода фигур:
    2. Найдите закономерность в кумулятивной песне
    3. Упражнения для практики алгоритмов и программирования (PDF)
  • Четвертое чтение: Бен-Ари, М.
  • Домашнее задание 4:

    1. Напишите в алгоритмическом фасшионе, как играть в
    2. Придумайте стратегию игры в крестики-нолики, никогда не проигрывая.
  • Окончательные варианты проекта:
    1. Игра жизни
    2. Тамагочи
    3. Основные геометрические фигуры
    4. Сделайте программу для приключенческой игры.

Дополнительный материал

Инструменты программирования


Информация о курсе

Этот курс предназначен для людей, незнакомых с миром компьютерного программирования, и рекомендуется до или в сочетании с введением в курсы программирования (600.107, 600.108 или 600.109) или свободное владение компьютером (600.101). Его основная цель-обеспечить студентов средствами решения задач путем логического и методического мышления. Абстрактное мышление способствует созданию решений. Которые могут быть использованы в ряде аналогичных ситуаций.

Будут обсуждаться проблемы и ситуации. Обычно возникающие в компьютерном программировании. А также некоторые фундаментальные концепции создания алгоритмов и методов. Общих для многих языков программирования.

Студенты в основном выполняют бумажные решения, но для некоторых упражнений может потребоваться калькулятор или компьютер. Широко используется коммуникация по электронной почте, и ожидается активное участие.

Этот курс не является техническим и, как правило, представляет культурную перспективу тем. Что делает его также подходящим для всех. Кто заинтересован в применении знаний информатики в повседневной жизни.

Курс: 600.106 Предпрограммирование (ранее Алгоритмическое мышление)
Встречи: WThF 10-11:40 AM, Shaffer 2
Инструктор: Хорхе Васконселос
Электронная почта: jorgev@cs.jhu.edu
Рабочее время: По предварительной записи

Инструктор открыт для обсуждения и отслеживания конкретных интересов студентов и доступен в любое время по электронной почте и. Насколько это возможно. В нерабочее время.



Цели курса:

  • Обеспечить студентов логическим мышлением и методическим инструментарием для выработки абстрактных решений. Необходимых при написании компьютерных программ.
  • Provice изучает фундаментальные понятия алгоритмического мышления (абстракция. А не двусмысленность. Строгое пошаговое решение. Трассировка и т. Д.), Используемые в большинстве языков программирования, таких как Basic, PHP, Assembly, c++, Java.
  • Практикуйте алгоритмическое решение задач с минимальной помощью компьютеров. Делая упор на бумажные стратегии.

Темы курса

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

Темы Концепция Упражнение Пример
1. Алгоритмы и решение задач.

  • Понятие проблемы.
  • Методические этапы решения задач.

  • Планы, стратегии и алгоритмы.
Примечания упражнения пример
2. Понимание проблемы.

  • Проблема понимания проблемы.
  • Контекст проблемы.
  • Инструменты для распознавания проблем.
  • Обобщение проблемы.
  • Постановка задачи и уточнение требований.
  • Типы проблем.
Примечания упражнения пример
3. Разбиение больших задач (функциональная декомпозиция). Примечания упражнения пример
4. Планирование стратегии решения.

  • Инструменты для планирования стратегии решения.
  • Описание плана в повествовательной форме.
  • Описание плана в пошаговой форме.
  • Экспресс-алгоритм на структурированном английском или псевдокоде.

  • Примените концепции алгоритмов для обзора плана.
  • Обработка особых случаев (предварительный подход).
  • Проблемы реализации (предположения, ограничения, компьютерные ограничения).
Примечания упражнения пример
5. Контроль последовательности действий (программирование управляющих структур):

  • Последовательность сверху вниз.
  • Блок инструкций.
  • Выбор (условное исполнение).
  • Итерация (повторение общих задач).
  • Модули (подпрограммы, подпрограммы, процедуры, функции, новые инструкции).
Примечания упражнения пример
6. Арифметика и логика.

  • Арифметические выражения.
  • Иерархия операторов.
  • Назначение.
  • Основы булевой логики.
  • Таблицы истинности.
  • Булевы выражения и условия.
  • Селекционные деревья.
Примечания упражнения пример
7. Отладка, тестирование и отслеживание рук (пошаговые инструкции).

  • Типы ошибок.
  • Распространенные ошибки.
  • Неожиданные ошибки.
  • Набор тестовых данных.
  • Метод испытания черного ящика.
  • Метод испытания кристаллической коробки.
  • Логические выражения и условия.
Примечания упражнения пример
8. Написание заявлений, комментариев, документации. Примечания упражнения пример
9. Понятие абстракции в компьютерном программировании.

  • Различные перспективы абстракции.
  • Уровни сложности.
  • Извлечение существенных характеристик.
  • Моделирование (упрощение реальности для облегчения ее изучения).
  • Импликации абстракции при реализации.
Примечания упражнения пример
10. Необязательно.

  • Уточнение и расширение решений (succesive refinement, succesive extension).
  • Работа с особыми случаями.
  • Основы компьютерной архитектуры (связь вычислительных алгоритмов с компьютерами).
  • Языки с различными типами примитивов.
Примечания упражнения пример

Основная ссылка

Бейли, Т. Э. и Лундгаард, Крис.

Программирование с помощью псевдокода. Брукс/Коул.

Описание класса

Занятие проходит в формате семинара (минимум теории и много упражнений):

а) Все студенты и преподаватель вовлечены и участвуют в решении предложенной задачи.
б) Индивидуальное взаимодействие студента и преподавателя.
в) Широкое использование электронной почты (учет индивидуальных потребностей).
в) Гибкий график работы (при необходимости).

Политика оценки

— Ежедневные домашние задания и занятия в классе
-Посещаемость (обязательная для прохождения курса)

— Участие (в классе или по электронной почте)
— Викторины.
— Качество представленных документов (документы. Связанные с домашним заданием и упражнениями. Примеры будут приведены ниже.)

Рекомендуемые тексты

  • Schneider, G. Michael and Gersting, Judith L. An Invitation to Computer Science , Brooks/Cole, 2003.
  • Снайдер, Л. Свободное владение информационными технологиями, Аддисон-Уэсли, 2003.
  • Фаррел, Мэри Э. Изучение компьютерного программирования-это не про языки. Чарльз Ривер Медиа Инк. Хингем, Массачусетс,2202
  • Ван, Уоллес. Начало программирования, 2-е Изд. Hungry Minds, NY 2001

Веб-ссылки


Copyright © 2005-2008 Хорхе Васконселос. Университет Джонса Хопкинса, факультет компьютерных наук.