字符串问题,逐个比较,分情况讨论。
#include <iostream>
#include <string>
#define prin(x) std::cout << x << std::endl
int main()
{
std::ios::sync_with_stdio(false);
std::string a, b, longer, shorter;
std::cin >> a >> b;
bool falg = true;
std::string::size_type lenth_a = a.size();
std::string::size_type lenth_b = b.size();
if (lenth_b > lenth_a)
{
int interval = lenth_b - lenth_a;
for (std::string::size_type i = 0; i != lenth_b - lenth_a; ++i)
{
if (b[i] > '0')
{
//flag = false;
std::cout << "<\n";
return 0;
}
}
for (std::string::size_type i = lenth_b - lenth_a; i != lenth_b; ++i)
{
if (a[i - interval] == b[i])
continue;
else if (a[i - interval] > b[i])
{
std::cout << ">\n";
return 0;
}
else
{
std::cout << "<\n";
return 0;
}
}
std::cout << "=\n";
return 0;
}
else if (lenth_b == lenth_a)
{
for (std::string::size_type i = 0; i != lenth_b; ++i)
{
if (a[i] == b[i])
continue;
else if (a[i] > b[i])
{
std::cout << ">\n";
return 0;
}
else
{
std::cout << "<\n";
return 0;
}
}
std::cout << "=\n";
return 0;
}
else
{
int interval = lenth_a - lenth_b;
for (std::string::size_type i = 0; i != lenth_a - lenth_b; ++i)
{
if (a[i] > '0')
{
//prin(a[i]);
//flag = false;
std::cout << ">\n";
return 0;
}
}
for (std::string::size_type i = lenth_a - lenth_b; i != lenth_a; ++i)
{
if (a[i] == b[i - interval])
continue;
else if (a[i] > b[i - interval])
{
//prin(a[i]);
//prin(b[i - interval]);
std::cout << ">\n";
return 0;
}
else
{
std::cout << "<\n";
return 0;
}
}
std::cout << "=\n";
}
return 0;
}