Си++

Автор: Пользователь скрыл имя, 15 Декабря 2012 в 20:18, курсовая работа

Краткое описание

Си++ (англ. C++) — компилируемый строго типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования: процедурную, обобщённую, функциональную; наибольшее внимание уделено поддержке объектно-ориентированного программирования.
Разработка языка началась в 1979 году. Целью создания C++ было дополнение C возможностями, удобными для масштабной разработки ПО, с сохранением гибкости, скорости и портабельности C. Вместе с тем создатели C++ стремились сохранить совместимость с C: синтаксис первого основан на синтаксисе последнего, и большинство программ на C будут работать и как C++.

Оглавление

Введение
Краткое описание теоретической части
Постановка задачи
Метод решения задачи
Практическая часть
Заключение
Список используемых источников

Файлы: 1 файл

Курсовая.doc

— 1.56 Мб (Скачать)

МИНИСТЕРСТВО  ОБРАЗОВАНИЯ И НАУКИ КЫРГЫЗСКОЙ РЕСПУБЛИКИ

Ошский Технологический  Университет им.               академика Адышева М.М.

Факультет Кибернетики и  Информационных Технологий

Кафедра ПОВТАС

 

На тему:        Обучающая программа по С++

 

 

         Подготовил:                                Куреганов Сергей

         Приняла:                               _________________

 

                                                 

 

 

                                                 г. Ош – 2012

 

 

                                                     Оглавление

  1. Введение
  2. Краткое описание теоретической части
  3. Постановка задачи
  4. Метод решения задачи
  5. Практическая часть
  6. Заключение
  7. Список используемых источников

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

                                                                  Введение

Си++ (англ. C++) —  компилируемый строго типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования: процедурную, обобщённую, функциональную; наибольшее внимание уделено поддержке объектно-ориентированного программирования.

Разработка языка началась в 1979 году. Целью создания C++ было дополнение C возможностями, удобными для масштабной разработки ПО, с сохранением гибкости, скорости и портабельности C. Вместе с тем создатели C++ стремились сохранить совместимость с C: синтаксис первого основан на синтаксисе последнего, и большинство программ на C будут работать и как C++. Изначально новый язык назывался “C с классами”, но затем имя было изменено на C++ — это должно было подчеркнуть как его происходжение от C, так и его превосходство над последним.

Первый выпуск C++ для коммерческого  использования состоялся в 1985 году, вместе с публикацией книги “The C++ Programming Language”, которая на долгое время стала его неофициальным стандартом. В 1989 году вышла вторая версия языка в сопровождении книги “The Annotated C++ Reference Manual”.

В 1990-х годах  язык стал одним из наиболее широко используемых языков программирования общего назначения. Первым официальным стандартом языка стал ISO/IEC 14882:1998, более известный как C++98. В 2003 году была принята его дополненная версия, C++03, а в 2005 году был опубликован “Library Technical Report 1” (сокращенно TR1) — документ, описывающий расширения стандартной библиотеки. TR1 не является стандартом, но большинство актуальных компиляторов C++ поддерживает его. Наконец, в 2011 году был принят текущий стандарт, C++11.

Нововведениями C++ в сравнении с C являются:

  • поддержка объектно-ориентированного программирования через классы. C++ предоставляет все четыре возможности ООП — абстракцию, инкапсуляцию, наследование (в том числе и множественное) и полиморфизм.
  • поддержка обобщённого программирования через шаблоны функций и классов;
  • стандартная библиотека C++ состоит из стандартной библиотеки C (с некоторыми модификациями) и библиотеки шаблонов (Standard Template Library, STL), которая предоставляет обширный набор обобщенных контейнеров и алгоритмов;
  • дополнительные типы данных;
  • обработка исключений;
  • виртуальные функции;
  • пространства имён;
  • встраиваемые (inline) функции;
  • перегрузка (overloading) операторов;
  • перегрузка имён функций;
  • ссылки и операторы управления свободно распределяемой памятью.

Элементы синтаксиса:


Комментарий до конца строки

//

Комментарии, которые  не могут быть вложенными

/* ... */

