#ifndef NUMERO_HPP
#define NUMERO_HPP
#include<iostream>
#include<cstdlib>
#include<cstring>

class Numero {
	private:
		char* dig;
		int   nd;

	public:
		Numero(const char* n="0");
		Numero(const Numero&);
		Numero(int t);
		~Numero(void);
		int   ndig(void) const { return nd; };
		void  normal(void);
		void  mul10(int= 1);
		void  div10(void);
		char  operator [] (int k) const;
		char& operator [] (int k) { return dig[k]; };
		Numero& operator = (const Numero&);
};

Numero operator + (const Numero& a, const Numero& b);
Numero operator * (const Numero& a, const Numero& b);
Numero operator - (const Numero& a, const Numero& b);
Numero operator / (const Numero& a, const Numero& b);
Numero operator % (const Numero& a, const Numero& b);

bool operator < (const Numero& a, const Numero& b);
bool operator <=(const Numero& a, const Numero& b);
bool operator ==(const Numero& a, const Numero& b);
bool operator !=(const Numero& a, const Numero& b);
bool operator >=(const Numero& a, const Numero& b);
bool operator > (const Numero& a, const Numero& b);
std::ostream& operator << (std::ostream& out, const Numero& n);
std::istream& operator >> (std::istream& inp, Numero& n);

#endif




