Warning: WP_Syntax::substituteToken(): Argument #1 ($match) must be passed by reference, value given in
/home/bateeqjg/public_html/news/wp-content/plugins/wp-syntax/wp-syntax.php on line
380
Warning: WP_Syntax::substituteToken(): Argument #1 ($match) must be passed by reference, value given in
/home/bateeqjg/public_html/news/wp-content/plugins/wp-syntax/wp-syntax.php on line
380
Warning: WP_Syntax::substituteToken(): Argument #1 ($match) must be passed by reference, value given in
/home/bateeqjg/public_html/news/wp-content/plugins/wp-syntax/wp-syntax.php on line
380
Warning: Undefined array key "layout" in
/home/bateeqjg/public_html/news/wp-content/plugins/wp-about-author/wp-about-author.php on line
94
Today’s Code of the Day is about how to find the digit of a number at a given position. I decided to go with the C / C++ programming languages to time, but you can easily translate the algorithms to other languages.
C Code.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| #include <stdio.h>
#include <math.h>
// Function: getDigitFromNum returns a digit at a given index of a integer.
// Goes from right to left with the starting index of 0.
int getDigitFromNum( int num, int digit ){
num /= pow( 10, digit );
return num % 10;
}
// Function: getDigitFromDec returns a digit at a given index of a double.
// Goes from left to right with the starting index of 0.
int getDigitFromDec( double dec, int digit ){
dec *= pow( 10, digit );
return (int)dec % 10;
}
// Function: getDigitFromNum returns the decimal values of a double.
double getDecimals( double dec ){
return dec - (int)dec;
} |
#include <stdio.h>
#include <math.h>
// Function: getDigitFromNum returns a digit at a given index of a integer.
// Goes from right to left with the starting index of 0.
int getDigitFromNum( int num, int digit ){
num /= pow( 10, digit );
return num % 10;
}
// Function: getDigitFromDec returns a digit at a given index of a double.
// Goes from left to right with the starting index of 0.
int getDigitFromDec( double dec, int digit ){
dec *= pow( 10, digit );
return (int)dec % 10;
}
// Function: getDigitFromNum returns the decimal values of a double.
double getDecimals( double dec ){
return dec - (int)dec;
}
Example:
Input File
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| // Programmed by Larry Battle, bateru.com/news
// Date: April 26, 2011
// Purpose: To demonstrate how to get a digit by a position index.
#include <stdio.h>
#include <math.h>
int getDigitFromNum( int num, int digit ){
num /= pow( 10, digit );
return num % 10;
}
int getDigitFromDec( double dec, int digit ){
dec *= pow( 10, digit );
return ((int)dec) % 10;
}
double getDecimals( double dec ){
return dec - (int)dec;
}
void main(){
double dec = 1234.56789;
printf( "\n%d", getDigitFromNum( (int)dec, 0 ));
printf( "\n%d", getDigitFromDec( dec, 2 ));
printf( "\n%f", getDecimals( dec ));
} |
// Programmed by Larry Battle, bateru.com/news
// Date: April 26, 2011
// Purpose: To demonstrate how to get a digit by a position index.
#include <stdio.h>
#include <math.h>
int getDigitFromNum( int num, int digit ){
num /= pow( 10, digit );
return num % 10;
}
int getDigitFromDec( double dec, int digit ){
dec *= pow( 10, digit );
return ((int)dec) % 10;
}
double getDecimals( double dec ){
return dec - (int)dec;
}
void main(){
double dec = 1234.56789;
printf( "\n%d", getDigitFromNum( (int)dec, 0 ));
printf( "\n%d", getDigitFromDec( dec, 2 ));
printf( "\n%f", getDecimals( dec ));
}
Output: