85 lines
1.3 KiB
Java
85 lines
1.3 KiB
Java
import java.lang.Math;
|
|
|
|
public class Entiexte
|
|
{
|
|
private String repr;
|
|
|
|
public Entiexte(int i)
|
|
{
|
|
this.repr = Integer.toBinaryString(i);
|
|
this.repr = this.reverse(this.repr);
|
|
}
|
|
|
|
public Entiexte(String i)
|
|
{
|
|
int temp = Integer.parseInt(i);
|
|
this.repr = Integer.toBinaryString(temp);
|
|
this.repr = this.reverse(this.repr);
|
|
}
|
|
|
|
public String toString()
|
|
{
|
|
return this.repr;
|
|
}
|
|
|
|
private String reverse(String txt)
|
|
{
|
|
char temp;
|
|
char[] txt2 = txt.toCharArray();
|
|
for (int i = 0;i<txt.length()/2;i++)
|
|
{
|
|
temp = txt2[txt.length()-(1+i)];
|
|
txt2[txt.length()-(1+i)]=txt2[i];
|
|
txt2[i]=temp;
|
|
}
|
|
txt = new String(txt2);
|
|
return txt;
|
|
}
|
|
|
|
public int toInt()
|
|
{
|
|
int out=0;
|
|
for (int i=0;i<this.repr.length();i++)
|
|
{
|
|
if(repr.charAt(i)=='1')
|
|
{
|
|
out+= Math.pow(2,i);
|
|
}
|
|
}
|
|
return out;
|
|
}
|
|
|
|
public boolean plusGrand(Entiexte e)
|
|
{
|
|
int test = 0;
|
|
if (this.repr.length()>e.repr.length())
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
if (this.repr.length()<e.repr.length())
|
|
{
|
|
return false;
|
|
}
|
|
else
|
|
{
|
|
for (int i=this.repr.length()-1;i>=0;i--)
|
|
{
|
|
if (this.repr.charAt(i)!=e.repr.charAt(i))
|
|
{
|
|
if (this.repr.charAt(i)=='1')
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
} |