класс Histogram

Рубрика: C++, Дата: 28 February, 2013, Автор:
Tags:

Определите класс Histogram, который хранит числа из интервалов, указанных аргументами конструктора. Напишите функции для вывода гистограмм. Обработайте ошибки выхода их диапазона значений.Ну что ж господа начинаем решать, вникать в, то, что такое гистограмма не будем, а тупо напишем класс который будет специализироваться двумя аргументами и заполнять закрытый массив элементов.

Создаем прототип файл Histogram.h

//opredelenie Histogram
#ifndef HISTOGRAM_H
#define HISTOGRAM_H

class Histogram
{
	int mass[300];
public:
	Histogram(int=1,int=10);
	void print()const;

};

#endif

Дальше создаем файл функций Histogram.cpp

//opredele functions Histogram
#include <cstdlib>
using std::exit;
#include <iostream>
using std::cout;
using std::cerr;
using std::endl;

#include "Histogram.h"

Histogram::Histogram(int a,int b)
{
	cout <<"konctryktor"<<endl;
	if(a>b)
	{
		cerr <<"a>b"<<endl;
		exit(1);//avariinoe zaverwenie
	}
	//mass[300]={0};//inicializiryem nyl9mi vse elementu
	for(int i=0;i<300;i++)
	{
		mass[i]=0;
		//cout <<"3"<<endl;
	}
	cout <<"conec inicializacii"<<endl;

	int count=0;
	for(int i=a;i<=b;i++)
	{
		mass[count]=i;
		//cout <<"3"<<endl;
		++count;
	}

}

void Histogram::print()const
{
	//vuvod 
	//cout <<mass[0]<<'|'<<mass[1]<<endl;
	for(int i=0;mass[i]!=0;i++)
	{
		cout <<mass[i]<<' ';
	}
}

Всего две функции конструктор и print().

Дальше проверяем как все работает файл программы

//opredelit6 klacc Histogram
#include <iostream>
using std::cout;
using std::endl;
#include "Histogram.cpp"

int main()
{
	Histogram b(4,8);
	cout <<endl;
	b.print();
	cout <<endl;

	return 0;
}

ну и все ошибки для выхода за пределы делать не будем.

Вообще я так решил эту задачу. Все больше морочиться над ней не буду хватит и этого. 🙂

rss