All pastes #272462 Raw Edit

Miscellany

public text v1 · immutable
·published 2006-12-09 00:11 UTC
rendered paste body
#include <iostream>
#include <vector>

using namespace std;

class binary{
public:
	binary();
	binary(vector <int> number1);

	vector <int> number;
	vector <int> temp;
	int place;
	int carryover;
	void add_one();
};
binary::binary(){
	number.push_back(0);
	place=0;
	carryover=1;
}
binary::binary(vector <int> number1){
	number=number1;
	place=number.size()-1;
	carryover=1;
}
void binary::add_one(){
	if(place>-1){
	if(carryover!=0){
		number[place] = number[place] + carryover;
		if(number[place] == 2){
			number[place]=0;
			place--;
			carryover=1;
			add_one();
		} else {
			place--;
			carryover=0;
		}
	}
	} else {
		if(carryover==1){
			temp=number;
			number.clear();
			number.push_back(1);
			number.push_back(0);
			for(int i=1; i<temp.size(); i++){
			number.push_back(temp[i]);
			}
		}
	}

	carryover=1;
	place=number.size()-1;

}