Тема_1,2_Основы_алгоритмизации_Операторы_ввода_и_вывода_Типы_дан. 1. основы алгоритмизации. Язык программирования си. Операторы ввода и вывода. Типы данных
![]()
|
IDE (Интегрированная среда разработки) — сочетание текстового редактора и компилятора. Разработка, компиляция и запуск своих программ осуществляется непосредственно в IDE. Интегрированные среды разработки упрощают процесс составления программ, так как написание кода компиляция и запуск программ выполняются в одной программе — IDE. Ещё одной важной особенностью IDE является то, что IDE помогает быстро найти и исправить ошибки компиляции. Интерпретаторы C/C++ Интерпретаторы бывают очень полезны когда надо быстро проверить какую-то идею, для отладки или во время обучения новому языку. iGCC лицензия: GNU GPL v.2 или выше ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 26 версия для Windows: нет разрабатывается с 2009 года, последняя версия — 19.03.2012 iGCC — тонкая обёртка над GCC, написанная на Python. Самый легковесный из интерпретаторов (184Кб в распакованном виде). Поддерживает многострочный ввод. Весь код пишется внутри функции main() со всеми вытекающими последствиями. PicoC лицензия: New BSD license версия для Windows: нет разрабатывается с 2009 года, последняя версия — 20.02.2011 PicoC — создавался как скриптовый язык для бортовых систем БПЛА. Авторы заявляют, что он хорошо подходит для робототехники и приложений для встраиваемых устройств. Не является полной реализацией ISO C. Весит 1,9 Мб. Поддерживает многострочный ввод и объявление функций. UnderC лицензия: GNU LGPL версия для Windows: есть разрабатывался с 2001 года, последняя версия — 29.11.2003 UnderC — создавался как быстрый небольшой интерпретатор, реализующий большую часть стандарта ISO C. В нём есть встроенные классы стандартной библиотеки, например string, vector, map. Легко загружает функции из динамических библиотек. Ch лицензия: проприетарная версия для Windows: есть Ch — проприетарный интерпретатор C/C++. Версия Standard бесплатна для коммерческого использования. Есть сборки не только для Linux и Windows, но и Mac OS, Solaris, FreeBSD и пр. Поддерживает стандарт C90 полностью. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 27 Позиционируется как самый функциональный интерпретатор С. Версия для Windows поддерживает команды консоли и также включает некоторые команды UNIX, например vi, ls, awk, sed, vim с подсветкой синтаксиса. Ch может работать как командная оболочка… Полный список фич здесь . Выглядит весьма серьёзно, поддерживает многострочный ввод, объявление функций. CINT лицензия: GNU LGPL версия для Windows: нет ROOT — фреймворк CERN для анализа данных (судя по всему очень мощный) и CINT его часть. Поддерживает примерно 95% ANSI C и 85% C++. Есть подсветка синтаксиса. Расхождения со стандартом описаны здесь Поддерживает многострочный ввод и объявление функций (они загружаются из сторонних файлов как кусочки кода, в самом интерпретаторе их объявлять нельзя). К сожалению, интерпретаторов уровня, например, встроенного в python для C на данный момент нет. CINT и Ch — самые функциональные, но не отличаются удобством использования, iGCC и PicoC подойдут только для обучения, разработка UnderC прекращена. Практическое значение интерпритатора Интерпретатор С весьма интересен как объект исследований и экспериментов, кроме того, интерпретаторы вообще имеют немалое практическое значение. Программы на С обычно компилируются. Главная причина этого в том, что язык С широко используется для создания коммерческого программного продукта. Для этой цели скомпилированная программа считается более предпочтительной потому, что компиляция позволяет сохранить конфиденциальность исходного текста программы, предотвратить изменение этого текста пользователем, эффективно использовать ресурсы компьютера. Кроме названных, существует немало и других причин. Видимо, компиляторы ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 28 всегда будут доминировать при разработке программного продукта на основе С. Тем не менее, программа на любом языке может быть как скомпилирована, так и интерпретирована. В последние годы на рынке программных продуктов появилось даже несколько новых интерпретаторов С. Можно назвать две традиционные причины того, что интерпретаторы продолжают использоваться: их легко сделать интерактивными, а также они очень облегчают отладку программы. Однако в последние годы разработчики компиляторов обычно создают интегрированные среды разработки (Integrated Development Environments, IDEs), в которых предусмотрены средства для интерактивной работы и отладки не хуже, чем имеющиеся у интерпретаторов. Поэтому обе вышеназванные причины применения интерпретаторов сейчас уже не актуальны. Однако интерпретаторы продолжают использоваться. Например, большинство программ, написанных на языках запросов к базам данных, сейчас интерпретируются, а не компилируются. Многие языки управления промышленными роботами также интерпретируются, В последние годы проявилось еще одно преимущество интерпретаторов: повышенная переносимость на различные инструментальные комплексы. Характерный пример этого — язык Java. С самого начала Java разрабатывался как язык, предназначенный для интерпретации. Сделано было это специально для того, чтобы программы, написанные на нем, можно было выполнять на любом компьютере и в любой среде, содержащей интерпретатор Java. Такое свойство языка является чрезвычайно ценным, если программа предназначается для работы в распределенных сетевых системах наподобие Internet. Создание Java и широкое распространение Internet вызвали новую вспышку интереса к интерпретаторам в целом. Есть еще одна причина, делающая интерпретаторы интересными для исследования: они легко поддаются модификации и расширению. Если программист хочет создать свой собственный язык, с которым можно экспериментировать, то сделать это с помощью интерпретатора значительно ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 29 легче, чем с помощью компилятора. Интерпретаторы лучше подходят для создания макетов оболочек программирования, потому что при их использовании правила языка можно легко изменить и быстро увидеть результат. Интерпретатор сравнительно легко создать, понять, как он работает, легко модифицировать и, что, возможно, наиболее существенно, работать с ним увлекательно. Например, представленный в данной главе интерпретатор можно переделать таким образом, что он будет выполнять программу от конца к началу, то есть, выполнять ее, начиная с закрывающейся фигурной скобки функции main() и кончая открывающейся скобкой. Или можно добавить любое специальное средство языка, какое захочется программисту. Образно говоря, компиляторы предназначены для коммерческих разработок, а интерпретаторы — для свободной игры воображения. Установка Visual Studio Просто вбиваем в поиск google «Скачать visual studio» и переходим по первой ссылке. В появившемся окне нажимаем скачать для версии community. Она бесплатна и более чем достаточна для наших занятий. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 30 После этого появится следующее окно и файл установки автоматически начнет скачиваться. Он будет небольшой, так как это online инсталятор так что вам нужен будет Интернет. Запускаем скаченный файл. Windows начнет автоматически что-то скачивать и это нормально. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 31 И после этого будет предложено запустить установку Visual Studio. Жмем Запустить После этого некоторое время будет висеть окно с логотипом студии: ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 32 Параметры установки выбираем по умолчанию. И установка началась! ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 33 После завершения установки перезагрузите компьютер. После этого запускаете Visual Studio. Но не найдетесь, что на этом всё. При запуске вас попросят зайти под учеткой Microsoft. Если у вас её нет, то создайте на их сайте microsoft.com. Введите потом в Visual Studio электронную почту, на которую заведена учетка Microsoft. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 34 Выбираем чья это учетная запись: ваша личная или вы работаете где-то. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 35 Вводите данные своей учетки. Может вылететь такая ошибка – ничего страшного. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 36 И напоследок при первом запуске студии вас попросят выбрать тему оформления. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 37 И Visual Studio запустилась! Но, к сожалению, еще не всё. Если вы создадите пустой проект на С++, то увидите, что пакеты для приложений на С++ не установились по умолчанию. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 38 Поэтому жмем на Install Visual C++ Tools for Windows Desktop В появившемся окне жмем Установить ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 39 ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 40 Теперь при создании проекта вы увидите привычные проекты для С++. Создание проекта в Visual Studio Нажимаем Файл -> Cоздать проект. В появившемся новом окне нажимаем по одному разу на Visual C++ , далее на Win32 и на Консольное приложение Win32 — выбор сделан. Теперь введите название проекта в поле Имя Расположение будет выбрано по умолчанию, ничего не надо менять. Снимите ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 41 галочку возле Создать каталог для решения и нажимайте ОК . В следующем окне нажмите Далее и увидите Параметры приложения Тут поставьте галочку возле Пустой проект и нажимайте кнопку Готово Проект создан и далее в нем надо создать файл типа .c в который мы и будем сохранять наш исходный код. Эта операция называется Создать элемент . Чтобы его создать в Обозревателе решений надо нажать правой кнопкой мыши на название вашего созданного проекта. В выпавшем списке выбрать Добавить и выбрать Создать элемент Упрощенный вариант — щелкнуть на название проекта левой кнопкой мыши и нажать сочетание клавиш Ctrl + Shift + A. Итогом будет — появление такого окна: ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 42 В нем нажимаем Код , Файл С++ (.c) , заполняем поле Имя и нажимаем Добавить . Файл создан! Обзор средств разработки 1. NetBeans IDE - интегрированная среда разработки приложений, бесплатная IDE с открытым исходным кодом. Предназначена для профессиональной разработки десктоп приложений, web- приложений, корпоративных систем, программ для мобильных устройств. NetBeans - единственная IDE, которая устроит и начинающего разработчика и профессионала. Особенности программы: Поддерживаемые языки программирования: Java, JavaFX, PHP, JavaScript, Ruby, Groovy, Python и C/C++, а также все языки разметки: HTML, XML и стили CSS. Поддерживает технологии: J2SE, J2EE, J2ME, JavaFX SDK, PHP Zend framework, UML, SOA, Ajax, Ruby on Rails, Groovy and Grails. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 43 NetBeans IDE является платформой для построения десктоп приложений с функциональным пользовательским интерфейсом, т.к. представляет из себя фреймворк к Java библиотеке Swing. Это сэкономит массу времени тому, кто не поленится ознакомиться с особенностями программирования на платформе NetBeans. NetBeans IDE является платформой для создания плагинов и расширения своей функциональности. Основные функции: рефакторинг, профилирование, работа с CVS и SVN, работа с удалённым сервером через FTP, визуальный редактор пользовательских интерфейсов, подсветка синтаксических конструкций, автодополнение, показ справки на лету, возможность использования готовых шаблонов кода, интеграция с серверами - автоматическое развёртывание приложений, управление сервером и т.д. Расширенные возможности по работе с базами данных - встроенный клиент к базам данных - MySQL, Postgres, Oracle и др., редактор запросов SQL. 2. Dev-C++ - интегрированная среда разработки на C и C++, полнофункциональная C++ IDE. Возможности Dev C++: Удобный редактор с подсветкой синтаксиса, нумерацией строк, автоотступами и т.д. Возможность автозавершения кода для удобства работы и повышения производительности. Заготовки кода и шаблоны для вставки. Использование закладок в редакторе для быстрого перемещения по коду. Экспорт исходных файлов или целого проекта в HTML или RTF для публикации исходных кодов на своём веб сайте. Встроенный менеджер проектов. Импорт проектов из MS Visual C++. ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 44 Возможность настройки ассоциации файлов по расширению - c, cpp, h и т.д. В навигаторе классов два варианта обзора - просмотр функций, классов и их членов как для всего проекта, так и для текущего редактируемого файла. Гибкая настройка рабочей среды, редактора и компилятора, большое количество различных опций. Используется Mingw GCC компилятор, может работать с любым компилятором GCC. Воможность отладки проекта - встроенный дебаггер GDB. Возможна работа с CVS (скачивается отдельно). Существует портабельная версия программы, не требующая установки. Мультиязычный пользовательский интерфейс с поддержкой русского и украинского языков. 3. GCC-compiler Открыть блокнот и писать код. Открываем командную строку и используем следующие команды: cd -- менять директорию gcc *.c -- скомпилировать файл .с (тип, в котором вы сохраняете код для компиляции) dir -- проверка наличия файла a.exe (это ваша скомпилированная программа) ну и запускаем программу просто вводя её имя (a.exe по умолчанию) ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 45 Анализ первой программы. Давайте рассмотрим простую программу на языке Си. Следует сразу сказать, что такой пример нужен нам лишь для выявления некоторых основных черт любой программы, написанной на языке Си. Далее мы дадим пояснения к каждой строке, но, перед тем как вы с ними познакомитесь, просто взгляните на программу и попробуйте понять, если сможете, что она будет делать. #include using namespace std; int main( void ) { int num; num = 1; setlocale(0, "" ); cout << "Я простая" ; cout << "вычислительная машина.\n" ; cout << "Мое любимое число " << num << " потому что оно самое первое.\n" ; system( "pause" ); } Если вы считаете, что программа должна вывести нечто на экран дисплея, то вы совершенно правы! Несколько труднее понять, что же появится на экране на самом деле, поэтому давайте выполним программу и посмотрим к чему это приведет. Первый шаг заключается в использовании имеющегося у вас текстового редактора для создания файла, содержащего текст программы. Этому файлу необходимо будет присвоить какое-то имя; если вам не приходит в голову ничего оригинального, то назовите его main.с. Выполните компиляцию вашей программы. Теперь запустим программу. Если все пойдет хорошо, то результат должен выглядеть следующим образом: #include < iostream>: ТЕМА 1. ОСНОВЫ АЛГОРИТМИЗАЦИИ. ЯЗЫК ПРОГРАММИРОВАНИЯ СИ. ОПЕРАТОРЫ ВВОДА И ВЫВОДА.ТИПЫ ДАННЫХ. Сотник Евгений Александрович Sotnik_e@itstep.academy Страница 46 Файл с именем iostream является частью пакета, имеющегося в любом компиляторе языка Си и содержащего информацию о вводе-выводе (например, средства взаимодействия программы с вашим терминалом). В качестве имени файла используется аббревиатура английских слов: |