#include <iostream>
#include <cstring>
using namespace std;

int strncmpi(const char* str1, const char* str2, int max);

int main()
{
	char *str1 = "autonom";
	char *str2 = "Automat";
	int result = strncmpi(str1,str2,4);
	if(!result)
		cout << str1 << " == " << str2 << endl;
	else if(result < 0)
		cout << str1 << " < " << str2 << endl;
	else 
		cout << str1 << " > " << str2 << endl;
	return 0;
}

int strncmpi(const char* str1, const char* str2, int max)
{
	char help1, help2;
	// alle Zeichen bis max beachten, aber auch nicht
	// ueber die maximale Zeichenkettenlaenge gehen
	for(int i=0; i<max; i++)
	{
		// Hilfsvariablen zur Anpassung in Grossbuchstaben
		help1 = str1[i];
		help2 = str2[i];
		// wenn irgendwo ein Endezeichen auftritt,
		// so bricht Vergleichen auch ab
		if(str1[i]=='\0' || str2[i]=='\0')
			if(str1[i]=='\0' && str2[i]=='\0')
				break;
			else if(str1[i]=='\0')
				return -1;
			else
				return 1;
		// mache alle Buchstaben zu Grossbuchstaben (ASCII)
		if(help1 > 96 && help1 < 123)
			help1 -= 32;
		if(help2 > 96 && help2 < 123)
			help2 -= 32;
		if(help1 < help2)
			return -1;
		else if(help1 > help2)
			return 1;
	}
	// alle Zeichen gleich fuer betrachtete Anzahl
	return 0;
}


