17558

Права доступу protected в C++

Лабораторная работа

Информатика, кибернетика и программирование

ЛАБОРАТОРНА РОБОТА № 22 Тема:Права доступу protected. Ціль:Ознайомити з доступом до компонентів базового класу при закритому спадкуванні include include class Gruzoperevozchik { protected: float vremya; float stoimost; char mesto[15]; float rasst; Gruzoperevosc...

Украинкский

2013-07-04

36 KB

1 чел.

ЛАБОРАТОРНА РОБОТА № 22

Тема: Права доступу protected.

Ціль: Ознайомити з доступом до компонентів базового класу при закритому спадкуванні

#include <iostream.h>

#include <conio.h>

#include <stdlib.h>

#include <stdio.h>

#include <string.h>

class Gruzoperevozchik {

protected:

float vremya;

float stoimost;

char mesto[15];

float rasst;

Gruzoperevoschik();

};

class Samolet:public Gruzoperevozchik {

public:

void SetStoimost(float);

void SetVremya(float);

void SetMesto(char*);

void SetRasst(float);

float GetStoimost();

float GetVremya();

char* GetMesto();

float GetRasst();

};

class Poezd:public Gruzoperevozchik {

public:

void SetStoimost(float);

void SetVremya(float);

void SetMesto(char*);

void SetRasst(float);

float GetStoimost();

float GetVremya();

char* GetMesto();

float GetRasst();

};

class Avtomobil:public Gruzoperevozchik {

public:

void SetStoimost(float);

void SetVremya(float);

void SetMesto(char*);

void SetRasst(float);

float GetStoimost();

float GetVremya();

char* GetMesto();

float GetRasst();

};

void Samolet::SetStoimost(float c)

{stoimost=c;}

void Samolet::SetVremya(float t)

{vremya=t;}

void Samolet::SetMesto(char* p)

{strcmp(p,mesto);}

void Samolet::SetRasst(float s)

{rasst=s;}

void Poezd::SetStoimost(float c)

{stoimost=c;}

void Poezd::SetVremya(float t)

{vremya=t;}

void Poezd::SetMesto(char* p)

{strcmp(p,mesto);}

void Poezd::SetRasst(float s)

{rasst=s;}

void Avtomobil::SetStoimost(float c)

{stoimost=c;}

void Avtomobil::SetVremya(float t)

{vremya=t;}

void Avtomobil::SetMesto(char* p)

{strcmp(p,mesto);}

void Avtomobil::SetRasst(float s)

{rasst=s;}

float Samolet::GetStoimost() {

return stoimost;}

float Samolet::GetVremya() {

return vremya; }

char* Samolet::GetMesto() {

return mesto; }

float Samolet::GetRasst() {

return rasst;}

float Poezd::GetStoimost() {

return stoimost;}

float Poezd::GetVremya() {

return vremya; }

char* Poezd::GetMesto() {

return mesto; }

float Poezd::GetRasst() {

return rasst;}

float Avtomobil::GetStoimost() {

return stoimost;}

float Avtomobil::GetVremya() {

return vremya; }

char* Avtomobil::GetMesto() {

return mesto; }

float Avtomobil::GetRasst() {

return rasst;}

void main()

{clrscr();

char p[15];

float c,s,t;

Samolet Tu_34;

Poezd Dizel;

Avtomobil Gaz;

cout << "Vvedite vremya dlya samoleta"<<endl;

cin >> t;

Tu_34.SetVremya(t);

cout << "Vvedite vremya dlya poezda"<<endl;

cin >> t;

Dizel.SetVremya(t);

cout << "Vvedite vremya dlya avto"<<endl;

cin >> t;

Gaz.SetVremya(t);

cout << "Vvedite stoimost dlya samoleta "<<endl;

cin >> c;

Tu_34.SetStoimost(c);

cout << "Vvedite stoimost dlya poezda"<<endl;

 cin >> c;

Dizel.SetStoimost(c);

cout << "Vvedite stoimost dlya avto"<<endl;

 cin >> c;

Gaz.SetStoimost(c);

cout << "Vvedite mesto dlya samoleta"<<endl;

 cin >> p;

Tu_34.SetMesto(p);

cout << "Vvedite mesto dlya poezda"<<endl;

 cin >> p;

Dizel.SetMesto(p);

cout << "Vvedite mesto dlya avto"<<endl;

 cin >> p;

Gaz.SetMesto(p);

cout << "Vvedite rasstoyanie dlya samoleta"<<endl;

 cin >> s;

Tu_34.SetRasst(s);

cout << "Vvedite rasstoyanie dlya poezda"<<endl;

 cin >> s;

Dizel.SetRasst(s);

cout << "Vvedite rasstoyanie dlya avto"<<endl;

 cin >> s;

Gaz.SetRasst(s);

float sum=0,sum1,s1;

char p1[15];

cout << "Vvedite uslovnua punkt"<<endl;

cin >> p1;

cout << "Vvedite uslovnoe rasstoyanie"<<endl;

cin >> s1;

if (Tu_34.GetRasst()==s1) sum+=Tu_34.GetVremya();

if (Dizel.GetRasst()==s1) sum+=Dizel.GetVremya();

if (Gaz.GetMesto()==p1) sum+=Gaz.GetVremya();

cout << "Obshee vremya na rasstoyanie "<<s1<<" - "<<sum<<endl;

 getch();

}

Выполнил: Стружко А.Ю

Проверил: Евтехова И.Е


 

А также другие работы, которые могут Вас заинтересовать

12548. КОНСТРУКЦИЯ И ТЕХНОЛОГИЯ ПОВЕРХНОСТНОГО МОНТАЖА ИНТЕГРАЛЬНЫХ СХЕМ 14.46 MB
  ЛАБОРАТОРНАЯ РАБОТА № 5 КОНСТРУКЦИЯ И ТЕХНОЛОГИЯ ПОВЕРХНОСТНОГО МОНТАЖА ИНТЕГРАЛЬНЫХ СХЕМ МЕТОДИЧЕСКОЕ РУКОВОДСТВО СОДЕРЖАНИЕ Цель работы Теоретические сведения Описание лабораторного макета Лабораторное задание...
12549. ТЕХНОЛОГИЧЕСКИЕ ПРОЦЕССЫ ИЗГОТОВЛЕНИЯ МНОГОСЛОЙНЫХ ПЕЧАТНЫХ ПЛАТ 1.11 MB
  ЛАБОРАТОРНАЯ РАБОТА N3 ТЕХНОЛОГИЧЕСКИЕ ПРОЦЕССЫ ИЗГОТОВЛЕНИЯ МНОГОСЛОЙНЫХ ПЕЧАТНЫХ ПЛАТ МЕТОДИЧЕСКОЕ РУКОВОДСТВО СОДЕРЖАНИЕ Цель работы3 Теоретические сведения4 Описание лабораторного макета58 Лабораторное задание 58 Порядок выполнения работы58 Треб...
12550. МЕТОДЫ И ТЕХНОЛОГИЯ ИЗГОТОВЛЕНИЯ ФОТОШАБЛОНОВ ДЛЯ ПРОИЗВОДСТВА ПЕЧАТНЫХ ПЛАТ 1.31 MB
  ЛАБОРАТОРНАЯ РАБОТА N4 МЕТОДЫ И ТЕХНОЛОГИЯ ИЗГОТОВЛЕНИЯ ФОТОШАБЛОНОВ ДЛЯ ПРОИЗВОДСТВА ПЕЧАТНЫХ ПЛАТ МЕТОДИЧЕСКОЕ РУКОВОДСТВО СОДЕРЖАНИЕ Цель работы3 Теоретические сведения3 Контрольные вопросы18 Литература21 Лабораторное задание22 Порядок выполнения ла...
12551. ЗАКОНЫ И МЕТОДЫ ТЕРМОДИНАМИКИ ТЕСТОВЫЕ ЗАДАНИЯ К ЛАБОРАТОРНОМУ ПРАКТИКУМУ 237 KB
  А.Э. Лойко К.И. Корякин Законы и методы термодинамики тестовые задания к лабораторному практикуму ЕкатеринбургУГТУ – УПИ2008 Авторы:А.Э. Лойко К.И. Корякин ЗАКОНЫ И МЕТОДЫ ТЕРМОДИНАМИКИ: тестовые задания к лабораторному практикуму / А.Э. Лойко...
12552. Измерение показателя адиабаты акустическим методом 469 KB
  Лабораторная работа №5т Измерение показателя адиабаты акустическим методом Введение Скорость звука может быть выражена через коэффициент адиабатной сжимаемости среды. Сжимаемость вычисляется через уравнение состояния. Следовательно опыты по измерению ско...
12553. ЭКОНОМИЧЕСКИЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ: Разработка прикладного решения средствами 1С: Предприятие 8.2 5.19 MB
  Карпухина Н.Н. ЭКОНОМИЧЕСКИЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ: Разработка прикладного решения средствами 1С: Предприятие 8.2 Учебное пособие Специальность 080801 Прикладная информатика в экономике Карпухина Н.Н. Экономические информационные системы: Разработ...
12554. ЗВУКОВАЯ ДИАФРАГМА 222 KB
  ОТЧЕТ по лабораторной работе № 3м звуковая диафрагма ВВЕДЕНИЕ Целью настоящей работы является ознакомление с основными законами истечения газа из резервуара через сужающиеся насадки в частности через звуковую диафрагму применяемую на практике для стабилизации...
12555. ИССЛЕДОВАНИЕ ЯВЛЕНИЯ МАГНИТОСТРИКЦИИ С ПОМОЩЬЮ ЭЛЕКТРИЧЕСКИХ ПРОВОЛОЧНЫХ ТЕНЗОМЕТРОВ 202.5 KB
  ИССЛЕДОВАНИЕ ЯВЛЕНИЯ МАГНИТОСТРИКЦИИ С ПОМОЩЬЮ ЭЛЕКТРИЧЕСКИХ ПРОВОЛОЧНЫХ ТЕНЗОМЕТРОВ отчет по лабораторной работе № 4т ВВЕДЕНИЕ Явление магнитострикции заключается в изменении формы и размеров ферромагнетика при изменении его намагничен...
12556. Давление насыщенного пара, жидкости и твердого тела 804 KB
  ОТЧЁТ по лабораторной работе № 2т: Давление насыщенного пара жидкости и твердого тела Введение Известно что жидкость находящаяся в открытом сосуде испаряется и тем быстрее чем выше ее температура чем больше свободная поверхность чем эффективнее удаляется ...