C/C++

Вопрос по языку си. Написать функцию

Функция принимает в себя два значения. Каждое - единичный символ на латинице. Функция возвращает 1, если обе буквы либо маленькие, либо большие. Возвращает 0, если одна буква большая, а другая маленькая и возвращает -1 если один или оба символа не являются буквами. Заранее огромное спасибо!
#include <algorithm>
#include <iostream>
#include <string>
using namespace std;
int test(char a, char b) {
string low{ "abcdefghijklmnopqrstuvwxyzабвгдеёжзийклмнопрстуфхцчшщъыьэюя" };
string upp{ "ABCDEFGHIJKLMNOPQRSTUVWXYZАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ" };
auto low_a = find(low.begin(), low.end(), a);
auto low_b = find(low.begin(), low.end(), b);
auto upp_a = find(upp.begin(), upp.end(), a);
auto upp_b = find(upp.begin(), upp.end(), b);
if (low_a != low.end() && low_b != low.end()) return 1;
if (upp_a != upp.end() && upp_b != upp.end()) return 1;
if (low_a == low.end() && upp_a == upp.end()) return -1;
if (low_b == low.end() && upp_b == upp.end()) return -1;
return 0;
}
int main() {
system("chcp 1251 > nul");
char a, b;
while (true) {
cout << ">>> ";
cin >> a >> b;
cout << "<<< " << test(a, b) << '\n';
}
}
Дмитрий Пономар
Дмитрий Пономар
73 662
Лучший ответ
#include <stdio.h>

int function(const char c1, const char c2)
{
if( ( (c1 >= 'a' && c1 <= 'z') && (c2 >= 'a' && c2 <= 'z') )
||
( ( c1 >= 'A' && c1 <= 'Z') && (c2 >= 'A' && c2 <= 'Z') ) )
return 1;
else if( ( (c1 >= 'a' && c1 <= 'z') && (c2 >= 'A' && c2 <= 'Z') )
||
( ( c1 >= 'A' && c1 <= 'Z') && (c2 >= 'a' && c2 <= 'z') ) )
return 0;
else if((c1 < 'a' || c1 > 'z') && (c1 < 'A' || c1 > 'Z') &&
(c2 < 'a' || c2 > 'z') && (c2 < 'A' || c2 > 'Z'))
return -1;
else
return -2;
}

int main()
{
char a,b;
scanf("%c %c", &a, &b);
printf("%d\n", function(a,b));

return 0;
}
СФ
Стас Фед
87 221
*.боец .* может чего вспомнишь https://otvet.mail.ru/question/226960392