How to truncate a number from left in C

2 Answers

0 votes
#include <stdio.h>
#include <math.h>

int truncate_left(int num) {
    int total = (int)log10(num); // total - 1 = 3

    // pow(10, total)); // = 1000
    
    while (num > pow(10, total)) {
        num -= pow(10, total);
    }
    
    return num;
}
 
int main(void) {
    int num = 7483;
         
    printf("%d", truncate_left(num));

    return 0; 
}
 
 
 
 
/*
run:
     
483
     
*/

 



answered Jan 10, 2024 by avibootz
edited Jan 10, 2024 by avibootz
0 votes
#include <stdio.h>
#include <math.h>

int truncate_left(int num) {
    int total = (int)log10(num); // total - 1 = 3
    
    int first_digit = num / pow(10, (total));
    
    return num - first_digit * pow(10, (total));
}
 
int main(void) {
    int num = 7483;

    printf("%d", truncate_left(num));

    return 0; 
}
 
 
 
 
/*
run:
     
483
     
*/

 



answered Jan 10, 2024 by avibootz
edited Jan 10, 2024 by avibootz

Related questions

1 answer 84 views
84 views asked Jan 10, 2024 by avibootz
1 answer 122 views
1 answer 143 views
1 answer 111 views
1 answer 153 views
1 answer 115 views
115 views asked Jan 11, 2024 by avibootz
1 answer 98 views
...