Регистрозависимость

да

Регулярное выражение идентификатора переменной

[_a-zA-Z][_a-zA-Z0-9]*

Регулярное  выражение идентификатора функции

[_a-zA-Z][_a-zA-Z0-9]*

Присваивание  значения переменной

varname = value

Объявление  переменной

type varname

Объявление  переменной с присваиванием значения

type varname = value

Группировка выражений

( ... )

Блок

{ ... }

Равенство

a == b

Неравенство

a != b

Тождественное равенство

*a == *b (a и b - указатели)

Тождественное неравенство

*a != *b (a и b - указатели)

Сравнение

< > <= >=

Определение функции

returntype functionName (argtype1 argname1, ..., argtypeN argnameN)

Вызов функции

functionName(arg1, ..., argN)

Вызов функции  без параметров

functionName()

Последовательность

;

Если - то

if (condition) trueBlock

Если - то - иначе

if (condition) trueBlock else falseBlock

Бесконечный цикл

while (true) loopBody

Цикл с предусловием

while (condition) loopBody

Цикл с постусловием

do loopBody while (!condition)

Цикл for - next для  диапазона целых чисел с инкрементом  на 1

for (int i = first; i <= last ; i++)

Цикл for - next для  диапазона целых чисел с декрементом  на 1

for (int i = last; i >= first; i--)


                              Краткое описание теоретической части

Microsoft Visual Studio — линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольныеприложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения, веб-службы как в родном, так и в управляемом кодах для всех платформ, поддерживаемых Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework и Microsoft Silverlight.

Visual Studio включает в  себя редактор исходного кода с поддержкой технологии IntelliSense и возможностью простейшего рефакторинга кода. Встроенный отладчик может работать как отладчик уровня исходного кода, так и как отладчик машинного уровня. Остальные встраиваемые инструменты включают в себя редактор форм для упрощения создания графического интерфейса приложения, веб-редактор, дизайнер классов и дизайнер схемы базы данных. Visual Studio позволяет создавать и подключать сторонние дополнения (плагины) для расширения функциональности практически на каждом уровне, включая добавление поддержки систем контроля версий исходного кода (как например, Subversion и Visual SourceSafe), добавление новых наборов инструментов (например, для редактирования и визуального проектирования кода на предметно-ориентированных языках программированияили инструментов для прочих аспектов цикла разработки программного обеспечения(например, клиент Team Explorer для работы с Team Foundation Server).

Компоненты


Visual Studio включает  один или несколько компонентов из следующих:

  • Visual Basic .NET, а до его появления — Visual Basic
  • Visual C++
  • Visual C#
  • Visual F# (включён начиная с Visual Studio 2010)

Многие варианты поставки также включают:

  • Microsoft SQL Server либо Microsoft SQL Server Express

В прошлом, в  состав Visual Studio также входили продукты:

  • Visual InterDev
  • Visual J++
  • Visual J#
  • Visual FoxPro
  • Visual Source Safe — файл-серверная система управления версиями

 

                                                

                                                  Постановка задачи

Создание обучающей  программы, включающей в себя весь набор  лекций и лабораторных работ по предмету «Программирование на языке С++», а так же оформление графического интерфейса при помощи технологии Windows Forms. По желанию студента возможно включение дополнительного ПО: компиляторы и библиотека .NET Framework.

 

                                      Метод решения задачи

Для осуществления поставленной задачи воспользуюсь продукцией Microsoft Visual Studio 2012, включающую интегрированную среду разработки программного обеспечения. В данной сборке имеются две подходящие мне среды Visual C++ и Visual C#. Я буду использовать Visual C#, поскольку считаю её более подходящей для разработки приложений, использующих компоненты Windows Forms, да и, по правде говоря,      с Visual C++ я немного не разобрался, и, так сказать, не дружу.

Так как я ещё новичок, воспользуюсь самым наверное простым способом решения моих задач, а именно включением и отключением компонентов по нажатии на ссылку (linkLabel) или на кнопку (Button).

                               

                                          Практическая часть

Для начала создаём проект, для создания приложений с пользовательским интерфейсом Windows Forms. Задаём ему имя и сохраняем в нужную нам папку. Перед нами открывается форма проекта. В правой части экрана внизу в свойствах задаём нужные нам параметры: значок, текс, ширина и высота,  рисунок заднего фона, который мы заранее создали в Photoshop, и др.

 

В исходном коде это выглядит так:

// Form1

            //

            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);

            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;

            this.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImage")));

            this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;

            this.ClientSize = new System.Drawing.Size(1069, 649);

            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;

            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));

            this.MaximizeBox = false;

            this.Name = "Form1";

            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;

            this.Text = "C++";

 

