411 REFERENCE · Wikibooks
AppleScript Programming/Sample Programs/Converter for temperatures
Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.
Simple script that converts temperatures from Celsius to Fahrenheit and back.
Edited by Smiler121: Now it doesn't crash when letters and symbols are accidentally entered
repeat
--Show a dialog asking for input
set asktemp to display dialog "Enter a temperature and choose the correct scale:" default answer "" buttons {"Fahrenheit", "Celsius", "Kelvin"}
try
--Try to set the input as number
set theOrigTemp to (text returned of asktemp) as number
set theScale to button returned of asktemp
exit repeat
--If it fails
on error
display dialog "You must enter a number!" buttons {"OK"} default button 1 with icon caution
end try
end repeat
set theOrigTemp to setValue(theOrigTemp, theScale)
--Display another dialog, with 2 buttons, one for Celsius, one for Fahrenheit
display dialog ("You've entered " & (theOrigTemp as number) & " degrees " & theScale & ". Pick a scale to convert to:") buttons {"Fahrenheit", "Celsius", "Kelvin"} default button 2
set theNewScale to button returned of result as string
--convert the temperature
set theConvertedTemp to (round ((setValue(theOrigTemp, theNewScale) as number) * 10)) / 10
--Display a dialog with the answer
display dialog "The temperature in degrees " & theNewScale & " is " & (theConvertedTemp as number) buttons {"OK"}
on setValue(t, s)
if s is "Fahrenheit" then
return t as degrees Fahrenheit
else if s is "Celsius" then
return t as degrees Celsius
else if s is "Kelvin" then
return t as degrees Kelvin
end if
end setValue
Letter Replacer Run QuickTime in full screen