
основы программирования на С++
.pdf{
public:
char name[64]; long employee_id; float salary;
void show_employee(void); //————————> Прототип функции
};
Для определения функции вне определения класса ваша программа должна предварять определение функции именем класса и оператором глобального разрешения, как показано ниже:
return_type class_name::function_name(parameters) {// Операторы }
Конструктор и деструктор
Конструктор представляет собой специальную функцию, которая автоматически вызывается каждый раз при создании объекта. Обычное назначение конструктора заключается в инициализации элементов данных объекта. Конструктор имеет такое же имя, как и класс. Например, класс с именем file использует конструктор с именем file. Конструктор определяется внутри программы так же, как и любой метод класса. Единственное различие заключается в том, что конструктор не имеет возвращаемого значения. Когда позже объявляется объект, можно передавать параметры конструктору, как показано ниже:
class_name object(valuel, value2, value3)
Деструктор представляет собой функцию, которая автоматически запускается при уничтожении объекта. Деструктор имеет такое же имя, как и класс объекта; однако имя деструктора предваряется символом тильды (~), например ~employee. В программе деструктор определяется так же, как и любой другой метод класса.
Задания
1. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Xнач. до Xкон. с шагом dX.
|
|
|
|
||
ax 2 + b при x < 0 и b ≠ 0 |
|||||
|
x − a |
|
|||
F := |
|
|
при x > 0 и b = 0 |
||
x − c |
|||||
|
|
||||
|
x |
в остальных случаях |
|||
|
|
|
|||
c |
|
|
где a, b и c – действительные числа. Функция F должна принимать действительное значение, если выражение (Ац ИЛИ Вц) И (Ац ИЛИ Сц) не равно нулю, и целое значение в противном случае. Через Ац, Вц и Сц обозначены целые части значений a, b и c, операции ИЛИ и И – поразрядные. Значения a, b, c, Xнач., Xкон. и dX ввести с клавиатуры.
21
2.В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1)минимальный элемент массива;
2)сумму элементов массива, расположенных между первым и последним положительным элементами.
Преобразовать массив так, чтобы сначала располагались все элементы, равные нулю, а потом остальные.
3.В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1)количество положительных элементов массива;
2)сумму элементов массива, расположенных после последнего элемента, равного нулю.
Преобразовать массив так, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом остальные.
4.Дана целочисленная квадратная матрица. Определить:
1)произведение элементов в тех строках, которые не содержат отрицательных элементов;
2)максимум среди сумм элементов диагоналей, параллельных главной.
5.Осуществить циклический сдвиг элементов прямоугольной матрицы на n элементов вправо или вниз (в зависимости от введенного режима), n может быть больше количества элементов в строке или столбце.
6.Дана целочисленная квадратная матрица. Определить:
1)количество строк, содержащих хотя бы один нулевой элемент;
2)номер столбца, содержащего самую длинную серию одинаковых элементов.
7.Реализовать сортировку матрицы.
8.Написать программу расчета стоимости покупки с учетом скидки. Скидка в 3 % предоставляется, если сумма покупки больше 500 р., в 5 % – сумма покупки больше 1000 р. Если сумма покупки более 3000 р. в течение
1месяца – предоставляется скидка в 10 %.
9.Написать программу, которая запрашивает у пользователя номер месяца, а затем выводит название соответствующего времени года.
10.Написать программу, которая вычисляет частичную сумму ряда 1–1/3 + 1/5 – 1/7 + 1/9 –… и сравнивает полученное значение с числом π4 .
При суммировании достаточно большого числа членов ряда величина суммы приближается к π4 . Вычислить с заданной точностью.
11.Написать программу, которая вычисляет наибольший общий делитель двух целых чисел.
12.Написать программу, которая объединяет два упорядоченных по возрастанию массива в один, также упорядоченный по возрастанию массив.
22
13.Написать программу, которая принимает пароль пользователя (строку символов), проверяет достоверность пароля в массиве разрешенных паролей и выводит информацию об успехе/неуспехе ввода.
14.Составьте программу расчета заработной платы и оплаты сверхурочных на основе количества отработанных в неделю часов.
15.Написать программу расчета дня недели в зависимости от введен-
ной даты.
Литература
1.Страуструп, Бьерн. Язык программирования C++ / пер. с англ. С. Анисимова, М. Кононова под ред.Ф. Андреева, А. Ушакова.– 3-е изд. – М. ; СПб. : Бином : Нев. диалект, 1999. – 990 с.
2.Холзнер, Стивен. Visual C++ 6 : учеб. курс. – СПб.: Питер, 1999. –
569с.
3.А. Нейбауэр. Моя первая программа на C/C++/ http://www.piterpress.ru/lib/978531400107/
4.М. Теллес. Borland C++ Builder (+CD). Библиотека программиста. http://www.piter-press.ru/lib/978531400107/
5.Stanley Lippman (Стенли Липпман) Essential C++ (Основы программирования на С++) – http://anatolix.naumen.ru/files/books/lipp...ial_cpp_eng.zip
23
Учебное издание
ОСНОВЫ ПРОГРАММИРОВАНИЯ НА C++
Учебно-методическое пособие для вузов
Составитель: Крыжановская Юлиана Александровна
Редактор И.Г. Валынкина
Подписано в печать 27.03.2008 г. Формат 60×84/16. Усл. печ. л. 1,4. Тираж 50 экз. Заказ 172.
Издательско-полиграфический центр Воронежского государственного университета.
394000, г. Воронеж, пл. им. Ленина, 10. Тел. 208-298, 598-026 (факс) http://www.ppc.vsu.ru; e-mail: pp_center@ppc.vsu.ru
Отпечатано в типографии Издательско-полиграфического центра Воронежского государственного университета.
394000, г. Воронеж, ул. Пушкинская, 3. Тел. 204-133.
24