- Учителю
- Разработка урока по информатике по теме: 'Введение в программирование на С++. Первая программа на языке С++'
Разработка урока по информатике по теме: 'Введение в программирование на С++. Первая программа на языке С++'
Тема: Введение в программирование на С++. Первая программа на языке С++
Цель:
Образовательная:
-
дать основные сведения о языках программирования, средствах языков, структуре программ;
Развивать:
- технологическое мышление;
Воспитывать:
- интерес к самостоятельной работе, творчеству;
Тип урока: объяснительно-дискуссионный с элементами практикума.
Ход урока
-
Организационный этап.
Приветствие. Постановка целей урока
-
Изучение нового материала.
-
Как вы уже знаете компьютер - это устройство для универсальной обработки информации. Достаточно только написать точную инструкцию (последовательность) тех действий, которые нам нужны. Вспомним, что один из способов описания алгоритмов - словесный. Последовательность действий называется программой. Эту последовательность действий необходимо писать на языке, который будет понятен человеку и компьютеру.
Под языком понимают любую систему знаков (символы, жесты, положение переключателя и т.д.). Но язык человека отличается от языка компьютера (регистр, переслать, перейти по адресу и т.д., тем более все это записывается в машинных кодах). Поэтому, чтобы компьютер мог понять написанную программу, она должна быть переведена на язык, понятный самому компьютеру. Этот процесс перевода называется трансляцией. Существует два различных подхода к трансляции - интерпретация и компиляция:
Языки программирования интерпретирующего типа при использовании программы за один проход переводят в машинные коды одну строку программы. Понятно, что при большом размере программы процесс исполнения готовой программы занимает довольно много времени. В то же время при разработке программ режим интерпретации очень удобен, так как любое внесенное изменение сразу же переводится в машинные коды и исполняется.
Языки компилирующего типа сначала переводят весь текст программы в машинные коды, а уже затем полученный файл может быть запущен на выполнение. Откомпилированная программа выполняется гораздо быстрее (в 5-10 раз), но наличие ошибок на этапе компиляции требует довольно много времени на их исправление.
Работу интерпретатора можно сравнить с работой синхронного переводчика (транслятора): вы слышите перевод сразу же, а работу компилятора - с работой переводчика художественной литературы: вы читаете книгу сразу на понятном для вас языке, что более удобно. Чем переводить книгу строку за строкой.
-
Как возник язык С++
Первое, чем обратил на себя внимание язык C++, это его необычное название.
Что это за язык такой? Может быть С? Существуют ли языки С- или С-? Есть ли языки с названиями А и В? Ответы на большинство этих вопросов отрицательны.
На большинство, но не на все. Существует язык В, предшественником которого является не язык А, а язык, называемый BCPL. Язык С был разработан на основе языка В, а C++, в свою очередь, на основе языка С. Почему в названии языка C++ используются два символа «плюс»? Как вы узнаете далее, что «++» это одна из операций, поддерживаемых языками С и C++, так что получается каламбур. Языки BCPL и В нас не интересуют - то просто ранние версии языка программирования С. А рассказ о языке C++ мы начнем с языка С.
Язык программирования С был разработан в 1970-х годах Деннисом Ричи в AT&T Bell Laboratories. На нем была написана операционная система UNIX. (Эта операционная система существовала и до появления С, но ее первые версии создавались либо на языке ассемблера, либо на В - языке, разработанном Кеном Томпсоном, создателем UNIX.) С - язык общего назначения, подходящий для написания любых программ, но его успех и популярность тесно связаны именно с операционной системой UNIX. Если вам нужно модифицировать что-то в UNIX, для этого потребуется С. Они изначально были связаны друг с другом так тесно, что со временем не только системные программы, но и все коммерческое программное обеспечение, работающее под управлением UNIX, было написано на языке С. Этот язык стал настолько популярным, что были созданы его версии и для других распространенных операционных систем. Теперь его использование уже не ограничивается компьютерами, на которых установлена ОС UNIX.
Несмотря на огромную популярность С обладает рядом недостатков. Это довольно необычный язык в том отношении, что, являясь языком высокого уровня, он содержит много элементов языка низкого уровня. Поэтому С, скорее, находится посередине между двумя крайностями - языком очень высокого и очень низкого уровня, причем в этом состоит его сила и его слабость. С одной стороны, подобно низкоуровневому языку ассемблера, С позволяет напрямую манипулировать памятью компьютера, а с другой стороны, благодаря использованию элементов высокоуровневого языка, в нем очень упрощены такие операции, как чтение и запись данных.
Так что язык С прекрасно подходит для написания системных приложений, а для программ прикладного характера он менее удобен, поскольку сложнее других языков высокого уровня. Кроме того, он выполняет значительно меньше автоматических проверок и других полезных операций.
Для преодоления такого рода ограничений в начале 1980-х годов Бьярном Страустрапом из AT&T Bell Laboratories был разработан язык C++. В него вошла большая часть элементов языка С, поэтому большинство программ, написанных на С, являются программами на C++. (Обратное неверно: программы на C++ в подавляющем большинстве не являются программами на С.) В отличие от С, язык C++ включает средства для объектно-ориентированного программирования - очень мощной технологии, разработанной относительно недавно.
-
Рассмотрите этапы разработки программ.
3. Домашнее задание
1) читать §17, 18.
2) выполнить несколько заданий в рабочей тетради.
Ответы на задания, представленные в дидактических материалах:
Разгадайте ребус:
Ответ: ветвление
Ответ: алгол
Ответ: бейсик
Задание 3. Какую роль выполняет директива #include?
Ответ: Это команда для препроцессора, который автоматически запускается при вызове компилятора. Данная директива служит для введения содержимого файла, имя которого стоит после директивы, в исходный текст программы.
Задание 4. Что неправильно (если что-то неправильно) в каждой из следующих директив include:
а) #include
б) linclude < iostream>
в) #include
Ответ:
а) лишний пробел после имени файла iostream вызывает сообщение об ошибке «файл не найден»;
б) лишний пробел перед именем файла iostream вызывает сообщение об ошибке «файл не найден»;
в) это правильная директива.
Задание 5. Заполните пробелы в следующих утверждениях.
Ответ: a) main, б) Левая фигурная скобка ({), правая фигурная скобка (}). в) точкой с запятой, г) новая строка,
Задание 7. Укажите, что из нижеследующего верно или неверно. Если неверно, то объясните, почему.
Ответ: а) Неверно. Комментарии не вызывают каких-либо действий при выполнении программы. Они используются для документирования программы и улучшения ее читаемости.
б) Верно.
в) Неверно. C++ - чувствителен к регистру, так что эти переменные различны.
г) Верно.
д) Неверно. Один оператор вывода, использующий cout и содержащий несколько символов новой строки \n, может напечатать несколько строк.
Задание 8. В чем разница между символами комментариев // и /* ?
Ответ: Комментарии, выделенные двойным слешем (//), распространяются до конца строки. Комментарии, начинающиеся слешем со звездочкой (/*), продолжаются до тех пор, пока не встретится символ завершения комментария (*/). Помните, что даже конец функции не завершит действие комментария, начавшегося с пары символов (/*). Если вы забудете установить завершение комментария (*/), то получите сообщение об ошибке во время компиляции.
Задание 9.
а) cout <<"Это программа на С++.\n";
б) cout<<"Это программа\nна С++.\n";
в) cout <<"Это\nпрограмма\nна\nС++.\n";
г) cout << "Этo\tnporpaммa\tнa\tC++.\n";
Задание 12. Существует три основных вида программных ошибок. Как вы думаете, какие?
Ответ: Три основных вида программных ошибок таковы: синтаксические ошибки, ошибки периода выполнения и логические ошибки.
Задание 13. Пропуск знака препинания (например, точки с запятой) - это ошибка. К какому типу она относится?
Ответ: Синтаксическая ошибка.
Задание 14. Если не поставить последнюю закрывающую скобку программы (}), это будет ошибкой. К какому типу она относится?
Ответ: Синтаксическая ошибка.
Задание 15. Предположим, программа содержит код, при проверке которого компилятор выдает предупреждение. Что следует делать в этом случае? Что думаете вы сами?
Ответ: К предупреждениям следует относиться как к ошибкам до тех пор, пока вы сами не сможете решить, можно игнорировать конкретное предупреждение или нет.