,

Душанбе 2014

УДК [004.4:33]

, Основы алгоритмизации и языки программирования. Изд. РТСУ, Душанбе, 2014,62стр.

Пособие соответствует учебной программе дисциплины «Основы алгоритмизации и языки программирования». В пособии  изложены краткие теоретические сведения по основам алгоритмического языка С++. Содержатся примеры, реализованные всреде разработки программы на Dev-C++, приведены ___ лабораторных работ и индивидуальные задания к ним.

Задачи имеют разный уровень сложности и охватывают все темы курса программирования. В начале каждой темы приведена  теория, которая необходима для решения задач данного раздела.  В нем содержатся решения значительного числа задач или указания к их решению по теории программирования и языку программированияС++.

Для студентов, обучающихся по специальности «Прикладная информатика» и по смежным специальностям. Может быть использовано для самостоятельной внеаудиторной работы. Кроме того,  задачи не привязаны к конкретному языку программи­рования и могут быть использованы при изучении любого другого языка программирования.

Рецензенты:

– декан совместного Таджикско – Украинского факультета ТУТ, кандидат физико-математических наук, доцент

Ли И. Т. – доцент кафедры Информатики и информационных систем РТСУ, кандидат технических наук.

Учебное  пособие рекомендовано к печати решением научно-методического совета РТСУ от _________2014 г., протокол № _____

© ,

Содержание

Общие требования к оформлению лабораторной работы ……..

6

1.

Введение в С++ ……………………………………………………

7

Общие замечания …………………………………………..

7

Имена и идентификаторы ………………………………….

12

Идентификаторы …………………………………………..

13

Объявление переменных …………………………………

14

2.

Операторы присваивания……………………………………

18

3.

Директивы include и пространства имен ………………………

22

4.

Типы данных С++………………………………………………..

23

5.

Управляющие последовательности ……………………………

24

6.

Операторы инкрементирования и декрементирования ………..

26

Задания для лабораторной работы №1 ………………………….

27

7.

Механизм ветвления ……………………………………………..

30

Задания для лабораторной работы №2

35

8.

Механизмы циклического выполнения

38

Задания для лабораторной работы №3

44

9.

Оператор выбора

49

Задания для лабораторной работы №4

56

10.

Массивы

59

10.1.Сортировка массива

62

Задания для лабораторной работы №5

67

11.

Массивы для хранения строк

70

12.

Объявление строковой переменной С

71

12.1. Инициализация строковой переменной С

71

12.2. Ввод и вывод строк

71

13.

Функции

74

13.1.Функции для работы со строками

Задания для лабораторной работы №6

78

14

Функции, определяемые программистом

81

Задания для лабораторной работы №7

15

Строка класса string. Работа со строкой.

93

15.1. Ввод-вывод с помощью класса string

94

15.2.Функции-члены стандартного класса string

94

Задания для лабораторной работы №8

97

16.

Векторы

100

Задания для лабораторной работы №9

102

17.

Структура

Задания для лабораторной работы №10

104

Литература


Общие требования к оформлению лабораторной работы

1. Стандартный титульный лист

НЕ нашли? Не то? Что вы ищете?

2. Отчет о решенных задачах (с указанным номером варианта) должен содержать:

– постановку задачи;

– структурную (обобщенную) схему алгоритма;

– листинг (текст кода) программы с пояснением его отдельных участков;

– результаты (экранные формы), иллюстрирующие работоспособность программы.



Введение в С++

1.1 Общие замечания

Язык C++ был разработан на основе языка С. Язык программирования Сбыл разработан в 1970-х годах Деннисом Ричи в AT&T Bell Laboratories, на котором была  написана операционная система UNIX. Эта операционная система существовала и до появления С, но ее первые версии создавались предшественником языка С - BCPL (BasicCombinedProgrammingLanguage) и  на языке ассемблера. С – это язык общегоназначения, подходящий для написания любых программ, но его успех и популярность тесно связаны именно с операционной системой UNIX. Если нужно модифицировать что-то в UNIX, для этого потребуется С. Они изначально были связаны друг с другом так тесно, что со временем не только системные программы, но и все коммерческое программное обеспечение, работающее под управлением UNIX, было написано на языке С. Этот язык стал настолько популярным, что были созданы его версии и для других распространенных операционных систем. Теперь его использование уже не ограничивается компьютерами, на которых установлена ОС UNIX.

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

Для преодоления такого рода ограничений в начале 1980-х годов Бьярном Страустрапом из AT&T BellLaboratories был разработан язык C++. В него вошла большая часть элементов языка С, поэтому большинство программ, написанных на С, являются программами на C++. (Обратное неверно: программы на C++ в подавляющем большинстве не являются программами на С.) В отличие от С, язык C++ включает средства для объектно-ориентированного программирования - очень мощной технологии, разработанной относительно недавно. Структура простой программы на языке C++ представлена в листинге 1. С точки зрения компилятора разрывы строк и отступы не обязательно должны быть такими, как в наших примерах, поскольку ему все равно, где и как они расположены. А вот с точки зрения пользователя программа должна быть написана именно так, чтобы ее удобно было читать. Когда открывающая и закрывающая фигурные скобки расположены на отдельных строках, их легко найти. Отступы перед операторами и их размещение на отдельных строках также улучшают читабельность программы. Если имеются операторы, не помещающиеся на одной строке — для них обычно используется другое оформление с применением отступов и разрывов строк.

Листинг 1. Структура простой программы на C++1

#include <cstdlib>

#include <iostream>

using namespace std;

int main(int argc, char *argv[])

{

конструкции

system("PAUSE");

return EXIT_SUCCESS;

}

Первые несколько строк мы пока будем рассматривать как способ указать на начало программы. Но кое-что в них можно объяснить подробнее. Строка #include <iostream> называется директивой include. Она сообщает компилятору, где он может найти информацию о некоторых используемых в программе элементах. В данном случае iostream является именем библиотеки, которая содержит определения процедур, выполняющих ввод с клавиатуры и вывод на экран; это также имя файла, хранящего необходимую информацию об этой библиотеке. Программа-компоновщик объединяет объектный код библиотеки iostream с объектным кодом написанной программы. В дальнейшем вы будете пользоваться и другими библиотеками, и тогда их имена тоже нужно будет указать компилятору с помощью директив include в начале программы. Для иных библиотек одной только названной директивы может оказаться недостаточно, но сама она является обязательной.

Директивы всегда начинаются с символа #. Некоторые компиляторы требуют, чтобы вокруг него не было пробелов, так что лучше всегда помещать этот символ в начало строки и не отделять его пробелом от слова include. Следующая строка «уточняет» приведенную выше директиву include:

using namespace std: Она сообщает, что имена, определенные в iostream, нужно интерпретировать «стандартным образом» (std является сокращением от англ. standard — стандартный). Пока это все, что можно сказать о данной строке. Третья и четвертая непустые строки просто указывают, что начинается главная часть программы: intmain(intargc, char *argv[]). Правильнее было бы сказать «главная функция», а не «главная часть», но смысл термина «функция» и то, что находится в скобках, будут определены позже. Фигурные скобки «{» и «}» отмечают начало и конец главной части программы. Они не обязательно должны располагаться на отдельных строках, но так их легче найти, поэтому мы всегда будем размещать их подобным образом.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15