Calc is arbitrary precision arithmetic system that uses a C-like language. It's useful as a calculator, an algorithm prototype, and as a mathematical research tool. More importantly, calc provides a machine-independent means of computation. Calc comes with a rich set of builtin mathematical and programmatic functions. License: GNU Lesser General Public License (LGPL) Changes:
The Jacobi built-in function was fixed: it returned 1 in some cases where it should have returned 0. An OpenBSD build target was added. Makefile compatibility fixes were made for old shells.
Hi,
First of all, thanks for all the awesome suggestions on this forum. This helps all the UNIX enthusiast like me.
Now, I had a similar requirement as mentioned in a very old post here:
Question about Perderabo's "Days Elapsed Between Two Dates"
But I am struggling what to change in the... (5 Replies)
Hi,
I need subtract two date values (which are in day of the year format) and the output would give the remaining days. using the command date +"%j" i would get today's 'day of the year' i.e.,
> date +"%j"
256
Next, i need to take input of a previous date in the format 09/05/2012 and then... (4 Replies)
Hello,
I am having hard time calculating the time differnce in the below sequence. I tried nested for loops but I can't get to work.
Algorithm:
find time difference between the first AVAIL and the next event just before AVAIL.
0 05/17/2010 09:33 AVAIL <-- 1
1 05/17/2010 09:32 UM ... (2 Replies)
Imagine that you play poker and the file 1.txt is your buy-in, and in 2.txt is your gains. I want to know the tournament that have more proffit and less proffit.
1.txt
aa:1000
bb:2000
cc:3000
dd:4000
ee:5000
2.txt
aa:0
bb:1000
cc:1500
dd:3000
ee:2000
Result: dd more profit; aa... (5 Replies)
In C that was easy with a for and if. Iam trying to learn a litle more in bash.
Example
Ronaldo:5800
Figo:4000
Rafael:2321
Kaka:1230
I want the max of the $2 and the output will be:
The max value is 5800 from Ronaldo.
How can i do this in shell?
Thanks for all, folks. (11 Replies)
I everybody!!
How can i use statvfs() to calculate disk usage and free disk space??
Im using this code:
/* Any file on the filesystem in question */
char *filename = "/home/nesto/test/test.cpp";
struct statvfs buf;
if (!statvfs(filename, &buf)) {
... (1 Reply)
Math::BaseCalc(3pm) User Contributed Perl Documentation Math::BaseCalc(3pm)NAME
Math::BaseCalc - Convert numbers between various bases
VERSION
version 1.016
SYNOPSIS
use Math::BaseCalc;
my $calc = new Math::BaseCalc(digits => [0,1]); #Binary
my $bin_string = $calc->to_base(465); # Convert 465 to binary
$calc->digits('oct'); # Octal
my $number = $calc->from_base('1574'); # Convert octal 1574 to decimal
DESCRIPTION
This module facilitates the conversion of numbers between various number bases. You may define your own digit sets, or use any of several
predefined digit sets.
The to_base() and from_base() methods convert between Perl numbers and strings which represent these numbers in other bases. For instance,
if you're using the binary digit set [0,1], $calc->to_base(5) will return the string "101". $calc->from_base("101") will return the number
5.
To convert between, say, base 7 and base 36, use the 2-step process of first converting to a Perl number, then to the desired base for the
result:
$calc7 = new Math::BaseCalc(digits=>[0..6]);
$calc36 = new Math::BaseCalc(digits=>[0..9,'a'..'z']);
$in_base_36 = $calc36->to_base( $calc7->from_base('3506') );
If you just need to handle regular octal & hexdecimal strings, you probably don't need this module. See the sprintf(), oct(), and hex()
Perl functions.
METHODS
o new Math::BaseCalc
o new Math::BaseCalc(digits=>...)
Create a new base calculator. You may specify the digit set to use, by either giving the digits in a list reference (in increasing
order, with the 'zero' character first in the list) or by specifying the name of one of the predefined digit sets (see the digit()
method below).
If your digit set includes the character "-", then a dash at the beginning of a number will no longer signify a negative number.
o $calc->to_base(NUMBER)
Converts a number to a string representing that number in the associated base.
If "NUMBER" is a "Math::BigInt" object, "to_base()" will still work fine and give you an exact result string.
o $calc->from_base(STRING)
Converts a string representing a number in the associated base to a Perl integer. The behavior when fed strings with characters not in
$calc's digit set is currently undefined.
If "STRING" converts to a number too large for perl's integer representation, beware that the result may be auto-converted to a
floating-point representation and thus only be an approximation.
o $calc->digits
o $calc->digits(...)
Get/set the current digit set of the calculator. With no arguments, simply returns a list of the characters that make up the current
digit set. To change the current digit set, pass a list reference containing the new digits, or the name of a predefined digit set.
Currently the predefined digit sets are:
bin => [0,1],
hex => [0..9,'a'..'f'],
HEX => [0..9,'A'..'F'],
oct => [0..7],
64 => ['A'..'Z','a'..'z',0..9,'+','/'],
62 => [0..9,'a'..'z','A'..'Z'],
Examples:
$calc->digits('bin');
$calc->digits([0..7]);
$calc->digits([qw(w a l d o)]);
If any of your "digits" has more than one character, the behavior is currently undefined.
QUESTIONS
The '64' digit set is meant to be useful for Base64 encoding. I took it from the MIME::Base64.pm module. Does it look right? It's sure
in a strange order.
AUTHOR
Ken Williams, ken@forum.swarthmore.edu
COPYRIGHT
This is free software in the colloquial nice-guy sense of the word. Copyright (c) 1999, Ken Williams. You may redistribute and/or modify
it under the same terms as Perl itself.
SEE ALSO perl(1).
perl v5.12.3 2011-05-16 Math::BaseCalc(3pm)