Every
programming language provides support for manipulating different types of
numbers like simple whole integer, floating point number. The programming
languages like C, Java and Python categorize these numbers in several
categories based on their nature.
Let's go
back and check data types chapter, where we listed down core data types related
to numbers:
Type
|
Keyword
|
Value range which can be represented by this data
type
|
Number
|
int
|
-32,768 to
32,767 or -2,147,483,648 to 2,147,483,647
|
Small
Number
|
short
|
-32,768 to
32,767
|
Long
Number
|
long
|
-2,147,483,648
to 2,147,483,647
|
Decimal
Number
|
float
|
1.2E-38 to
3.4E+38 till 6 decimal places
|
These data
types are called primitive data types and you can use these data types to build
more data types, which are called user-defined data type.
We have seen
various mathematical and logical operations on numbers during a discussion on
operators. So we know how to add numbers, subtract numbers, divide numbers,
etc.
First let's
see how to print various types of numbers available in C programming language:
#include <stdio.h>
main()
{
short s;
int i;
long l;
float f;
double d;
s = 10;
i = 1000;
l = 1000000;
f = 230.47;
d = 30949.374;
printf( "s:
%d\n", s);
printf( "i:
%d\n", i);
printf( "l:
%ld\n", l);
printf( "f:
%.3f\n", f);
printf( "d:
%.3f\n", d);
}
Rest of the
coding is very obvious but we used %.3f to print float and double, which
indicates number of digits after decimal to be printed. When above program is
executed, it produces the following result:
s: 10
i: 1000
l: 1000000
f: 230.470
d: 30949.374
Math Operations on Numbers
Following
table lists down various useful built-in mathematical functions
available in C programming language which can be used for various important
mathematical calculations.
For example,
if you want to calculate square root of a number for example, 2304, then you
have built-in function available to calculate square root for this number.
S.N.
|
Function & Purpose
|
1
|
double
cos(double);
This function takes an angle (as a double) and returns the cosine. |
2
|
double
sin(double);
This function takes an angle (as a double) and returns the sine. |
3
|
double
tan(double);
This function takes an angle (as a double) and returns the tangent. |
4
|
double
log(double);
This function takes a number and returns the natural log of that number. |
5
|
double
pow(double, double);
The first is a number you wish to raise and the second is the power you wish to raise it to. |
6
|
double
hypot(double, double);
If you pass this function the length of two sides of a right triangle, it will return you the length of the hypotenuse. |
7
|
double
sqrt(double);
You pass this function a number and it gives you this square root. |
8
|
int
abs(int);
This function returns the absolute value of an integer that is passed to it. |
9
|
double
fabs(double);
This function returns the absolute value of any decimal number passed to it. |
10
|
double
floor(double);
Finds the integer which is less than or equal to the argument passed to it. |
Following a
simple example to show few of the mathematical operations. To utilize these
functions, you need to include the math header file <math.h> header
file in your program in similar way you have included stdio.h:
#include <stdio.h>
#include <math.h>
main()
{
short s;
int i;
long l;
float f;
double d;
s = 10;
i = 1000;
l = 1000000;
f = 230.47;
d = 2.374;
printf( "sin(s):
%f\n", sin(s));
printf( "abs(i):
%f\n", abs(i));
printf( "floor(f):
%f\n", floor(f));
printf( "sqrt(f):
%f\n", sqrt(f));
printf( "pow(d,
2): %f\n", pow(d, 2));
}
When above
program is executed, it produces the following result:
sin(s): -0.544021
abs(i): -0.544021
floor(f): 230.000000
sqrt(f): 15.181238
pow(d, 2): 5.635876
Other than
above usage, you will use numbers in loop counting, flag representation, true
or false values in C programming.
Numbers in Java
Following is
the equivalent program written in Java programming language. Java programming
language also provides almost all numeric data types available in C
programming.
You can try
to execute the following program to see the output, which is identical to the
result generated by the above C example.
public class DemoJava
{
public static
void main(String []args)
{
short s;
int i;
long l;
float f;
double d;
s = 10;
i = 1000;
l = 1000000L;
f = 230.47f;
d = 30949.374;
System.out.format(
"s: %d\n", s);
System.out.format(
"i: %d\n", i);
System.out.format(
"l: %d\n", l);
System.out.format(
"f: %f\n", f);
System.out.format(
"d: %f\n", d);
}
}
When above
program is executed, it produces the following result:
s: 10
i: 1000
l: 1000000
f: 230.470001
d: 30949.374000
Java also
provides a full range of built-in functions for mathematical calculation and
you can use them in very similar way you have used them in C programming.
Numbers in Python
Python is
little different from C and Java and categorize numbers in int, long,
float and complex. Here are some examples of numbers in Python:
int
|
long
|
float
|
complex
|
|
10
|
51924361L
|
0.0
|
3.14j
|
|
100
|
-0x19323L
|
15.20
|
45.j
|
|
-786
|
0122L
|
-21.9
|
9.322e-36j
|
|
080
|
0xDEFABCECBDAECBFBAEl
|
32.3+e18
|
.876j
|
|
-0490
|
535633629843L
|
-90.
|
-.6545+0J
|
|
-0x260
|
-052318172735L
|
-32.54e100
|
3e+26J
|
|
0x69
|
-4721885298529L
|
70.2-E12
|
4.53e-7j
|
|
Following is
the equivalent program written in Python:
s = 10
i = 1000
l = 1000000
f = 230.47
d = 30949.374
print "s: ", s
print "i: ", i
print "l: ", l
print "f: ", f
print "d: ", d
When above
program is executed, it produces the following result:
s: 10
i: 1000
l: 1000000
f: 230.47
d: 30949.374
Python also
provides a full range of built-in functions for mathematical calculation and
you can use them in very similar way you have used them in C programming.
No comments:
Post a Comment