Start New Discussion within our Web Development Community

Hi there,
I'm a complete novice on javascript and am trying to make a basic currency convertor as part of my college course.
I have the beginning sorted, but am struggling to get the code to output the answer.

Can any kind soul tell me where I'm going wrong?

// Aim; to imput an amount in £'s and output in $'s using an exchange rate of 1.78 //

var amountInPounds, amountInDollars, dollarRate;

document.write('Currency Conversion Application A' + '<BR><BR>');

dollarRate = 1.78;


amountInPounds = window.prompt('PLease enter your sterling amount' ,'');
amountinPounds = parsefloat(amountinPounds);
amountInDollars = amountinPounds * dollarRate;
amountinDollars = parsefloat(amountinDollars);
document.write('total is ' + amountinDollars + '<br>');

Any help gratefully appreciated!

Phil

var amountInPounds, amountInDollars, dollarRate;
amountinPounds = parsefloat(amountinPounds);
amountInDollars = amountinPounds * dollarRate;
amountinDollars = parsefloat(amountinDollars);
document.write('total is ' + amountinDollars + '<br>');

Hello Mr. Woo.

I would just like to bring to your attention the suspect:) lines of code above. (Very simple but effective logic by the way! :cool: ) Keep in mind that Javascript is case sensitive so parseFloat() and parsefloat() are two different animals.:) As is the case with 'amountinPounds' and 'amountInPounds'.

Here is the corrected code back-at-ya:

var amountInPounds, amountInDollars, dollarRate;

document.write('Currency Conversion Application A' + '<BR><BR>');

dollarRate = 1.78;
amountInPounds = window.prompt('PLease enter your sterling amount' ,'');
amountInPounds = parseFloat(amountInPounds);
amountInDollars = amountInPounds * dollarRate;
amountInDollars = parseFloat(amountInDollars);
document.write('total is ' + amountInDollars + '<br>');

Many thanks for the reply!
With your help I'm getting the hang of it slowly as well as trying to be more precise with the spelling etc

best wishes

Well I'm back again after hitting another stumbling block.
This time I'm trying to input 4 values which the program will display before outputting as a total.

So far I have managed to get it to prompt for & display the values, but instead of giving a total it displays each individual value.

I'm close, but can't see the error.......any idea's ??

<HTML>
<HEAD>
<TITLE>Electric Bills
</TITLE>
<SCRIPT >

/* Program to read in a known number of data items and store them in an array */

var paymentArray = new Array (4);
var total;

document.write('Array program to display a customers four quarterly bills to an Electricity company & show the total due');

total = 0

for (var quarter = 0; quarter < paymentArray.length; quarter = quarter + 1)
{
    paymentArray[quarter] = window.prompt('Enter payment value','')

}; 
document.write('<BR>' + '<BR>');
document.write('Confirmation of amounts payable' + '<BR>' + '<BR>');


for (var quarter = 0; quarter < paymentArray.length; quarter = quarter + 1)
{
    document.write(paymentArray[quarter] + '<BR>')

    total = total + paymentArray[quarter]
    total = parseFloat(total)    
}
document.write('total amount paid is ' + total + '<br>')

</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>

I'm close, but can't see the error.......any idea's ??

Boy do I know how you feel :!: You were very close! Remember this about Javascript code: the '+' operator acts as both an agent to add numbers and concatenate strings. ;) The latter, concatenation of strings, is what was happening in your code. Notice the two changes that I made to make it work:

/* Program to read in a known number of data items and store them in an array */

var paymentArray = new Array (4);
var total = new Number;

document.write('Array program to display a customers four quarterly bills to an Electricity company & show the total due');

total = 0

for (var quarter = 0; quarter < paymentArray.length; quarter = quarter + 1)
{
paymentArray[quarter] = window.prompt('Enter payment value','')

}; 
document.write('<BR>' + '<BR>');
document.write('Confirmation of amounts payable' + '<BR>' + '<BR>');


for (var quarter = 0; quarter < paymentArray.length; quarter = quarter + 1)
{
document.write(paymentArray[quarter] + '<BR>')

total = total + Number(paymentArray[quarter])
total = parseFloat(total) 
}
document.write('total amount paid is ' + total + '<br>')

You are definitely well on your way. :)

Many thanks.
It really is tricky, even when I copied the changes over I wrote 'number' with a small 'n' and it had a wobbly, I wish it wasn't so case sensitive!

I'm working on a Function Library now and some string things so watch this space....something tells me ....... 'I'll be back' :lol:

Well, as expected I'm back...the only surprise is it took me so long!

I'm trying to make a little program which takes a string, doubles any vowels, returning the string with all the vowels doubled in an alert box.
Sadly it has me baffled........

The program is supposed to make use of a function called 'doublevowels' that I made earlier (although I am rather dubious whether that is correct as well!) & imports it from a function library.

So here's where I'm at;

<HTML>
<HEAD>
<TITLE>vowels
</TITLE>
<SCRIPT SRC = "stringLibrary.js"> </SCRIPT>
<SCRIPT >


Function doublevowels(aString)
var answer;


answer = '';


for (var position = 0; position < aString.length; position = position +1)
{
(doublevowels('string goes here'))
}


return answer
window.confirm(+ answer + '<br>')



</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>

Any pointers about what else I need and where will be gratefully appreciated!

All sorted! :cheesy:

I'm glad you've done it!! Sorry I didn't have time to assist this time. :sad:

However, it seems as though you have graduated! :cool:

All sorted! :cheesy:

perhaps Mr Woo u would be so kind as to share as to how you got it sorted :)

wish i had thought to ask the answers to my open uni m150 tma in here

Well like me it feels a million times better to actually get it done by yourself plus tutors arent stupid I`m sure they are fully aware of forums like these so not worth the risk.
Interesting tho

This article has been dead for over six months. Start a new discussion instead.