Программа – это реализация алгоритма для выполнения задачи компьютером (ЭВМ).
С помощью программы мы формулируем алгоритм на языке, понятном компьютеру. Таким языком служит язык программирования.
На сегодняшний день распространенными языками программирования являются: С, С++, Pascal, Basic, Fortran и т.д.
Язык программирования С++ является одним из самых востребованных на сегодняшний день.
На языке С++ можно составлять программы для инженерных расчетов, также можно строить оконные проекты, имеющие пользовательский графический интерфейс.
Существует несколько приложений для написания программ на языке С++. Мы будем рассматривать Microsoft Visual Studio и Borland C++.
В языке программирования С++ определены некоторые стандартные типы данных, которые представлены в табл. 3.1.
| Тип данных | Значение |
|---|---|
int |
целый тип, размер типа int не определяется стандартом, а зависит от компьютера и компилятора, для 16-разрядного процессора под величины этого типа отводится 2 байта, для 32-разрядного — 4 байта.Примеры значений типа int: 5, 0, -1, 100. |
double |
вещественный тип с двойной точностью. Типы данных с плавающей точкой хранятся в памяти компьютера иначе, чем целочисленные. Внутреннее представление вещественного числа состоит из двух частей — мантиссы и порядка. Мантисса — это число, большее 1.0, но меньшее 10. Для величин типа double, занимающих 8 байт, под порядок и мантиссу отводится 11 и 52 разряда соответственно. Длина мантиссы определяет точность числа, а длина порядка — его диапазон.Примеры значений типа double: 5.0, -0.00001, 2.9987. |
float |
вещественный тип. В компьютерах величины типа float занимают 4 байта, из которых один двоичный разряд отводится под знак мантиссы, 8 разрядов под порядок и 23 под мантиссу. Тип float имеет меньшую точность, чем double. В большинстве случаев лучше использовать double. |
char |
символьный тип, под величину символьного типа отводится количество байт, достаточное для размещения любого символа из набора символов для данного компьютера, что и обусловило название типа. Как правило, это 1 байт. Каждый символ имеет свой собственный целочисленный код, согласно таблице ASCII (англ. American Standard Code for Information Interchange).Примеры значений типа char: "A" (код 65), "7" (код 55), "-" (код 189), "/" (код 191). |
fstream, ifstream, ofstream |
файловый поток. Используется для вывода данных в файл и считывания данных из файла. |
Программа на языке С++ имеет определенную структуру.
Существует определенная последовательность заранее определенных строк кода, которая приведена в табл. 3.2.
#include "stdafx.h" |
подключение заголовочного файла для сборки проекта. Обязательный пункт в Visual Studio, в среде Borland C++ не используется. |
#include <название_библиотеки> |
подключение библиотек. Необязательный пункт. Подробно о библиотеках смотреть ниже. |
using namespace std; |
использование пространства имен. Обязательный пункт в Visual Studio, в среде Borland C++ не используется. |
int main(){ или void main(){ |
главная функция программы. Именно она начинает выполняться, когда запускается программа. Обязательный пункт. |
Тело_функции_main |
в теле функции main записываются действия и операции, предусмотренные алгоритмом. Обязательный пункт. |
return 0;} или } |
конец программы. Самый последний оператор. Обязательный пункт. |
Библиотека – это файл, в котором описаны функции и операторы. Для каждой смысловой группы функций своя библиотека. Библиотек в языке C++ предусмотрено много, мы будем рассматривать только самые необходимые. Нам понадобятся функции для работы с экраном, математические функции.
Основные библиотеки и их основные функции и операторы:
<iostream> для Visual Studio, <iostream.h> для Borland C++. Библиотека для работы с консолью (экраном).
cout – оператор вывода данных на экран.
Пример использования:
cout<<"fraza"; //выведет на экран слово fraza. Может вывести любой текст.
cout<<x; //выведет на экран число, хранящееся в переменной х.
cin – оператор считывания с экрана.
Когда у пользователя запрашивают число, программа ждет, пока пользователь не напечатает число и нажмет ENTER. Тогда оператор cin записывает это значение в переменную х.
Пример использования:
cin>>x; //присваивает переменной х значение, введенное с клавиатуры.
cin>>x>>y; //присваивает переменной х первое введенное с клавиатуры значение, переменной у – второе.
endl – оператор перевода каретки на экране на следующую строку.
Самостоятельно не используется.
Пример использования:
cout<<endl; //курсор перейдет на новую строку.
cout<<x<<endl;//сначала на экране появится число, хранящееся в переменной $$х$$, потом перейдет на новую строку. Выводимые далее данные будут печататься с новой строки.
cout<<endl<<"fraza"; // курсор перейдет на новую строку, и на новой строке появится надпись fraza.
precision(n) – функция для отображения на экране дробных чисел с n цифрами после запятой.
Пример использования:
cout.precision(3)<<7.897426; //число 7.897426 выведется на экран в виде 7.897.
<math.h> одинаково для Visual Studio, Borland C++. Библиотека математических функций. Основные математические функции представлены в табл. 3.3.
| Математическая функция | Программная запись | Описание |
|---|---|---|
| $$|x|$$ | fabs(x) |
Модуль числа. |
| $$\sin x$$ | sin(x) |
Синус числа, аргумент в радианах. |
| $$\cos x$$ | cos(x) |
Косинус числа, аргумент в радианах. |
| $$\tg x$$ | tan(x) |
Тангенс числа, аргумент в радианах. |
| $$e^x$$ | exp(x) |
Экспонента числа. |
| $$\ln x$$ | log(x) |
Натуральный логарифм числа. |
| $$\lg x$$ | log10(x) |
Десятичный логарифм числа. |
| $$x^y$$ | pow(x, y) |
х в степени y. |
| $$10^x$$ | pow10(x) |
Степень десяти. |
| $$\sqrt{x}$$ | sqrt(x) |
Квадратный корень из числа. |
| $$\arcsin x$$ | asin(x) |
Арксинус числа, в радианах. |
| $$\arccos x$$ | acos(x) |
Арккосинус числа, в радианах. |
| $$\arctg x$$ | atan(x) |
Арктангенс числа, в радианах. |
| $$\pi$$ | M_PI |
Число $$\pi$$=3.141593 |
<iomanip> для Visual Studio, <iomanip.h> для Borland C++.
setw(n) – для вывода на экран отводится $$n$$ ячеек.
Используется при построении ровной таблицы значений функции.
Пример использования:
cout<<setw(5)<<x<<setw(5)<<y<<endl;
На экране выведутся два числа: первое (1.5) в первых пяти ячейках, второе (-73) во вторых пяти ячейках. _ _ 1 . 5 _ _ - 7 3 .
В программах используются переменные. Имя переменной выбирает составитель программы; имя переменной должно начинаться с буквы латинского алфавита и может содержать буквы латинского алфавита, цифры и символы подчеркивания. Заглавные и строчные буквы считаются разными. Примеры имен переменных: х, y, summa, s1, srednee_ar и т.д. Имена переменных не должны совпадать с ключевыми словами языка С++.
Чтобы использовать в программе переменную, необходимо:
объявить переменную в начале программы, явно указав тип данных для переменной. Пример:
double x; //вещественная переменная $$х$$.
int m; //целочисленная переменная $$m$$.
Если переменная не будет объявлена, но будет использоваться далее в программе, то программа не запустится, компилятор выдаст ошибку.
проинициализировать переменную, т.е. задать переменной значение. Пример:
x=7.81; m=4; z=x+m;
Если переменная не будет проинициализирована, то компилятор не выдаст ошибки, но расчеты будут выполнены неверно.
Для числовых переменных определены простейшие арифметические операции, которые приведены в табл. 3.4. Для их использования не нужно подключать библиотеку.
| Операция в С++ | Описание | Пример в программе |
|---|---|---|
= |
присвоение | х=0.4; |
+ |
сложение | х=8+3; y=x+7.9; |
- |
вычитание | x=8-3; y=x-7.9; |
* |
умножение | x=4*2.5; y=x*4; |
/ |
деление. Результатом деления целых чисел является целое число. | x=7.5/3.2; y=x/2.6; z=1/3; //z=0 (округление до целого, т.к. делятся целые числа) z=1.0/3.0; //z=0.333(3) |
Для сравнения переменных и чисел используются встроенные знаки сравнения, которые приведены в табл. 3.5. Для их использования не нужно подключать библиотеку.
| Сравнение в С++ | Описание | Пример в программе |
|---|---|---|
> |
больше чем | x>0 |
< |
меньше чем | y<z |
>= |
больше или равно | y>=x |
<= |
меньше или равно | z<=8.56 |
== |
проверка на равенство | x==0.7 |
!= |
не равно | x!=y |
|
логическое И | x>0 x<1 // двойное неравенство 0<x<1 |
|| |
логическое ИЛИ | s<8 || s>10 |
Для реализации разветвляющегося алгоритма в С++ используется условный оператор if. Приведем общий вид блок-схем и общий вид записи оператора if:
![]() |
if (условие) {
Набор_действий_1;
}
else {
Набор_действий_2;
} |
![]() |
if (условие) {
Набор_действий_1;
} |
Примечание. Если необходимо выполнить не набор действий, а всего одно действие, то фигурные скобки можно опустить.
Для реализации циклического алгоритма с предусловием в С++ предусмотрено два оператора цикла while и for. По одной и той же блок-схеме с предусловием можно написать две программы, одну – с оператором while, другую – с оператором for. Оператор while удобно использовать, если неопределенно, сколько итераций нужно сделать, или это трудно сделать. Оператор for удобно использовать, когда мы заранее знаем количество итераций.
Приведем общий вид блок-схем и общий вид записи операторов while и for:
![]() |
Оператор while:
x=xn;
while(x<xk){
Тело_цикла;
x=x+hx;
}
Оператор for:
for(x=xn; x<xk; x=x+hx){
Тело_цикла;
}
|
Для реализации циклического алгоритма с постусловием в С++ предусмотрен оператор do while. Блок-схема и запись оператора do while в общем виде:
![]() |
Оператор do while:
x=xn;
do{
Тело_цикла;
x=x+hx;
} while(x<=xk);
|
Существует ряд задач, где изменяется сразу две переменные. Тогда используют вложенные циклы. Внутри одного цикла (внешнего) организуют другой цикл (внутренний).
Для ясности будем делать внешний цикл по переменной $$х$$, а внутренний – по переменной $$у$$. Обозначим переменные: $$xn$$ – начальное значение $$x, xk$$ – конечное значение $$х, hx$$ – шаг по переменной $$х, yn$$ – начальное значение $$у, yk$$ – конечное значение $$у, hy$$ – шаг по переменной $$у$$. Приведем блок-схему и вид записи операторов цикла с предусловием:
![]() |
Оператор while:
x=xn;
while (x<=xk){
y=yn;
while (y<=yk){
Тело_цикла;
y=y+hy;
}
x=x+hx;
}
Оператор for:
for (x=xn; x<=xk; x=x+hx){
for(y=yn; y<=yk; y=y+hy){
Тело_цикла;
}
}
|
Общий вид записи циклов с постусловием и блок-схема с постусловием:
![]() |
Оператор do while:
x=xn;
do {
y=yn;
do {
Тело_цикла;
y=y+hy;
} while (y<=yk);
x=x+hx;
} while (x<=xk);
|
Microsoft Visual Studio — это набор инструментов разработки, основанных на использовании компонентов и других технологий для создания мощных, производительных приложений.
Кроме того, среда Visual Studio оптимизирована для совместного проектирования, разработки и развертывания корпоративных решений.
Также Visual Studio позволяет создавать проекты, имеющие пользовательский интерфейс (GUI), работая с разными компонентами, такими как формы, кнопки, списки, меню и т.д.
В рамках данного курса мы будем рассматривать лишь программы, работающие в режиме DOS.
Рассмотрим версию Visual Studio 2010.
При загрузке приложения из меню Пуск/Программы/Microsoft Visual Studio 2010 появляется главное окно c начальной страницей программы, которое представлено на рис. 3.1.
(рис 3.1) Начальная страница Visual Studio 2010
Мы будет создавать программы, которые работают в консоли, т.е. взаимодействие с пользователем происходит посредством черного экрана. Данным курсом не предусмотрено создание интерфейсных приложений, т.е. с такими элементами, как кнопки, диалоговые окна, выпадающие списки и т.д.
Для создания программы необходимо нажать Файл/Создать/Проект или нажать на стартовой странице Visual Studio2010 быструю ссылку Создать проект, выделенную синим цветом. После выбора создания нового проекта появится другое диалоговое окно Создать проект, где необходимо выбрать требуемые опции, а именно: в левом столбце необходимо выбрать Visual C++/Win32, справа наверху – Консольное приложение Win32, справа внизу вписать имя проекта (например, proga1), в графе расположение выбрать вашу папку, где будут храниться все программы, оставить галочку Создать каталог для решения. Диалоговое окно Создать проект представлено на рис. 3.2.
(рис 3.2) Диалоговое окно Создать проект
После этого нужно нажать ОК. Откроется мастер настройки нашего будущего консольного приложения, который представлен на рис. 3.3.
(рис 3.3) Окно Мастер приложений Win32
(рис 3.4) Заготовка нового проекта в Visual Studio 2010
Требуется нажать кнопку Готово. Тогда в главном окне Visual Studio 2010 закроется начальная страница, и откроется файл proga1.cpp (правое верхнее поле), окно вывода ошибок и предупреждений Вывод (правое нижнее поле), Командный обозреватель (левое вертикальное поле). Данный вид представлен на рис. 3.4.
Файл proga1.cpp предназначен для текста программы (или кода программы), здесь мы будем вписывать наши операторы, переменные и функции.
Окно вывода пока пусто, т.к. программа еще ни разу не была запущена. После первого запуска в этом окне будет появляться служебная информация, какой проект запускается, что проверяется, есть ли в коде программы ошибки и если есть, то какие. Благодаря данному списку ошибок можно легко найти ошибку в коде программы и исправить. После исправления ошибок следует перезапустить программу на проверку еще раз. Когда ошибок не будет обнаружено, программа запустится на выполнение задачи и появится консоль.
(рис 3.5) Просмотр Обозревателя решений
Вместо командного обозревателя можно включить Обозреватель решений, в котором видно все файлы и папки, созданные для нашего нового проекта. Для этого необходимо под Командным обозревателем нажать кнопку Обозреватель решений. Далее в появившемся списке раскрыть папки Файлы исходного кода и Заголовочные файлы. Окно Visual Studio с Обозревателем решений представлено на рис. 3.5.
Когда мы составляем программу в Visual Studio, получается целый проект, который автоматически создается средой Visual Studio. Задача начинающего программиста состоит в том, чтобы напечатать код своей программы в файле *.cpp и запустить программу на выполнение.
Рассмотрим заготовку кода, которую нам предлагает Visual Studio.
Первые две строчки начинаются двумя символами "//". Данные символы означают, что далее на этой строчке следует комментарий, он не воспринимается компилятором как код программы и не будет выдавать ошибку. Удалять эти две строчки не рекомендуется.
Далее следует строчка #include "stdafx.h". Данная строка необходима для сборки нашего проекта. Файл stdafx.h – это один из файлов, автоматически создаваемых для нашей программы, и его можно увидеть в левом столбце Обозревателя решений. Эту строчку также нельзя удалять.
(рис 3.6) Успешное построение проекта
Далее начинается функция int main(). Автоматически Visual Studio называет ее _tmain и вписывает аргументы int argc, _TCHAR* argv[]. У нас будут самые простые программы для начинающих программистов, поэтому мы изменяем эту строчку и приводим ее к виду: int main() и оставляем return 0, или void main() и стираем return 0. После проведенной нами подготовки необходимо собрать проект, нажав в меню Построение/Построить решение. Тогда в поле Вывод начинается проверка нашего кода. Сейчас проверка прошла успешно и проект построился. Окно Visual Studio после сборки проекта представлено на рис. 3.6.
Попробуем теперь запустить нашу пустую программу. Для этого на клавиатуре необходимо нажать Ctrl+F5. Тогда появится консоль со стандартной надписью после выполнения программы "Для продолжения нажмите любую клавишу…". Консоль представлена на рис. 3.7.
(рис 3.7) Консоль выполнения программы
После просмотра консоли закройте ее, нажав на крестик.
Теперь можно составить простейшую программу, которая напишет на экране фразу "PRIVET, STUDENT!!!". В код нашей заготовки нужно добавить несколько строк:
#include <iostream> // т.к. нужно будет использовать оператор вывода на экран cout using namespace std; // подключение пространства имен cout<<"PRIVET, STUDENT!!!"<<endl; // вывод фразу на экран и перевод курсора на новую строку, // чтобы стандартная фраза "Для продолжения нажмите любую клавишу…" не "налипла" на нашу фразу.
Итак, итоговый код программы представлен на рис. 3.8.
(рис 3.8) Файл с кодом программы
После этого опять строим решение, т.к. код программы был изменен. Если построение выполнилось успешно, то можно запускать программу, нажав Ctrl+F5. Если же построение выдало ошибки, то нужно еще раз все проверить, исправить код, после этого построить проект еще раз. Консоль представлена на рис. 3.9.
(рис 3.9) Консоль выполнения программы
Конечно, в процессе работы с приложением Visual Studio может возникнуть множество вопросов. В меню программы предусмотрена справка и стандартные примеры, которые можно посмотреть. Чтобы включить справку, необходимо нажать Справка/Просмотр справки или воспользоваться горячими клавишами Ctrl+F1. Чтобы посмотреть примеры кодов, в меню нужно выбрать Справка/Примеры.
Borland C++ - это консольное приложение для составления и запуска программ на языке С++. Данное приложение гораздо проще, чем Microsoft Visual Studio, требует меньшей памяти у компьютера для своей работы.
Допустим, мы установили Borland C++ в папку F:/BC. После установки в папке F:/BC создаем папку OUTPUT.
При запуске программы Borland C++ (запускаем файл BC.exe) появляется консольное окно приложения Borland C++, которое представлено на рис. 3.10.
(рис 3.10) Приложение Borland C++ после запуска
При самом первом запуске Borland C++ нужно зайти в настройки, выбрав в меню Options/Directories, как показано на рис. 3.11.
(рис 3.11) Выбор настроек
В появившемся диалоге необходимо вписать стандартные папки, как показано на рис. 3.12. После этого нужно нажать ОК.
(рис 3.12) Настройки Borland C++
Чтобы печатать код программы, необходимо в меню выбрать File/New, тогда появится поле синего цвета с мигающим курсором, как на рис. 3.13.
(рис 3.13) Создание нового файла
Наверху в центре можно увидеть надпись "NONAME00.CPP". Эта надпись показывает название файла с кодом программы. Ниже расположено поле с названием Message, где будут отображаться ошибки при проверке программы.
В отличие от Visual Studio, приложению Borland C++ достаточно одного файла с кодом программы, чтобы выполнить ее. Здесь не будет проекта, как в Visual Studio.
Итак, сохраним наш пустой файл для программы под именем proga1.cpp. Для этого нужно нажать в меню File/Save as… Появится диалоговое окно Save File As, которое представлено на рис. 3.14.
(рис 3.14) Диалоговое окно для сохранения программы
На рис. 3.15 показано уже заполненное диалоговое окно.
(рис 3.15) Сохранение файла с кодом программы
Здесь необходимо выбрать папку, где будут сохраняться все программы. Папка выбирается в поле Files. Какая именно папка предлагается для сохранения, можно увидеть внизу на синем поле. Чтобы выйти из предлагаемой папки, щелкните два раза мышью по двум точкам в списке файлов и папок. В выпавшем списке выберите нужную папку, щелкнув по ней два раза. Название папки должно вписаться в верхнюю строку. Если название папки слишком длинное, то Borland C++ сокращает название и в конце приписывает ˜1. В данном примере название папки было BCprogs, а в приложении Borland C++ она отображается как BCPROG˜1. Хочется также обратить внимание на то, что в нижнем синем поле сменилось название текущей папки для сохранения на следующее: F:\BCPROG˜1\*.CPP. После того, как нужная папка выбрана, необходимо вписать название файла с кодом программы. Для этого в верхней строке нужно стереть значок "*" и вписать название программы proga1. После этого можно нажать кнопку ОК. Если вы все сделали верно, то теперь на синем поле для кода программы будет название \BCPROG˜1\PROGA1.CPP.
Создадим простую программу, которая будет печатать на экране фразу "PRIVET, STUDENT!!!". Набираем код программы, как показано на рис. 3.16.
(рис 3.16) Код программы
Чтобы проверить, есть ли ошибки, в меню необходимо выбрать Compile/Compile или нажать Alt+F9. На рис. 3.17 показано сообщение о том, что ошибок нет.
(рис 3.17) Сообщение об успешной компиляции программы
Чтобы запустить программу, нужно нажать в меню Run/Run или клавиши Ctrl+F9. После этого внизу в поле Message появится надпись Linking PROGA1.EXE:. Это служебная информация. Если она появилась, значит программа запустилась и выполнилась. Чтобы посмотреть на экран с надписью "PRIVET, STUDENT!!!", необходимо в меню выбрать Window/Output или нажать клавиши Alt+F5. Окно вывода данных представлено на рис. 3.18.
(рис 3.18) Окно вывода данных
В языке С++ существуют определенные правила оформления программы. Запустить программу можно в разных средах, например Microsoft Visual Studio или Borland C++.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.