Моделирование Виртуальной Вычислительной Системы.
 
Выпуск N33
home URL
автор рассылки: noonv (noonv[AT]narod[.]ru)
"Сейчас все можно купить за деньги. В том числе и человеческое мышление. Сходил купил, что нужно - и подключаешь к своей жизни. Очень просто. И сразу используешь в свое удовольствие."
Харуки Мураками Дэнс, дэнс, дэнс

Здравствуйте, уважаемые читатели!

А ведь ЦСКА мог победить :)

Наткнулся на интересную статью - "МОДЕЛИРОВАНИЕ ЭПИДЕМИИ" - очень занимательная модель, рекомендую ознакомиться ;)

Исходники файлов kernel.h и kernel.cpp.



//////////////////////////////////////////////////////////////////////
//
// kernel.h
//
// for define KERNEL of CELL
//
//
//                                                    XIII
//////////////////////////////////////////////////////////////////////

#ifndef _KERNEL_H_
#define _KERNEL_H_

#include "../definitions.h"

#define CHROMOSOME_NUMBER 5

class KERNEL
{
public:
	KERNEL();
	~KERNEL();
	bool read(CFG_FILE);
	bool write(CFG_FILE);
	
	void set_chromosome(uint,Chromosome);
	Chromosome get_chromosome(uint) const;
	KERNEL& operator = (const KERNEL&);

	// genes
	Chromosome Chr[CHROMOSOME_NUMBER]; // chromosome of cell
};

#endif //#ifndef _KERNEL_H_



//////////////////////////////////////////////////////////////////////
//
// kernel.cpp
//
// for define KERNEL of CELL
//
//
//                                                    XIII
//////////////////////////////////////////////////////////////////////

#ifndef _KERNEL_CPP_
#define _KERNEL_CPP_

#include "kernel.h"

KERNEL::KERNEL()
{
}

KERNEL::~KERNEL()
{
}

bool KERNEL::read(CFG_FILE file)
{
	int bytes;

	//
	// reading chromosome
	//
	for(uint count=0;count<CHROMOSOME_NUMBER;count++)
	{
		bytes=fread(&Chr[count],sizeof(Chromosome),1,file);
	}

	return true;
}

bool KERNEL::write(CFG_FILE file)
{
	int bytes;

	//
	// write chromosome
	//
	for(uint count=0;count<CHROMOSOME_NUMBER;count++)
	{
		bytes=fwrite(&Chr[count],sizeof(Chromosome),1,file);
	}

	return true;
}

void KERNEL::set_chromosome(uint i,Chromosome _chr)
{
	if(i>CHROMOSOME_NUMBER)
	{
		prerror("set_chromosome");
		printf("Here only CHROMOSOME_NUMBER chromosome!\n");
	}
	else
		Chr[i]=_chr;
}

Chromosome KERNEL::get_chromosome(uint i) const
{
	if(i>CHROMOSOME_NUMBER)
	{
		prerror("get_chromosome");
		printf("Here only CHROMOSOME_NUMBER chromosome!\n");
		return 0;
	}
	else
		return Chr[i];
}

KERNEL& KERNEL::operator = (const KERNEL& rhs)
{
	if(this==&rhs)
		return *this;

	for(uint count=0;count<CHROMOSOME_NUMBER;count++)
	{
		Chr[count]=rhs.get_chromosome(count);
	}
	return *this;
}

#endif //#ifndef _KERNEL_CPP_


KERNEL - это ядро, наших органических клеток. Как видите, основное(и пока единственное) содержание ядра - это гены, которые выступают, в качестве носителя информации клетки.

Счастливо!

[noonv@volodia noonv]$ logout

XIII

Рейтинг@Mail.ru
Хостинг от uCoz