This commit is contained in:
Павел Родионов
2025-11-21 18:55:21 +07:00
parent 5cbfe19d48
commit ca035a9c08
13 changed files with 408 additions and 12 deletions
+83
View File
@@ -0,0 +1,83 @@
#include "func.h"
int mainget(void){
int t=0,x,y=0,num=0;
unsigned long input = 0;
while(
((x=getchar())>=32 && t<100)
&& ((x>='a' && x<='z')
|| (x>='0' && x<= '9')
|| (x>='A' && x<='Z'))){
// printf("%d %lu ",x,input);
if(x>='a' && x<='z') {x -=('a'-'A');t--;}
if(x>='A' && x<='Z') {input = (input*100)+(x);t--;}
// printf("%d %lu\n",x,input);
if(input>1000000000000000000){printf("input err\n\n");flush();input=0;t--;}
if(x>='0' && x<='9'&&num<147483647){num = (num*10)+(x-'0');t--;}
else if(num>147483647){printf("num is too big!\n\n");num = 0;t--;}
if(t<0)t=0;
t++;
if(end(x))return -1;
}
if(end(x))return -1;
int exit = 69887384;
int help = 72697680;
int show = 83727987;
int set = 836984;
int func = 70857867;
y=(input == exit)?-1:y;
y=(input == 'Q')?-1:y;
y=(input == help)?1:y;
y=(input == 'H')?1:y;
y=(input == set)?2:y;
y=(input == 'S')?2:y;
if(y==2&&(num>=1&&num<=9)) y = 20+num;
if(y==2&&(num==10)) y = 200+num;
y=(input == func)?3:y;
y=(input == 'F')?3:y;
if(y==3&&(num>=1&&num<=9)) y = 30+num;
if(y==3&&(num>=10&&num<=21)) y = 300+num;
y=(input == show)?4:y;
y=(input == 'C')?4:y;
return y;
}
int getsymb(int *b,wchar_t *buff){
int t;
*b=0;
wchar_t x;
while((x=getchar())!=end(x)&&x!='\n'&&x!=' '&&*b<5){
if(x=='/n')x=' ';
*(buff+*b) = x;
*b++;
}
//if(end(x)){flush();return -1;}
t=0;
if(*buff=='-'){
for(int i = 1; i<4;i++){
if(*(buff+i)>='0'&&*(buff+i)<='9')t++;
}
if(*(buff+4)=='-')
if(t==4)return 1;
}
t=0;
printf("\nx ");
getchar();
return 0;
}