
- •Рязанская государственная радиотехническая академия Объектно-ориентированное программирование
- •Рязань 2003
- •390005, Рязань, ул. Гагарина, 59/1.
- •1. Программирование линейных алгоритмов Основные понятия
- •Идентификаторы
- •Объявление переменных
- •Стандартные типы данных
- •Представление констант
- •Символьные константы
- •Строковые константы
- •Ввод – вывод данных
- •Математические функции
- •Контрольные вопросы
- •Варианты заданий
- •2. Программирование алгоритмов разветвляющейся структуры Операторы управления
- •Контрольные вопросы
- •Цикл с параметром
- •Контрольные вопросы
- •Варианты заданий
- •4. Массивы. Классы памяти переменных Классы памяти переменных
- •Распределение памяти
- •Массивы
- •Инициализация
- •Указатели
- •Связь одномерных массивов с указателями
- •Связь двумерных массивов с указателями
- •Динамические массивы
- •Контрольные вопросы
- •Варианты заданий
- •5. Функции пользователя
- •Передача параметров в функции
- •Шаблоны функций
- •Контрольные вопросы
- •Варианты заданий
- •6. Структуры, объединения, битовые поля Структуры
- •Объединение
- •Битовые поля
- •Контрольные вопросы
- •Варианты заданий
- •7. Файлы
- •Типовые операции с файлами
- •Функции форматного ввода и вывода данных
- •Определение длины файла:
- •Спецификаторы доступа
- •Конструкторы и деструкторы
- •Наследование
- •Наследование и контроль доступа
- •Указатель this
- •Перегрузка операций
- •Константные объекты и константные методы
- •Статические элементы класса
- •Виртуальные функции
- •Абстрактные классы
- •9. Варианты заданий на курсовое проектирование
- •Оглавление
Контрольные вопросы
Какова структура программы в языке С++?
Что такое препроцессор?
В чем состоит назначение директив #define и #include ?
Каким требованиям должен удовлетворять идентификатор в С++ ?
Как происходит объявление переменных в программе ?
Приведите пример констант целого, символьного, вещественного и строкового типов данных.
Перечислите основные математические функции в С++.
Варианты заданий
Составить программу вычисления
значения функции
.
В программе реализовать ввод исходных
данных с клавиатуры и вывод значения
функции и промежуточных данных на экран.
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
|
|
, где |
|
2. Программирование алгоритмов разветвляющейся структуры Операторы управления
Оператор if имеет следующий синтаксис:
if (< выражение >)
( <оператор 1>);
[ else
<оператор 2>;]
Если выражение отлично от нуля выполняется оператор 1, если равно нулю то выполняется оператор 2.
Например, оператор, вычисляющий y = |x|, будет иметь следующий вид:
if (x >= 0) y = x; else y = -x;
Для многоальтернативного выбора используется оператор switch:
switch (выражение целого типа) { case значение 1: оператор 1; break; case значение 2: оператор 2; break; [default:<операторы>;]
}
При совпадении результата выражения после switch со значением после case, выполняется соответствующий оператор.
Если в конце выбранного варианта поместить оператор break , то управление будет сразу передано в конец оператора switch. Когда некоторому значению выражения не соответствует никакая метка, то управление передаётся оператору с меткой default (прочие). Вариант default может отсутствовать.
switch ( Znak )
{
case ’+’: y = a + b; break; case ‘-‘: y = a - b; break; case ’*’: y = a * b; break;
case ‘/’ : y = a / b; break; default : printf(“Недопустимый знак операции \ n”);
}
Контрольные вопросы
Перечислите операторы управления в С++.
Как работает условная операция?
Объясните принцип работы условного оператора.
Объясните принцип работы оператора выбора.
Варианты заданий
Модифицировать программу
вычисления значения функции
из лабораторной работы № 1. В программе
предусмотреть вывод сообщения «значение
функции не определено», если введенные
исходные данные не принадлежат области
определения функции (т.е. если при таких
исходных данных вычисление значения
функции невозможно).
3. ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ ЦИКЛИЧЕСКОЙ СТРУКТУРЫ
Цикл с предусловием:
while (<выражение>)
<Оператор>;
Пока выражение после while отлично от нуля, выполняется Оператор. После while “;” не ставится. Рассмотрим программу, считывающую с клавиатуры предложение и определяющую его длину:
#inciude<conio.h>
#include<stdio.h>
main () {
char ch; int len = 0;
puts(“\n Наберите предложение, затем нажмите <Enter>:\n”);
while ((ch = getch())!=’\r’) { putch(ch); len++;}
printf(“\n Ваше предложение имеет длину %d символов. \n”,len);
}
Цикл с постусловием
do
<Оператор> ;
while(<выражение>);
Пока выражение после while отлично от нуля, выполняется Оператор.
Пример деления двух чисел a и b:
#include <iostream.h>
void main()
{
float a,b,FDiv;
char Symbol;
Symbol='y';
do
{cout<<'\n'<<"Введите два числа: ";
cin>>a; cin>>b;
if (b<=0.1E-6)
cout<<'\n'<<"Внимание! Деление на ноль!"<<'\n';
else {FDiv=a/b;
cout<<'\n'<<"Результат деления: "<<'\n'<<FDiv;}
cout<<'\n'<<"Повторить ввод чисел a,b?"<<'\n';
cout<<"('y' - да; остальные - нет)"<<'\n';
cin>>Symbol;}
while (Symbol=='y');}