2010-11-12 5 views
0

J'ai fait une application simple de script qui accepte rayon comme entrée de l'utilisateur et calcule et affiche la zone de cercle en fonction des commentaires:Script simple ne fonctionne pas comme prévu

-- initializing radius variable to some text 
set radius to "Some text" 

repeat until class of radius is number 

-- asking user for radius 
display dialog "Enter radius: " default answer "" buttons {"Done"} default button 1 
set userInput to text returned of result 

-- try to check if user enters radius as number 
try 

-- converting input from user to number 
set radius to userInput as number 

-- if input is found as number then below code is executed 
-- obtaining radius from handler 
set circleArea to calculateCircleArea(radius) 

-- displaying radius and area of circle obtained to user 
display dialog "Circle area for radius: " & radius & " is: " & circleArea buttons {"OK"} default button 1 
end try 
end repeat 

-- handler definition 
on calculateCircleArea(parameterRadius) 
set areaOfCircle to pi * (parameterRadius^2) 
end calculateCircleArea 

Quand j'exécuté le script ci-dessus et sont entrées dans certains texte pour la première fois, il m'a à nouveau demandé d'entrer dans le rayon, cette fois j'ai entré un certain nombre et il a affiché la zone de cercle, mais il a de nouveau commencé à demander le rayon en entrée de l'utilisateur.

Quelqu'un peut-il me suggérer où je me trompe dans le script ci-dessus?

Merci,

Miraaj

Répondre

1
repeat until class of radius is integer or class of radius is real 
+0

qui a travaillé ... :) Thanx – Devarshi

Questions connexes