Главная страница

ВКР. Учебно-методическое пособие Тольятти тгу 2011 удк 004 3(075) ббк. Учебнометодическое пособие по дисциплине Языки программирования предназначено для студентов очной формы обучения и содержит конспект лекций по ключевым темам курса и практикум


Скачать 0.88 Mb.
НазваниеУчебнометодическое пособие по дисциплине Языки программирования предназначено для студентов очной формы обучения и содержит конспект лекций по ключевым темам курса и практикум
Дата30.05.2022
Размер0.88 Mb.
Формат файлаdoc
Имя файлаУчебно-методическое пособие Тольятти тгу 2011 удк 004 3(075) ббк.doc
ТипУчебно-методическое пособие
#557668
страница9 из 13
1   ...   5   6   7   8   9   10   11   12   13

2.3.2Пример простой программы


Ниже приведён исходный текст простой программы на Си++.

 // В языке Си++ с двойной косой черты начинаются комментарии

// (например, как эта строка). Компилятор игнорирует комментарии,

// начиная от первой черты и до конца строки.

/* Второй способ записи комментариев – после косой черты со звёздочкой.

После текста комментария надо поставить звёздочку, а затем – косую

черту. Комментарии, записанные подобным образом, могут занимать

больше одной строки. */

/* В программе ОБЯЗАТЕЛЬНО должно быть достаточное количество

комментариев! */

/* Эта программа запрашивает у пользователя текущий год, возраст

пользователя и еще один год. Затем программа вычисляет возраст

пользователя, который будет у него во втором введённом году.*/

#include

int main()

{

int year_now, age_now, another_year, another_age;

cout << "Введите текущий год и нажмите ENTER.\n";

cin >> year_now;

cout << "Введите свой возраст (в годах).\n";

cin >> age_now;

cout << "Введите год, для которого вы хотите узнать свой возраст.\n";

cin >> another_year;

another_age = another_year - (year_now - age_now);

if (another_age >= 0)

{

cout << "В " << another_year << " годувамбудет ";

cout << another_age << "\n";

}

else

{

cout << "В " << another_year << " вы еще не родились!\n";

}

return 0;

}

Некоторые свойства приведённой программы являются обычными для большинства программ на Си++. Программа начинается (после комментариев) с оператора

#include

Директива include предназначена для включения в исходный текст содержимого другого файла. Например, в приведённую программу включается файл iostream.h, содержащий описания функций стандартной библиотеки ввода/вывода для работы с клавиатурой и экраном.

Алгоритм, записанный в приведённой программе, очень простой. Поэтому структуру программы легко представить в виде списка последовательно выполняемых команд (операторов). Схематично программу, содержащуюся после директивы #include, можно представить в виде:

int main()

{

Первый оператор;

...

...

Последний оператор;

return 0;

}

 Подобная структура является общей для всех программ на Си++. Каждый оператор в теле программы завершается точкой с запятой. В хорошо разработанной большой программе большинство операторов являются обращениями (вызовами) к подпрограммам, которые записываются после функции main() или в отдельных файлах. Каждая подпрограмма (функция) имеет структуру, подобную функции main(). Но функция main() в каждой программе только одна. Именно с нее начинается выполнение программы. (Подробнее функции будут рассматриваться далее.)

В конце функции main() записана строка:

return 0;

Эта строка значит «вернуть операционной системе в качестве сигнала об успешном завершении программы значение 0». Оператор возврата return применяется не только при завершении программы, но и при завершении отдельных подпрограмм. В любом случае этот оператор возвращает определённое значение на более высокий уровень управления.

В программе-примере используются четыре переменные:

year_now, age_now, another_year и another_age

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

int year_now, age_now, another_year, another_age;

Этот оператор уведомляет компилятор, что для хранения четырёх переменных типа «целое число» (integer – int) требуется выделить необходимое количество памяти. Эта область памяти будет зарезервирована в течение выполнения оставшейся части программы. Переменные всегда должны быть описаны до первого использования. В программировании хорошим стилем считается описание всех переменных, используемых в подпрограмме, в начале этой подпрограммы. В Си++ есть несколько различных типов переменных, и они будут обсуждаться немного позже.

 После компиляции программы её можно запустить на выполнение. Результат выполнения на экране будет выглядеть примерно так:

Введите текущий год и нажмите ENTER.

2000

Введите свой возраст (в годах).

21

Введите год, для которого вы хотите узнать свой возраст.

2017

В 2017 году вам будет 38

Первая, третья, пятая и седьмая строки выдаются на экран программой с помощью следующего оператора:

cout << Выражение1 << Выражение2 << ... << ВыражениеN;

Этот оператор выводит на экран сообщение:

Выражение1 Выражение2 ... ВыражениеN

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

cout << Выражение1;

cout << Выражение2;

...

...

cout << ВыражениеN;

приводит к аналогичному результату. Если между выражениями требуется вставить пробелы или новые строки, то их нужно указать явно, с помощью символов "" и "\n" соответственно.

Числа, показанные выше в примере выдачи на экран полужирным шрифтом, были напечатаны пользователем. В показанном примере оператор

cin >> year_now;

приводит к тому, что переменной year_now присваивается значение 2000. Это происходит после того, как пользователь напечатает «2000» и нажмет клавишу Enter. В программе есть ещё места, где переменным присваиваются значения, в том числе оператор присваивания:

another_age = another_year - (year_now - age_now);

Операция «=» означает «присвоить переменной, стоящей слева от знака равенства, значение, указанное справа». Проверка на равенство в Си++ обозначается двойным символом: «==».

В нескольких последних строках программы (до строки «return 0») записано:

if (another_age >= 0)

{

cout << "В " << another_year << " годувамбудет ";

cout << another_age << "\n";

}

else

{

cout << "В " << another_year << " вы еще не родились!\n";

}

 Оператор ветвления (условный оператор) «if...else...» выглядит примерно одинаково во всех процедурных языках программирования. В Си++ он называется просто оператором if, и его общая структура такова:

if (условие)

{

Оператор1;

...

...

ОператорN;

}

else

{

ОператорN+1;

...

...

ОператорN+M;

}

Часть «else (иначе)» в операторе if необязательна. Более того, если после «if (условие)» стоит только один оператор, то можно опустить фигурные скобки и записать оператор так:

if (условие)

Оператор1;

В программах условные операторы часто встречаются группами, например:

...

...

if (total_test_score < 50)

cout << "Вынепрошлитест. Выучите материал как следует.\n";

else if (total_test_score < 65)

cout << "Вы прошли тест со средним результатом.\n";

else if (total_test_score < 80)

cout << "Вы хорошо выполнили тест.\n";

else if (total_test_score < 95)

cout << "Вы показали отличный результат.\n";

else

{

cout << "Вы сдали тест нечестно!\n";

total_test_score = 0;

}

...

...

Приведённый фрагмент программы может показаться довольно сложным. Тем не менее, он соответствует правилам Си++.

При обработке приведённого фрагмента программы компилятор Си++ трактует весь текст, выделенный ниже полужирным шрифтом, как один оператор после первого слова else.

...

...

if (total_test_score < 50)

cout << "Вынепрошлитест. Выучите материал как следует.\n";

else if (total_test_score < 65)

cout << "Вы прошли тест со средним результатом.\n";

else if (total_test_score < 80)

cout << "Вы хорошо выполнили тест.\n";

else if (total_test_score < 95)

cout << "Вы показали отличный результат.\n";

else

{

cout << "Вы сдали тест нечестно!\n";

total_test_score = 0;

}

...

...
1   ...   5   6   7   8   9   10   11   12   13


написать администратору сайта