Затем мы выбираем в панели компонентов компонент button и создаём 5 кнопок главного меню будущей программы. Назовём их button1, button2 и т.д. Также выбираем компонент groupBox – это так называемый контейнер в котором будут наши ссылки. В дальнейшем для отображения той или иной ссылки нам необязательно будет обращаться к ней на прямую, а достаточно будет работать с данным контейнером. Создаём столько же сколько и кнопок, то бишь 5, и условно закрепим каждый контейнер за своей кнопкой. Кнопки расположим справа сверху вниз, а контейнеры в центре, накладывая друг на друга.

В исходном коде задаём параметры  каждой кнопке и её действия: включение своего контейнера и отключение всех остальных.

// button1

            //

            this.button1.Cursor = System.Windows.Forms.Cursors.Hand;

            this.button1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Millimeter, ((byte)(204)));

            this.button1.Location = new System.Drawing.Point(12, 108);

            this.button1.Name = "button1";

            this.button1.Size = new System.Drawing.Size(225, 47);

            this.button1.TabIndex = 0;

            this.button1.Text = "Лекции";

            this.button1.UseVisualStyleBackColor = false;

            this.button1.Click += new System.EventHandler(this.button1_Click);

            //

            // button2

            //

            this.button2.Cursor = System.Windows.Forms.Cursors.Hand;

            this.button2.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));

            this.button2.Location = new System.Drawing.Point(12, 184);

            this.button2.Name = "button2";

            this.button2.Size = new System.Drawing.Size(225, 61);

            this.button2.TabIndex = 1;

            this.button2.Text = "Лабораторные \r\n работы";

            this.button2.UseVisualStyleBackColor = false;

            this.button2.Click += new System.EventHandler(this.button2_Click);

            // button3

            //

            this.button3.Cursor = System.Windows.Forms.Cursors.Hand;

            this.button3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Millimeter, ((byte)(204)));

            this.button3.Location = new System.Drawing.Point(12, 275);

            this.button3.Name = "button3";

            this.button3.Size = new System.Drawing.Size(225, 47);

            this.button3.TabIndex = 2;

            this.button3.Text = "Тесты";

            this.button3.UseVisualStyleBackColor = false;

            this.button3.Click += new System.EventHandler(this.button3_Click);

            //

            // button4

            //

            this.button4.Cursor = System.Windows.Forms.Cursors.Hand;

            this.button4.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));

            this.button4.Location = new System.Drawing.Point(12, 353);

            this.button4.Name = "button4";

            this.button4.Size = new System.Drawing.Size(225, 64);

            this.button4.TabIndex = 3;

            this.button4.Text = "Дополнительное\r\nПО";

            this.button4.UseVisualStyleBackColor = false;

            this.button4.Click += new System.EventHandler(this.button4_Click);

            //

            // button5

            //

            this.button5.Cursor = System.Windows.Forms.Cursors.Hand;

            this.button5.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Millimeter, ((byte)(204)));

            this.button5.Location = new System.Drawing.Point(12, 451);

            this.button5.Name = "button5";

            this.button5.Size = new System.Drawing.Size(225, 47);

            this.button5.TabIndex = 4;

            this.button5.Text = "Главная";

            this.button5.UseVisualStyleBackColor = false;

            this.button5.Click += new System.EventHandler(this.button5_Click);

            //

            // groupBox1

            //

            this.groupBox1.BackColor = System.Drawing.Color.Transparent;

            this.groupBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;

Информация о работе Си++