Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Задачи, игры.Стр 1 из 130Следующая ⇒
Для начинающих
Все права защищены © ______________________________________________________________________
Содержание
Глава 0. Предисловие_________________________________________________________________ 8 0.1. Кому предназначена эта книга? _________________________________________________________________ 8 0.2. Задачи, игры.________________________________________________________________________________ 8 0.3. Почему Visual Basic? __________________________________________________________________________ 9 0.4. Какой вам нужен компьютер и какая версия Visual Basic? ____________________________________________ 10 0.5. Краткое содержание с рекомендациями__________________________________________________________ 10 Часть I. Программирование без программирования___________ 12 Глава 1. Первые шаги________________________________________________________________ 13 1.1. Что такое программа? ________________________________________________________________________ 13 1.2. Не программа, а проект_______________________________________________________________________ 14 1.3. Первые шаги - за ручку_______________________________________________________________________ 14 Запускаем Visual Basic____________________________________________________________________ 14 Размещаем объекты на форме_____________________________________________________________ 15 Пишем программу_______________________________________________________________________ 16 Сохранение, создание, открытие, закрытие проекта___________________________________________ 17 Как реагировать на сообщения Visual Basic об ошибках_________________________________________ 18 Глава 2. Проект - " Калькулятор" ______________________________________________________ 20 2.1. Задание на проект___________________________________________________________________________ 20 2.2. Проектируем________________________________________________________________________________ 20 2.3. Свойства форм и элементов управления__________________________________________________________ 21 2.4. Имена и надписи_____________________________________________________________________________ 21 2.5. Программируем. Проект готов__________________________________________________________________ 22 2.6. Кое-какие другие свойства объектов_____________________________________________________________ 23 2.7. Помещаем фото на калькулятор________________________________________________________________ 24 2.8. Музыка в проекте____________________________________________________________________________ 24 Музыка в кнопках________________________________________________________________________ 25 Проигрывание аудиодисков________________________________________________________________ 26 Плеер ваших любимых хитов_______________________________________________________________ 26 2.9. Система координат__________________________________________________________________________ 27 2.10. Вывод сообщений - MsgBox___________________________________________________________________ 28 2.11. Меню пользователя_________________________________________________________________________ 28 2.12. Кино в проекте_____________________________________________________________________________ 30 2.13. Кое-что необходимое напоследок______________________________________________________________ 30 Комментарии___________________________________________________________________________ 30 Перенос длинного оператора на следующую строку____________________________________________ 31 Запись нескольких операторов в одной строке________________________________________________ 31 Превращаем наш калькулятор в независимую программу________________________________________ 31 Как мы в дальнейшем улучшим наш калькулятор_______________________________________________ 31 Глава 3. Работа в среде Visual Basic____________________________________________________ 32 3.1. Что нужно знать и уметь перед тем, как сесть за компьютер__________________________________________ 32 3.2. Инсталляция Visual Basic______________________________________________________________________ 32 3.3. Порядок работы над проектом в Visual Basic______________________________________________________ 33 3.4. Загрузка Visual Basic и выход из него____________________________________________________________ 33 3.5. Сохранение проекта на диске. Загрузка проекта с диска_____________________________________________ 33 3.6. Окна среды Visual Basic_______________________________________________________________________ 35 3.7. Главное меню Visual Basic_____________________________________________________________________ 36 Панель инструментов____________________________________________________________________ 37 3.8. Перенос вашего проекта на другие компьютеры___________________________________________________ 37 Часть II. Программирование на Visual Basic – первый уровень__ 40 Глава 4. Переменные величины_______________________________________________________ 41 4.1. Переменные величины. Оператор присваивания___________________________________________________ 41 4.2. Объявление переменных величин_______________________________________________________________ 43 InputBox_______________________________________________________________________________ 43 Типы данных____________________________________________________________________________ 44 Переменные величины и память_____________________________________________________________ 45 Что делает оператор присваивания с памятью_______________________________________________ 46 Режим прерывания. Пошаговый режим выполнения программы__________________________________ 46 4.3. Еще об именах______________________________________________________________________________ 48 4.4. Математика. Запись арифметических выражений__________________________________________________ 48 4.5. Типы данных и точность вычислений____________________________________________________________ 50 Integer и Long - целые числа________________________________________________________________ 50 Single и Double - десятичные дроби_________________________________________________________ 50 Целые числа или десятичные дроби? Числовой тип Currency_____________________________________ 51 Не очень устаревшие способы объявления переменных__________________________________________ 51 Форматирование результата______________________________________________________________ 51 4.6. Порядок создания простого вычислительного проекта______________________________________________ 52 4.7. Строковые переменные_______________________________________________________________________ 54 4.8. Как выводить информацию оператором Print______________________________________________________ 55 4.9. Диалог с компьютером________________________________________________________________________ 56 4.10. Как выводить информацию в текстовое поле_____________________________________________________ 57 4.11. Оглядимся вокруг___________________________________________________________________________ 57 Глава 5. Разветвляющиеся программы_________________________________________________ 58 5.1. Что такое выбор (ветвление)___________________________________________________________________ 58 5.2. Условный оператор If или как компьютер делает выбор____________________________________________ 58 5.3. Правила записи однострочного оператора If______________________________________________________ 60 5.4. Случайные величины_________________________________________________________________________ 61 5.5. Многострочный If___________________________________________________________________________ 62 5.6. Ступенчатая запись программы________________________________________________________________ 64 5.7. Вложенные операторы If. Логические операции и выражения________________________________________ 64 Вложенные операторы If__________________________________________________________________ 64 Логические операции_____________________________________________________________________ 65 Логические выражения___________________________________________________________________ 65 5.8. Оператор варианта Select Case_________________________________________________________________ 66 5.9. Улучшаем калькулятор._______________________________________________________________________ 68 Проверка ввода чисел в текстовое поле______________________________________________________ 68 Запрет деления на ноль___________________________________________________________________ 69 Ставим пароль на калькулятор_____________________________________________________________ 69 5.10. Функция MsgBox___________________________________________________________________________ 70 Глава 6. Циклические программы_____________________________________________________ 72 6.1. Оператор перехода GoTo. Цикл. Метки__________________________________________________________ 72 Движение объектов по экрану______________________________________________________________ 74 6.2. Выход из цикла с помощью If__________________________________________________________________ 74 6.3. Операторы цикла Do_________________________________________________________________________ 75 Оператор Do …. Loop____________________________________________________________________ 75 Оператор Do …. Loop While_______________________________________________________________ 76 Оператор Do …. Loop Until________________________________________________________________ 76 Оператор Do While …. Loop_______________________________________________________________ 77 Оператор Do Until …. Loop________________________________________________________________ 77 Разница между вариантами операторов Do__________________________________________________ 78 Оператор Exit Do________________________________________________________________________ 78 Устаревший оператор цикла______________________________________________________________ 79 6.4. Оператор цикла For__________________________________________________________________________ 79 Оператор Exit For_______________________________________________________________________ 80 6.5. Оглядимся вокруг____________________________________________________________________________ 81 Глава 7. Отладка программы__________________________________________________________ 82 7.1. Типы ошибок. Сообщения об ошибках.___________________________________________________________ 82 7.2. Отладка программы. Окна отладки. Режимы отладки._______________________________________________ 82 Глава 8. Типичные маленькие программы______________________________________________ 86 8.1. Вычислительная циклическая программа_________________________________________________________ 86 8.2. Роль ошибок________________________________________________________________________________ 86 8.3. Счетчики___________________________________________________________________________________ 87 8.4. Сумматоры_________________________________________________________________________________ 88 8.5. Вложение циклов в разветвления и наоборот______________________________________________________ 89 8.6. Вложенные циклы___________________________________________________________________________ 89 8.7. Поиск максимального из чисел_________________________________________________________________ 90 Глава 9. Графика____________________________________________________________________ 92 9.1. Объекты. Их свойства, их события, их методы_____________________________________________________ 92 9.2. Три способа рисовать________________________________________________________________________ 93 9.3. Первый способ - Загрузка в Visual Basic готовых изображений________________________________________ 94 Типы графических файлов_________________________________________________________________ 94 Регулировка размеров изображений_________________________________________________________ 94 9.4. Второй способ - Объекты Line и Shape___________________________________________________________ 96 9.5. Взаимное перекрытие объектов. Метод ZOrder_____________________________________________________ 96 9.6. Цвет в Visual Basic___________________________________________________________________________ 97 9.7. 3 способ - Рисуем при помощи графических методов________________________________________________ 98 Метод Pset____________________________________________________________________________ 100 Метод Line____________________________________________________________________________ 100 Метод Circle__________________________________________________________________________ 101 CurrentX, CurrentY, Step_________________________________________________________________ 101 Метод Cls_____________________________________________________________________________ 102 Метод Point___________________________________________________________________________ 102 Метод PaintPicture_____________________________________________________________________ 102 9.8. Используем в рисовании переменные величины___________________________________________________ 103 9.9. Использование случайных величин при рисовании________________________________________________ 105 Глава 10. Процедуры________________________________________________________________ 106 10.1. Зачем нужны процедуры пользователя_________________________________________________________ 106 10.2. Операторы Stop, End и Exit Sub___________________________________________________________ 108 10.3. Переменные вместо чисел___________________________________________________________________ 110 10.4. Константы_______________________________________________________________________________ 111 10.5. Процедуры с параметрами__________________________________________________________________ 111 Типы параметров_______________________________________________________________________ 113 Глава 11. Работа с таймером, временем, датами_________________________________________ 115 11.1. Тип данных Date___________________________________________________________________________ 115 Функции для работы с датами и временем суток_____________________________________________ 116 11.2. Таймер__________________________________________________________________________________ 117 Цикл без цикла_________________________________________________________________________ 117 11.3. Проект " Будильник-секундомер" ______________________________________________________________ 118 Знакомимся с типом Boolean______________________________________________________________ 121 Делаем будильник_______________________________________________________________________ 121 Знакомимся с перечислимым типом данных__________________________________________________ 124 Таймер и моделирование_________________________________________________________________ 126 11.4. Анимация________________________________________________________________________________ 127 Анимация при помощи графических методов_________________________________________________ 127 Движем объекты_______________________________________________________________________ 127 " Движем" свойства объектов_____________________________________________________________ 128 Мультфильм___________________________________________________________________________ 128 О прозрачном цвете_____________________________________________________________________ 129 Глава 12. Работа с мышью и клавиатурой_____________________________________________ 130 12.1. Работа с мышью___________________________________________________________________________ 130 События MouseDown и MouseUp__________________________________________________________ 130 Событие MouseMove____________________________________________________________________ 131 Мышь рисует__________________________________________________________________________ 132 12.2. Работа с клавиатурой______________________________________________________________________ 132 События KeyDown и KeyUp_______________________________________________________________ 132 12.3. Проект - Гонки (игра)_______________________________________________________________________ 133 12.4. Задание на игру “Торпедная атака____________________________________________________________ 140 Часть III. Программирование на Visual Basic - второй уровень_ 141 Глава 13. Массивы_________________________________________________________________ 142 13.1. Переменные с индексами____________________________________________________________________ 142 13.2. Одномерные массивы переменных величин_____________________________________________________ 142 13.3. Двумерные массивы________________________________________________________________________ 144 13.4. Какие бывают массивы_____________________________________________________________________ 145 13.5. Использование массивов при программировании игр_____________________________________________ 145 13.6. Массивы элементов управления______________________________________________________________ 147 Глава 14. Разные звери в одном ковчеге_______________________________________________ 149 14.1. Тип Variant_______________________________________________________________________________ 149 14.2. Пользовательский тип данных________________________________________________________________ 149 14.3. Коллекции________________________________________________________________________________ 151 Объектные переменные__________________________________________________________________ 151 Коллекции_____________________________________________________________________________ 152 14.4. Рамка (Frame)_____________________________________________________________________________ 153 Глава 15. Элементы управления______________________________________________________ 154 15.1. Флажок (CheckBox)________________________________________________________________________ 154 15.2. Переключатель (OptionButton)_______________________________________________________________ 155 15.3. Полосы прокрутки (HScrollBar и VScrollBar)___________________________________________________ 156 15.4. Slider, ProgressBar__________________________________________________________________________ 156 15.5. Список (ListBox) и поле со списком (ComboBox)_________________________________________________ 157 Список (ListBox)________________________________________________________________________ 157 ComboBox (вариант " Раскрывающийся список")______________________________________________ 157 ComboBox (вариант " Простой Combo")_____________________________________________________ 158 ComboBox (вариант " Раскрывающийся Combo")______________________________________________ 158 Свойства, события и методы элементов управления ListBox и ComboBox._________________________ 158 15.6. Знакомство с другими элементами управления__________________________________________________ 159 Элементы MonthView и DTPicker__________________________________________________________ 159 UpDown_______________________________________________________________________________ 160 Элементы DriveListBox, DirListBox, FileListBox_______________________________________________ 160 RichTextBox____________________________________________________________________________ 161 ListView и TreeView______________________________________________________________________ 161 Закладка (TabStrip) и строка состояния (StatusBar)___________________________________________ 161 MSChart______________________________________________________________________________ 161 PictureClip____________________________________________________________________________ 161 ImageCombo___________________________________________________________________________ 161 MSComm______________________________________________________________________________ 161 Глава 16. Строки, файлы, обработка ошибок___________________________________________ 162 16.1. Строки___________________________________________________________________________________ 162 Таблица ASCII__________________________________________________________________________ 163 16.2. Файлы___________________________________________________________________________________ 163 16.3. Функция Shell_____________________________________________________________________________ 167 16.4. Обработка ошибок. Оператор On Error_________________________________________________________ 167 Глава 17. Функции. Параметры процедур и функций____________________________________ 169 17.1. Функции. Параметры функций________________________________________________________________ 169 17.2. Локальные переменные_____________________________________________________________________ 170 Статические переменные________________________________________________________________ 172 17.3. Массивы как параметры____________________________________________________________________ 172 17.4. Передача параметров по ссылке и по значению__________________________________________________ 173 17.5. Индукция. Рекурсия________________________________________________________________________ 173 17.6. Сортировка_______________________________________________________________________________ 175 17.7. Объекты, как параметры процедур____________________________________________________________ 176 Глава 18. Проект, который выглядит солидно__________________________________________ 178 18.1. Из чего бывает " сделано" приложение Windows__________________________________________________ 178 18.2. Элемент управления CommonDialog___________________________________________________________ 178 Пример открытия и сохранения файлов с помощью элемента Common Dialog______________________ 179 18.3. Панель инструментов Toolbar________________________________________________________________ 180 18.4. Проект - " Графический редактор" _____________________________________________________________ 182 Глава 19. Проекты из нескольких форм и модулей______________________________________ 185 19.1. Работа с несколькими формами_______________________________________________________________ 185 19.2. Модули кода______________________________________________________________________________ 186 19.3. Структура проекта. Окно Project Explorer.______________________________________________________ 186 Работа с несколькими модулями___________________________________________________________ 186 Работа с несколькими проектами__________________________________________________________ 187 19.4. Зоны видимости___________________________________________________________________________ 187 Зоны видимости переменных______________________________________________________________ 187 Зоны видимости процедур________________________________________________________________ 188 Зоны видимости констант и типов________________________________________________________ 188 19.5. Затенение________________________________________________________________________________ 189 19.6. Префиксы имен____________________________________________________________________________ 190 19.7. К чему все эти сложности? ___________________________________________________________________ 190 Глава 20. Объекты пользователя_____________________________________________________ 193 20.1. Инкапсуляция - " Объект в футляре" ____________________________________________________________ 193 20.2. Игра " Сачок". Постановка задачи_____________________________________________________________ 194 20.3. Таймер и общая механика работы проекта_____________________________________________________ 195 20.4. Этап проектирования_______________________________________________________________________ 195 20.5. Порядок создания объектов__________________________________________________________________ 195 20.6. Создаем ловца____________________________________________________________________________ 196 Объект пользователя - мозг без тела_______________________________________________________ 196 Как создать объект по его классу__________________________________________________________ 196 20.7. Создаем шар. Завершаем проект______________________________________________________________ 199 20.8. Еще об объектах___________________________________________________________________________ 202 Форма как объект______________________________________________________________________ 202 Свойства только для чтения______________________________________________________________ 202 Наследование, полиморфизм______________________________________________________________ 203 Глава 21. Visual Basic и Интернет_____________________________________________________ 204 21.1. Понятие об Интернет, Web-станицах и языке HTML______________________________________________ 204 21.2. Создание Web-страницы____________________________________________________________________ 204 21.3. Сценарий на Web-странице__________________________________________________________________ 205 21.4. Доступ к локальному диску__________________________________________________________________ 207 21.5. Собственный броузер_______________________________________________________________________ 209 Глава 22. Visual Basic и базы данных__________________________________________________ 210 22.1. Понятие о базах данных____________________________________________________________________ 210 22.2. Создаем заготовку базы данных при помощи Visual Data Manager___________________________________ 211 22.3. Работа с базами данных. Элементы управления Data и DBGrid. Язык SQL.____________________________ 212 Глава 23. До свидания_______________________________________________________________ 215 23.1. Нерассмотренные возможности Visual Basic____________________________________________________ 215 ActiveX_______________________________________________________________________________ 215 Windows API___________________________________________________________________________ 215 Многодокументный интерфейс - MDI_______________________________________________________ 215 OLE__________________________________________________________________________________ 215 23.2. Миг между прошлым и будущим______________________________________________________________ 215 Приложение 1. Необходимые сведения о компьютере и программе 218 Глава 24. Первое представление о компьютере и программе______________________________ 219 24.1. Что такое компьютер. Первое представление о программе.________________________________________ 219 24.2. Как человек общается с компьютером_________________________________________________________ 220 Глава 25. Программа и программирование_____________________________________________ 221 25.1. Список команд. Командный и программный режимы_____________________________________________ 221 25.2. Что важно знать о программе________________________________________________________________ 222 25.3. Понятие о процедуре. Может ли робот поумнеть? ________________________________________________ 222 25.4. Программа для компьютера на машинном языке_________________________________________________ 223 25.5. Языки программирования___________________________________________________________________ 223 25.6. Пример настоящей программы для компьютера на языке Лого______________________________________ 225 25.7. Последовательность работы программиста на компьютере________________________________________ 226 25.8. Основные приемы программирования__________________________________________________________ 226 Глава 26. Устройство и работа компьютера____________________________________________ 229 26.1. Как устроен и работает компьютер____________________________________________________________ 229 26.2. Устройство и размеры оперативной памяти_____________________________________________________ 230 26.3. Взаимодействие программ в памяти___________________________________________________________ 231 26.4. Внешние устройства компьютера_____________________________________________________________ 231 26.5. Кодирование информации в компьютере_______________________________________________________ 234 Приложение 2. Работа в Windows. Ввод текста_____________ 236 Работа в Windows______________________________________________________________________________ 236 Включение и выключение компьютера. Первые шаги___________________________________________ 236 Работа с окнами Windows________________________________________________________________ 236 Файлы и папки________________________________________________________________________________ 237 Имена файлов и папок___________________________________________________________________ 238 Проводник_____________________________________________________________________________ 238 Логические диски. Адрес файла (путь, дорожка к файлу)_______________________________________ 239 Как вводить программу в компьютер или работа с текстом в текстовом редакторе__________________________ 239 Работа с одной строкой текста__________________________________________________________ 239 Работа с несколькими строками___________________________________________________________ 241 Окно кода - маленькое окно на большой лист с текстом________________________________________ 242 Копирование перемещение, удаление фрагментов текста______________________________________ 242 Волшебные кнопки отмены и возврата______________________________________________________ 243 Решение заданий________________________________________ 244 Список литературы_____________________________________ 270 Предметный указатель__________________________________ 272
Глава 0. Предисловие Какая все-таки прелесть этот Visual Basic! Впечатление такое, будто у вас в руках волшебная палочка. Легкий взмах – и программа готова: вы видите на экране собственный калькулятор или систему управления базами данных, или мультфильм…. Или вот, например: Мрачная городская улица. Появляется автомобиль. Он стремительно приближается к главному герою, спрятавшемуся с бластером в руках за рекламной тумбой. Из автомобиля доносятся выстрелы. Пули щелкают по тумбе. В последний момент – визг тормозов, и машина застывает. Теперь не медли – бей по клавишам клавиатуры, стреляй, пока крестные отцы наркомафии до тебя не добрались! Автомобиль вспыхивает, из него выскакивают “братки” и, спасаясь от твоих выстрелов, бросаются в ближайшие укрытия, откуда открывают ожесточенный огонь. Схватка продолжается… После изучения этой книжки вы безусловно будете способны создать на Visual Basic двумерную версию такой игры. Конечно, взмах волшебной палочкой – всего лишь первое впечатление. Да и неинтересно " палкой махать" вместо того, чтобы самому программировать. Но факт остается фактом – с появлением Visual Basic программировать стало гораздо легче и приятней, чем раньше. И программы можно делать гораздо более мощные. Раньше начинающий программист и помыслить не мог о том, чтобы запрограммировать игру со сложным поведением нескольких персонажей, подобную той, что я только что описал. С появлением Visual Basic это стало возможно. Visual Basic принадлежит к разряду новых и замечательных инструментов программирования, а именно – к средам визуальной разработки программ, к которым принадлежат также Delphi (в основе которой лежит современная версия языка Паскаль – Object Pascal), Visual C++ и некоторые другие. Отличие сред визуальной разработки от более ранних инструментов программирования состоит в том, что они вместо программиста “пишут” наиболее часто встречающиеся и скучные части программы, освобождая его таким образом для интересного и творческого труда. Иногда, если задача простая, случается, что компьютер создает всю программу полностью. Еще одна особенность – программисту, работающему в Visual Basic и других подобных средах, никуда не деться от так называемого объектного программирования, завоевавшего в последние годы программистский мир. 0.1. Кому предназначена эта книга? Это самоучитель. То есть написана книга с расчетом на то, что, изучив ее без посторонней помощи, вы сможете без посторонней помощи составлять программы на Visual Basic и выполнять их на компьютере тоже без посторонней помощи. Автор приложил специальные усилия для того, чтобы изложение было понятным. Все объясняется на примерах. Рассмотрение почти каждой темы заканчивается задачами на составление программы (всего таких задач – 132). Подавляющее большинство задач снабжено ответами, так что читатель может эффективно контролировать усвоение материала. Если вы хотите научиться программировать, но никогда в жизни не написали ни одной программы и плохо представляете, как компьютер устроен, читайте эту книгу с начала до конца – вы и программировать научитесь, и об устройстве компьютера узнаете все необходимое. Я хочу, чтобы прочтя книгу и решив все задачи, вы могли с удовлетворением сказать себе – Да, я научился программировать, я – программист! Если вам интересно программировать игры, то знайте, что моя книга именно на это и ориентирована. Изучив ее, вы будете вполне готовы к созданию собственных игр типа морского боя, крестиков-ноликов, танковой битвы (где множество танков движутся по квадратному полю), стрелялок или той хотя бы, что я описал выше. Впрочем, подробнее об играх – ниже, в 0.2. Предположим, что вы школьник или студент, первый год изучающий программирование на Visual Basic, и вам предстоит сдавать по нему экзамен. Вы чувствуете, что вы «на нуле» и НИЧЕГО НЕ ПОНИМАЕТЕ и даже не знаете, с чего начать. В этом случае, изучив книгу и выполнив приведенные в ней задания, вы будете прочно знать основы Visual Basic. Достаточно ли этого?. Ведь Visual Basic – это богатая новогодняя елка, на которой великое множество игрушек. В моей книге рассказано все, что нужно для новичка: про ствол и главные ветви елки, про то, как игрушки крепятся к веткам, рассмотрены самые интересные игрушки. Однако, где гарантия, что ваш преподаватель не предпочитает другие? Может быть, взять книгу потолще? Уверяю вас, если вы возьмете любую самую толстую книгу по Visual Basic, то и там наверняка не найдете всего, что от вас требуется. Игрушек в Visual Basic слишком много даже для трехтомника. Поэтому сначала изучите основы Visual Basic по книге вроде моей. Затем или постарайтесь найти толстую книгу, в которой рассказано конкретно про то, что вам нужно, или воспользуйтесь для этого системой помощи (Help). Сразу же читать толстую книгу затруднительно – обычно она не предназначена для начинающих, если даже и утверждает обратное. Впрочем, толстая книга может и не понадобиться – в моей книге я постарался рассмотреть все, что разумный преподаватель может спросить на первом году обучения. Если вы опытный программист в средах визуальной разработки программ, но хотите изучить еще и Visual Basic, вам эта книга не нужна - изложение рассчитано на начинающих. Если у вас под рукой нет компьютера, то дела ваши плохи. Без компьютера, по одной только книге вы сможете научиться лишь писать на бумаге программный текст. Конечно, и это немало, однако напоминает чтение натощак, когда в холодильнике пусто, рецепта приготовления роскошного бифштекса. В среде визуальной разработки программ для Windows, которой является Visual Basic, программный текст – далеко еще не все. Книга учит не только составлять программы, но и выполнять программы на компьютере. Все, что вам нужно знать заранее, это где кнопка включения компьютера. Все остальное в книге объяснено, включая инструкцию по установке Visual Basic на ваш компьютер. Задачи, игры. При создании книги очень важно было решить – какие выбрать примеры, на основе которых строить изложение материала. Здесь действует суровое правило: плохие примеры – плохая книжка, хорошие примеры – хорошая книжка, скучные примеры – скучная книжка, интересные примеры – интересная книжка. Вот солидная и популярная тема для примеров – системы управления базами данных. Однако надолго интересной она может стать только для тех, кто имеет уже перед собой задачу эффективного управления большими и сложными базами данных, а таких читателей меньшинство. Поэтому базам данных посвящено ровно столько материала, сколько нужно, чтобы читатель понял, что это такое, сам мог создать базу данных, проделать с ней основные операции и затем понять толстые книжки, базам данных посвященные. Я решил, что самой простой и интересной темой для примеров будут игры и другие занимательные задачи. Этот путь мне кажется самым веселым. А результат - ничуть не хуже, чем если бы мы занимались базами данных или чем-нибудь другим серьезным. Это не значит, что мы все время будем забавляться и играть. В программировании есть вещи, которые удобнее иллюстрировать на неигровых примерах.
Вот задачи на программирование, решенные в книге: · Игра " Автогонки" · Игра " Сачок", где вы должны ловить множество движущихся шариков · Игра в «Угадай число» · Задача: как поставить пароль на свою программу, чтобы никто, кроме вас, не мог ее запустить · Задача: как запрограммировать сохранение в играх · Собственный калькулятор (при желании - с вашей фотографией, музыкой, прыгающими кнопками и прочими «приколами») · Собственный будильник-секундомер · Воспроизведение музыкальных произведений и вашего голоса. · Воспроизведение видео. · Собственный мультфильм · Создание своих рисунков и узоров (круги на воде, звездное небо, мыльные пузыри, компакт-диск, башня, ковер и тому подобное) · Задача: как в Интернете зайти в чужой компьютер (предварительно постучавшись) · Задача: как в Интернете поместить на свою страничку игру · Собственный графический редактор · Зашифровка и расшифровка секретных файлов (объяснена простейшая шифровка и расшифровка) · Определитель быстроты реакции вашей и ваших друзей · Программа, определяющая, " экстрасенс ли вы"
Вот примеры задач, предлагаемые для самостоятельного решения: · Задача: как изготовить собственный компакт-диск с вашими любимыми хитами · Простейшая игра-стрелялка " Торпедная атака" · Игра в крестики-нолики на бесконечном поле (пять в линию) · Игра в морской бой · Игра «Танковый бой» на неподвижном поле (вид сверху), где одновременно движутся и стреляют маленькие фигурки ваших и вражеских танков
Если вы энтузиаст программирования игр, то я должен вам сказать о том, какие игры будет НЕ под силу создавать начинающему программисту после изучения моей книги. Прежде всего это трехмерные (3D) игры типа Quake или Unreal. Учтите, что эти игры создают не новички, а профессиональные программисты и не в одиночку, а целыми фирмами. И используют они для этого специальные программные средства (например, Direct X), разобраться в которых можно, только съев пуд соли в геометрии и программировании. Изучение конкретного языка программирования - это всего лишь первая и не самая сложная ступенька в деле создания таких солидных продуктов, как качественная 3D-игра. Если вы думаете, что начав изучать программирование не с Visual Basic, а с Delphi или C++, вы быстрее и легче придете к программированию более сложных игр, то глубоко ошибаетесь. Если бы вы обратились за советом, с чего начать, к профессиональному программисту, который всю жизнь писал игры на C++, то в ответ почти наверняка услышали бы: «Начни с Бэйсика, дружок!» Так что, если вы вообразили описанную выше игру про мафию, как 3D, то ошиблись. Вот что вы сможете реально сделать. На экране – неподвижная картинка города, сколь угодно красивая, нарисованная вами или где-нибудь добытая. По городу движутся автомобили, прохожие, летят пули, вспыхивают лазерные лучи. Вы сможете создать голоса персонажей, звуки выстрелов и прочее. Однако движения персонажей будут не такими реалистичными, как в 3D-играх. Вам легко будет сделать, чтобы фигуры персонажей в застывшей позе двигались в любых нужных вам направлениях и даже при этом уменьшались в размерах (удаляясь в перспективе) или увеличивались (приближаясь). Немного труднее будет заставить их при этом передвигать ногами. Еще больше времени уйдет, чтобы запрограммировать более сложные движения, такие как повернуться боком, пригнуться, лечь, зарядить винтовку, улыбнуться, залезть в карман и тому подобное. Если герою вздумается долго идти направо, то вам трудно будет заставить город услужливо прокручиваться налево, как это происходит в играх-аркадах.
0.3. Почему Visual Basic? Почему Visual Basic? Этот вопрос стоит перед новичками, которые не знают, с какого языка начать. Вот краткий обзор возможных вариантов. Прежде всего, для полезного, занимательного и веселого изучения основных идей программирования существуют специальные учебные языки, рассчитанные на детей и новичков. Это «Кенгуренок», «Пылесосик», Лого. Кстати, Лого - язык достаточно богатый, чтобы программировать на нем и несложные игры с примитивной графикой. Но, к сожалению, эти языки мало распространены в России и по ним почти нет литературы. Так что вопрос о них отпадает. Поэтому перейдем к рассмотрению профессиональных взрослых языков. Сейчас наиболее известны Бэйсик, Паскаль, Си, Джава (Ява) в их самых разных версиях. Но Ява пока применяется в основном только в Интернете. Так что остаются Бэйсик, Паскаль, Си. Не так давно в ходу были старые, невизуальные версии сред программирования для этих языков. Теперь положение резко изменилось. Нет никакого вопроса в том, в чем вам программировать – в старой среде или в визуальной. Это все равно, что спрашивать, из чего лучше стрелять – из рогатки или из пушки. Остается выбрать конкретную среду – Visual Basic, Delphi, Visual C++ (для Бэйсика, Паскаля и Си соответственно) или какую-нибудь другую. Си – высокопрофессиональный язык, программы, написанные на нем, имеют превосходное быстродействие, в среде программистов он распространен очень широко, но слишком сложен для восприятия новичком и с него лучше не начинать. Если вам очень уж хочется программировать на Си, рекомендую начать с Бэйсика. После него освоение Си пойдет гораздо легче. Delphi по простоте программирования и эффективности получающихся программ занимает промежуточное положение между Visual Basic и Visual C++. По мнению профессионалов наиболее легок и прост из упомянутых языков как раз Visual Basic. Профессиональные программисты любят его за то, что для создания на нем приличной программы требуется гораздо меньше времени, чем в других средах. Поэтому популярность у него огромная. Конечно, за все приходится платить, и у Visual Basic есть свои недостатки, но новичок почувствует их очень не скоро. 0.4. Какой вам нужен компьютер и какая версия Visual Basic? Компьютер вам подойдет любой, на котором установлена операционная система Windows. Любая программа, которую вы встретите в этой книге, является правильной программой в версии Visual Basic 6.0, а абсолютное большинство программ - и в более ранних версиях. Это естественно, так как основа языка едина для этих версий. Теперь – о работе на компьютере. Каждая версия Visual Basic предлагает свой способ работы на компьютере (каждая следующая версия - все более удобный и мощный). В широком смысле этот способ называется средой программирования или средой разработки программ. Как я уже говорил, среды программирования версий Visual Basic 5.0 и Visual Basic 6.0 очень близки между собой в тех рамках, которыми я ограничиваюсь в книге. Все, что я буду говорить, относится к любой из них. Последняя версия Visual Basic, а именно Visual Basic.NET, кардинально отличается от своих предшественниц. Она гораздо мощнее, однако, я бы сказал, менее легка для начинающих. Я рекомендую ее тем, кто на первых порах готов платить больше. Краткое содержание с рекомендациями Книга состоит из трех частей и двух приложений:
|