#include<constrea.h>
#include<string.h>
struct String
{
private:
char kata[21];
public:
friend istream& operator >> (istream&, String&);
friend String& operator + (String&, String&);
friend ostream& operator << (ostream&, String&);
friend int operator > (String&, String&);
friend int operator < (String&, String&);
friend int operator == (String&, String&);
};
String temp;
istream& operator >> (istream& input, String& a)
{
input>>a.kata;
return input;
}
String& operator + (String& a, String& b)
{
strcpy(temp.kata,a.kata);
strcat(temp.kata,b.kata);
return temp;
}
ostream& operator << (ostream& out, String& a)
{
out<<a.kata;
return out;
}
int operator > (String& a, String& b)
{
int flag=0;
if(strcmp(a.kata,b.kata)>0)flag=1;
return flag;
}
int operator < (String& a, String& b)
{
int flag=0;
if(strcmp(a.kata,b.kata)<0)flag=1;
return flag;
}
int operator == (String& a, String& b)
{
int flag=0;
if(strcmp(a.kata,b.kata)==0)flag=1;
return flag;
}
void main() {
constream cetak;
String A,B;
cetak.clrscr();
cetak<<setclr(7);
cetak<<setxy(2,1)<<"PRogRam FriEnD SedERhaNa";
cetak<<setxy(2,2)<<"ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ";
cetak<<setxy(2,4)<<"Input kalimat pertama [max 20]: ";clreol();
cin>>A;
cetak<<setxy(2,6)<<"Input kalimat kedua [max 20]: ";clreol();
cin>>B;
cetak<<endl;
if(A<B) cetak<<setxy(2,8)<<A<<" lebih kecil dari "<<B;
else if(A>B) cetak<<setxy(2,8)<<A<<" lebih besar dari "<<B;
else if(A==B) cetak<<setxy(2,10)<<A<<" sama dengan "<<B;
cetak<<setxy(2,12)<<A<<" + "<<B<<" = "<<A+B;
getch();
}
//--Save file in .CPP