#include <stdio.h>
int my_isdigit(int c) { return (c >= '0' && c <= '9'); }
int my_isalpha(int c) { return ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')); }
int my_islower(int c) { return (c >= 'a' && c <= 'z'); }
int my_isupper(int c) { return (c >= 'A' && c <= 'Z'); }
int my_toupper(int c) { return my_islower(c) ? (c - 32) : c; }
int main(void) {
char c = 'g';
printf("Is '%c' a digit? %d\n", c
, my_isdigit
(c
)); printf("Is '%c' a letter? %d\n", c
, my_isalpha
(c
)); printf("Uppercase of '%c' is '%c'\n", c
, my_toupper
(c
)); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbXlfaXNkaWdpdChpbnQgYykgeyByZXR1cm4gKGMgPj0gJzAnICYmIGMgPD0gJzknKTsgfQppbnQgbXlfaXNhbHBoYShpbnQgYykgeyByZXR1cm4gKChjID49ICdhJyAmJiBjIDw9ICd6JykgfHwgKGMgPj0gJ0EnICYmIGMgPD0gJ1onKSk7IH0KaW50IG15X2lzbG93ZXIoaW50IGMpIHsgcmV0dXJuIChjID49ICdhJyAmJiBjIDw9ICd6Jyk7IH0KaW50IG15X2lzdXBwZXIoaW50IGMpIHsgcmV0dXJuIChjID49ICdBJyAmJiBjIDw9ICdaJyk7IH0KaW50IG15X3RvdXBwZXIoaW50IGMpIHsgcmV0dXJuIG15X2lzbG93ZXIoYykgPyAoYyAtIDMyKSA6IGM7IH0KCmludCBtYWluKHZvaWQpIHsKICAgIGNoYXIgYyA9ICdnJzsKICAgIHByaW50ZigiSXMgJyVjJyBhIGRpZ2l0PyAlZFxuIiwgYywgbXlfaXNkaWdpdChjKSk7CiAgICBwcmludGYoIklzICclYycgYSBsZXR0ZXI/ICVkXG4iLCBjLCBteV9pc2FscGhhKGMpKTsKICAgIHByaW50ZigiVXBwZXJjYXNlIG9mICclYycgaXMgJyVjJ1xuIiwgYywgbXlfdG91cHBlcihjKSk7CiAgICByZXR1cm4gMDsKfQ==