#include <stdio.h>
#include <stdint.h>
int custom_atoi(const char *str) {
// Your logic here
int k =0,j=0;
char chuoi[10];
if(*(str) == '-'){
for(int i = 0; *(str +i) !='\0'; i++){
if(*(str + i) >= '0' && *(str + i) <= '9'){
chuoi[k] = *(str + i);
k++;
}else if(*str>= 'a' && *str <= 'z'){
return 0;
}else if(*(str + i) >= 'a' && *(str + i) <= 'z'){
break;
}
}
chuoi[k] = '\0';
int so = 0;
for (int t = 0; chuoi[t] != '\0'; t++) {
so = (so * 10 + (chuoi[t] - '0'));
}
return so = 0 - so;
}else{
for(int i = 0; *(str +i) !='\0'; i++){
if(*(str + i) >= '0' && *(str + i) <= '9'){
chuoi[k] = *(str + i);
k++;
}else if(*str>= 'a' && *str <= 'z'){
return 0;
}else if(*(str + i) >= 'a' && *(str + i) <= 'z'){
break;
}
}
chuoi[k] = '\0';
int so = 0;
for (int t = 0; chuoi[t] != '\0'; t++) {
so = (so * 10 + (chuoi[t] - '0'));
}
return so;
}
return 0;
}
int main() {
char str[101];
fgets(str, sizeof(str), stdin);
// Remove newline
uint8_t i = 0;
while (str[i]) {
if (str[i] == '\n') {
str[i] = '\0';
break;
}
i++;
}
printf("%d", custom_atoi(str));
return 0;
}
Input
123abc
Expected Output
123