Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re: Calc::Euro (Re: The Euro)

by tstock (Curate)
on Jan 02, 2002 at 08:22 UTC ( [id://135613]=note: print w/replies, xml ) Need Help??


in reply to Calc::Euro (Re: The Euro)
in thread The Euro

for the sake of simplicity, how about adding a EUR => 1 in the hash and getting rid of the National vs Euro distinction :)

eurCalc($value, $from, $to)

Tiago

Replies are listed 'Best First'.
Re: Re: Calc::Euro (Re: The Euro)
by simon.proctor (Vicar) on Jan 02, 2002 at 14:29 UTC
    Well in the spirit of that request, heres an additional sub which you can add to the module. You must add the additional key value pair of 'EUR' => 1 to the rates hash or you'll have problems doing any euro conversions :)

    sub euroCalc { my ($self,$amount, $from,$to) = @_; croak("Invalid start currency") unless defined($rates{uc $from}); croak("Invalid target currency") unless defined($rates{uc $to}); # What was it in Euros # $amount = ($amount * $rates{$to}) / $rates{$from}; # Now convert to target currency # return $amount * $rates{$to}; # Or in one line return ($amount * $rates{$to}) / $rates{$from}; }


    And some test prints

    use strict; use Calc::Euro; my $eurocalc = Calc::Euro->new('NLG'); print $eurocalc->to_national(1), "\n"; # 2.20371 print $eurocalc->euroCalc($eurocalc->euroCalc(1,'NLG','EUR'),'EUR','NL +G'), "\n"; print $eurocalc->euroCalc(1,'NLG','BEF'), "\n"; print $eurocalc->euroCalc(1,'NLG','EUR'), "\n"; print $eurocalc->euroCalc(1,'EUR','NLG'), "\n";


    So you notice that you can go from one currency to Euros and then to your target currency. Might prove handy to someone.

    Have fun :)
      That'd be euro_calc, then ;) (perlstyle).
      Update (200201021252+0100) I like freestyle even better: $eurocalc->freestyle() :)

      BTW, I'd probably have used (from, to, amount) or auto-detect the order.

      2;0 juerd@ouranos:~$ perl -e'undef christmas' Segmentation fault 2;139 juerd@ouranos:~$

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://135613]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others contemplating the Monastery: (3)
As of 2024-04-23 06:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found