الدوال اشهر من نار على علم في عالم البرمجة جميعنا نعلم أهمية استخدامها وانها تختصر الوقت علينا في تكرار العمليات وتوفر الجهد .
أولا : طريقة كتابتها :-
تعريفها جدا بسيط نسمي الدالة ويفضل تسميتها كما نعلم جميعا باسم يمثلها أي يمثل الغرض الذي من اجله انشأتها ، :Unit هذا يعني نوع البيانات العائدة وهنا يقصد أنها لا تعود بشيء ومن الممكن أن لا نكتبها وهو سيعرف انها دالة لا تعيد قيمة ، ومن ثم نقوم بكتابة الأوامر التي اريدها بداخل الاقواس .
fun functionNAme( parameter ):Unit
{
return ...
}
ثانيا : أنواع الدوال :-
نمرر لها بيانات وتعود بقيمة |
fun maxNumber( number1:Int ,number2:Int):Int
{
if(number1<number2)
{
return number2
}
else {
return number1
}
}
|
نمرر لها بيانات ولا تعود بقيمة |
fun circleCirc(radius:Float):Unit
{
val bai=3.14
var circumference = bai *2 * radius
println("the circumference of circle is :" +circumference)
}
|
لا نمرر لها بيانات وتعود بقيمة |
fun minNumber( ):Int
{
var number1:Int = readLine()!!.toInt()
var number2:Int = readLine()!!.toInt()
if(number1<number2)
{
return number1
}
else {
return number2
}
}
|
لا نمرر لها بيانات ولا تعود بقيمة |
fun welcome(){
return println("welcome world")
}
|
ثالثاً : الاستدعاء :-
حسناً نحن عرفنا الأن الدوال وطريقة كتابتها ، تبقى علينا معرفة طريقة استدعائها وهي جداً بسيطة كالتالي :
نقوم بكتابة اسم الدالة وان كانت تمرر لها قيم فلا ننسى كتابة هذه القيم ، مثال :
دالة تحسب مساحة المربع :
fun distance( a :Int ):Int{
return a*a
}
دالة تحسب محيط المربع :
fun circumference(a:Int):Int{
return a*4
}
في الدالة الرئيسية :
fun main(args:Array<String>){
println("enter the length side for square :")
var len:Int= readLine()!!.toInt()
println("the distance is :"+distance(len))
println("the circumference is :"+circumference(len))
}
ناتج التنفيذ :-
enter the length side for square :
3
the distance is :9
the circumference is :12