50725

Використання віртуальних і покажчиків для роботи з обєктами класів

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

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

Тема: Використання віртуальних і покажчиків для роботи з обєктами класів. Ціль роботи: вивчити і навчитися використовувати віртуальні функції в мові С++. Обладнання: ПК,ПО Borland C++

Украинкский

2014-01-29

38.5 KB

1 чел.

МП: Лабораторная                     Вариант №20                                Ярыдин Ярослав

Лабораторна робота №33

Тема: Використання віртуальних і покажчиків для роботи з об'єктами класів

Ціль роботи: вивчити і навчитися використовувати віртуальні функції в мові С++

Обладнання: ПК,ПО Borland C++

Хiд роботы

1. Правила безпеки у компютерному класi

2. Відповідно до індивідуального завдання на базі лабораторної роботи №22 розробити алгоритм роботи з об'єктами базових і похідних класів з використанням покажчиків на базові і похідні класи

Вар.

Умова задачі

20

Дано масив A(8). Сформувати новий масив з номерів негативних непарних чисел вихідного

Лiстiнг програми

Результат роботи

#include <iostream.h>

#define MaciB 8

class base_mas{

 public:

 double val[MaciB];

 base_mas(){

 for(int i=0;i<MaciB;i++)

 val[i]=0.;

 };

 void vvod(){

 cout<<"Введите массив из "<<MaciB<<" элементов: \n";

 for(int i=0;i<MaciB;i++)

 cin>>val[i];

 };

 void vivod(){

 cout<<"Отрицательный нечетный массив: \n";

 for(int i=0;i<MaciB;i++)

 cout<<val[i]<<" ";

 };

 void set(int ind, double val1){

 val[ind]=val1;

 };

 double get(int ind){

 return val[ind];

 };

 ~base_mas(){;};

};

class nn_mas: public base_mas{

 int count;

 public:

 nn_mas(){

 base_mas();

 count=0;

 };

 int kol(){

 return count;

 };

 void from_base(base_mas *bm){

 count=0;

 for(int i=0;i<MaciB;i++)

 if((bm->val[i]<0) && ((int)bm->val[i]%2!=0)){

   val[count]=bm->val[i];

   count++;

 };

 };

 void vivod(){

 cout<<endl<<"Отрицательный нечетный массив: \n";

 for(int i=0;i<count;i++)

 cout<<val[i]<<" ";

 };

};

void main(){

 base_mas *bm=new base_mas;

 nn_mas *nnm=new nn_mas;

 bm->vvod();

 nnm->from_base(bm);

 nnm->vivod();

 delete nnm;

 delete bm;

};

Висновок: я вивчив і навчився використовувати віртуальні функції в мові С++


 

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

9895. Градиентные методы 87.5 KB
  Градиентные методы Градиентные методы безусловной оптимизации используют только первые производные целевой функции и являются методами линейной аппроксимации на каждом шаге, т.е. целевая функция на каждом шаге заменяется касательной гиперплоскостью ...
9896. Примеры простейших задач вариационного исчисления 214.5 KB
  Примеры простейших задач вариационного исчисления Исторически первой задачей, известной в глубокой древности и отнесенной впоследствии к задачам вариационного исчисления, явилась так называемая задача Дидо. Легенда говорит, что Дидо - царица од...
9897. Вариация функционала 278.5 KB
  Вариация функционала Вариация одно из центральных понятий при изучении нелинейных функционалов, оно играет ту же роль, что понятие дифференциала при изучении нелинейных функций. Дифференциал нелинейной функции равен главной линейно...
9898. Вторая вариация и достаточные условия экстремума 178 KB
  Вторая вариация и достаточные условия экстремума Вспоминая о глубокой аналогии между дифференциальным и вариационным исчислениями, естественно ожидать, что при переходе к достаточным условиям экстремума функционалов будет введено понятие, иг...
9899. Классификация задач оптимизации 70 KB
  Классификация задач оптимизации оптимизируемая функция (целевая функция, целевой функционал, критерий качества и т.п.), численно выражает степень достижения целей функционирования оптимизиру...
9900. Динамическая оптимизация 97 KB
  Динамическая оптимизация Статическая задача распределения ограниченных ресурсов для достижения комплекса конкурирующих целей в некоторый определенный момент времени математически формализуется в виде математической задачи выбора из заданного до...
9901. Динамическое программирование 224 KB
  Динамическое программирование Динамическое программирование является еще одним из двух современных направлений в теории задач управления. Метод динамического управления может применяться непосредственно при решении общей задачи управления...
9902. Линейное программирование 383.5 KB
  Линейное программирование Линейное программирование (ЛП) - это наука о методах исследования и отыскания наибольших и наименьших значений линейной функции, на неизвестные которой наложены линейные ограничения 1930 г., А.Н. Толстой - составление оптим...
9903. Симплекс-метод решения задач ЛП 86.5 KB
  Симплекс-метод решения задач ЛП Симплекс-метод предложен Дж. Данцигом в 1947 г. непосредственно применяется к общей задаче ЛП в канонической форме: Z = CTX min, при ограничениях X0, AX = B, B > 0, Любое неотрицательное решение...