41964

Написать программу на языке C++, моделирующую поведение курицы (Hen) путём создания соответствующего класса

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

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

Листинг программы: include iostrem include cstring include cmth include cstdlib using nmespce std; clss Chickhen { privte: chr nme; double w h f; Кормление урожай норма кормления sttic int e; норма яйценосности public: Chickhenvoid; Chickhenchr double; Chickhenconst Chickhen ; virtul Chickhen; double hrvest; double feeddouble; }; int Chickhen::e=10; Chickhen::Chickhen { w=0; h=0; f=0; nme=new chr[7]; strcpy nme nonme ; } Chickhen::Chickhen chrndouble F { nme=new chr[strlenn1]; strcpynmen; f=F; h=0; w=0;...

Русский

2013-10-27

14.17 KB

17 чел.

Задание: Написать программу на языке C++, моделирующую поведение курицы (Hen) путём создания соответствующего класса. Каждой курице дают уникальное имя и определяют норму кормления f0. Для всех куриц данного типа определена яйценоскость в день E0. Курицу сперва кормят (feed), затем собирают результат (gather). Количество собранных яиц в день E зависит от кормления f следующим образом:

 

В функции main провести тестирование работоспособности разработанного класса. Использование данного класса не должно приводить к утечке памяти, неопределённому поведению и аварийному завершению программы. Длина имени объекта не ограничена.

Листинг программы:

#include <iostream>

#include <cstring>

#include <cmath>

#include <cstdlib>

using namespace std;

class Chickhen {

private:

char *name;

double w, h, f; //Кормление, урожай, норма кормления

static int e; //норма яйценосности

public:

Chickhen(void);

Chickhen(char*, double);

Chickhen(const Chickhen &A);

virtual ~Chickhen();

double harvest();

double feed(double);

};

int Chickhen::e=10;

Chickhen::Chickhen() {

w=0; h=0; f=0;

name=new char[7];

strcpy (name, "noname");

}

Chickhen::Chickhen (char*n,double F)

{

name=new char[strlen(n)+1];

strcpy(name,n);

f=F; h=0; w=0;

}

Chickhen::Chickhen (const Chickhen &A)

{

if(A.name) {

name=new char[strlen(A.name)+1];

strcpy(name,A.name);

}else name=0;

f=A.f; e=A.e; h=A.h; w=A.w;

}

Chickhen::~Chickhen(){ delete[]name; }

double Chickhen::feed(double f)

{

h=int(e*exp(-(((w-f)*(w-f))/((4*f)*(4*f)))));

return h;

}

double Chickhen::harvest()

{

w=0; h=0;

return h;

}

int main()

{

Chickhen CHIK ("Chickhen", 20);

cout << "Chickhen" << CHIK , feed (20) << endl;

cout << "Chickhen" << CHIK , harvest() << endl;

cout << "Chickhen" << CHIK , feed (22) << endl;

cout << "Chickhen" << CHIK , harvest() << endl;

return 0;

}

Результаты работы программы:


 

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

12144. Изучение принципиальной схемы управления электроприводом грузового лифта 175 KB
  ЛАБОРАТОРНАЯ РАБОТА 5. Тема: Изучение принципиальной схемы управления электроприводом грузового лифта. Цель работы: Изучить работу принципиальной схемы управления электроприводом грузового лифта. Краткие теоретические сведения В различных отрасл
12145. Изучение схемы управления электроприводом вентиляционной системы. 374 KB
  ЛАБОРАТОРНАЯ РАБОТА 6. Тема: Изучение схемы управления электроприводом вентиляционной системы. Цель работы: По принципиальной схеме составить монтажную схему. Собрать ее на действующем стенде включить в работу и изучить все возможные варианты. Вентиляц...
12146. Системы численных вычислений. Основы работы в среде Matlab. 906.42 KB
  Отчет по выполнению лабораторной работы № 26 Системы численных вычислений. Основы работы в среде Matlab. Цель работы: научиться проводить прямые вычисления и создавать Мфайлы в пакете автоматизации математических расчетов MATLAB.
12147. Системы численных вычислений. Основы работы в среде Octave и Scilab 1 MB
  Отчет по выполнению лабораторной работы №27 Системы численных вычислений. Основы работы в среде Octave и Scilab. Цель работы: научиться проводить прямые вычисления в пакетах автоматизации математических расчетов Octave и Scilab....
12149. Моделирование работы оптового склада 419 KB
  Лабораторная работа № 3 Моделирование работы оптового склада Задание Имеется rмалое предприятий каждое из которых выпускает продукцию отличную друг от друга. Есть потребители их m они торгуют в розницу ежедневно закупая товары с оптового склада. Потребит
12150. Модель 2-х процессорной системы 83.5 KB
  Лабораторная работа № 4 Модель 2х процессорной системы Блоксхема 2 процессорной системы Код отвечающий за моделирование: Memo2.Lines.Add Начало моделирования while flag0 do begin Memo2. Lines. AddinttostrTime {Проверка процессора 1 на наличие задач и решение з
12151. Форма расчёта равномерного и гиперекспоненциального распределения 474 KB
  Отчет по лабораторной работе № 12 Равномерное распределение распределение характеризующееся тем что вероятность любого интервала зависит только от его длины. Равномерное распределение выбирается когда предполагается что все варианты прогнозируемого показ
12152. КОМПОНЕНТЫ, ИСПОЛЬЗУЕМЫЕ ДЛЯ СВЯЗИ С БАЗАМИ ДАННЫХ 66 KB
  КОМПОНЕНТЫ ИСПОЛЬЗУЕМЫЕ ДЛЯ СВЯЗИ С БАЗАМИ ДАННЫХ Обзор компонентов используемых для связи с базами данных Компоненты Delphi используемые для работы с базами данных расположены в библиотеке компонентов на страницах Data Access доступ к данным и Data Control управл