Hello and welcome to our community! Is this your first visit?
Enjoy an ad free experience by logging in. Not a member yet? Register.

1. ## Mosteller formula confusion

Im trying to figure out/understand about multiple RETURN functions. But, I cant execute my function.

Code:
```function SqFeetToSqMeters(sqFeet)
{
var sqMeters;
sqMeters = sqFeet/10.764;
return sqMeters;
}

function PoundsToKilograms(pounds)

{
var kg;
kg = pounds/2.205;
return kg;
}
//
function CentimetersToInches(cm)

{ var inches;
inches = cm / 2.54;
return inches; }

function HEIGHT(surface, weight)
{var surface = 'sqMeter';
var weight = 'kg';
height = Math.pow(surface, 2) * 3600) / weight);
return height;
}
function FINDHEIGHT()
{
var surface, weight, height;
surface= parseFloat(document.getElementById('SBox').value);
weight = parseFloat(document.getElementById('WBox').value);
height= Math.round(HEIGHT(surface,weight));
document.getElementById('HBox').value = height;
document.getElementById('outputDiv').innerHTML= str1.concat(height);

}
</script>
<body>
<h2>Using the Mosteller formula to calculate the height from the body Surface and Weight</h2>
<p>
surface: <input type="text" id="SBox" size=4 value=19.45> sq ft.<br>
weight: <input type="text" id="WBox" size=4 value=150> pounds<br>
height(calculated): <input type="text" id="HBox" size=4 value=0> inches<br>
<input type="button" value="calculate the height" onclick="FINDHEIGHT();">
</p>
<hr>
<div id="outputDiv"></div>
</body>
</html>
</html>```

• What is the question here?

This part of your code makes no sense at all:
Code:
```    var surface = ('sqMeter');
var weight = ('kg');
height = Math.round(surface * surface) * 3600) / weight);```
How can you multiply 'sqMeter' * 'sqMeter' and then divide by 'kg'???

• If you think you were magically converting surface from square feet to square meters, you weren't

All you were doing was assigning the *STRING* 'sqMeter' to the variable.

Just incidentally wiping out the value of surface that was passed into the function.

• the whole point is to find HEIGHT by the representing values of surface and height from being passed from (surface) sqFt to sqMeters and (weight) passed from lbs to kgs using the Height formula which will use the previous functions to calculate height into inches.

• Originally Posted by axel22
the whole point is to find HEIGHT by the representing values of surface and height from being passed from (surface) sqFt to sqMeters and (weight) passed from lbs to kgs using the Height formula which will use the previous functions to calculate height into inches.
Clear as mud! Can you explain further and/or give an example? And be clearer as to what your question actually is?

You do not call your functions function SqFeetToSqMeters(sqFeet)
and so on anywhere.

• Yes?

And you *HAVE* a function there that will convert square feet to square meters:
Code:
```function SqFeetToSqMeters(sqFeet)
{
var sqMeters;
sqMeters = sqFeet/10.764;
return sqMeters;
}```
But you never use it.

Instead, you just change surface from a number into a string.

• Most of the code looks right.

It's just these two lines that are total hash:
Code:
```    var surface = 'sqMeter';
var weight = 'kg';```
Code:
```    surface = someConversoinOf( surface );
weight = someConversionOf( weight );```
You get to figure out what someConversionOf needs to be.

Notice that I did *NOT* use var there. That *IS* important.

• I now find that the Mostella formula calculates body surface area from height and weight for medication doses. But the OP's script seems to calculate the subject's height from his weight and body surface area. That can't be right.

The formula is

BSA (m²) = ( [Height(cm) x Weight(kg) ]/ 3600 )œ e.g. BSA = SQRT( (cm*kg)/3600 )

or in inches and pounds: BSA (m²) = ( [Height(in) x Weight(lbs) ]/ 3131 )œ

Given that the data can be input as Metric or Imperial I don't see the point of converting the units.

Note. My doctor tells me that I am exactly the correct weight - for a man 2.4 metres tall.

• Originally Posted by Philip M
Note. My doctor tells me that I am exactly the correct weight - for a man 2.4 metres tall.
LOL! Boy, do I know that story! I'm not quite that bad, but close. (Would you believe we took a week long trip to Hawaii and I *lost* 8 pounds during the trip? And haven't gained it back. Woo hoo!)

(But I thought you were a doctor? Are you telling yourself that?)

• Originally Posted by Old Pedant
LOL! Boy, do I know that story! I'm not quite that bad, but close. (Would you believe we took a week long trip to Hawaii and I *lost* 8 pounds during the trip? And haven't gained it back. Woo hoo!)

(But I thought you were a doctor? Are you telling yourself that?)
What gave you that idea? My formal qualifications are in law and accountancy, but I claim expertise in logistics and (some) computing also.

• Huh...I thought I looked up your location with Google once upon a time and street view showed it to be a physicians office. Was over a year ago, so I don't remember the details or where I found the address. Likely was a bogus address and/or a shared office or some such?

• Originally Posted by Old Pedant
Huh...I thought I looked up your location with Google once upon a time and street view showed it to be a physicians office. Was over a year ago, so I don't remember the details or where I found the address. Likely was a bogus address and/or a shared office or some such?

You were thinking perhaps of

Kilmeny Group Medical Practice
Kilmeny Surgery
Ingrow
Keighley
BD21 1LA

That is not me!

• is that Math.pow() function even being used correctly?

• Originally Posted by axel22
is that Math.pow() function even being used correctly?
If you mean in this code:
Code:
` Math.pow(surface, 2)`
then sure. That's fine. (It's also slower than simply doing `surface * surface` but that's a detail.

• Philip: Yes! That's the one. Been so long ago I don't remember even where I got that from.

•

#### Posting Permissions

• You may not post new threads
• You may not post replies
• You may not post attachments
• You may not edit your posts
•