image001

صفحة البيت  |                îñ èìôåï 04 – 6046227 | îñ' ô÷ñ 04-8303539

 

 

  

 

 

 جافا سكريبت - JavaScript 

موقع كتابة الكود repl.it  | تحميل Brackets| تحميل Notebad++    

  

 

 

( )  الدوال - functions

 

 

 

  

 

إيجاد قواسم العدد   (îçì÷éí ùì îñôø)

 

قواسم العدد هي مجموعة جميع الأعداد التي ينقسم عليها هذا العدد بدون باقي.

 

مثال: قواسم العدد 12 هي:

1, 2, 3, 4, 6, 12

 

·       كل عدد ينقسم على نفسه وعلى 1

·       من الرياضيات نعرف انه لا يوجد قاسم للعدد بعد نصفة

وبالرموز: إذا كان n العدد الذي نبحث عن قواسمة، فلا يوجد قاسم بعد n/2 .

وفعلا حسب المثال، للعدد 12 لا يوجد قاسم بعد 6 (12/2=6) (عدى عن العدد نفسه طبعاً)

 

أكتب برنامج يقرأ عدد صحيح موجب أكبر من 1، على البرنامج أن يطبع جميع قواسمة (مع 1 والعدد نفسه)

 

 

الحل:

 

قواسم العدد 18:

1

2

3

6

9

18

<script>

function fact(n) {

    for (i=1; i <= n/2; i=i+1) {

 

        if (n % i  == 0)

            document.write(i, "<br>");

    }

    document.write(n, "<br>");

}

 

num = parseInt(prompt('type a number= '))

 

fact(num)   //استدعاء الدالة - نناديها

</script>

 

لقد قمنا بتحسين أداء البرنامج من خلال تغيير الحلقة.

بدلاً من تشغيل الحلقة حتى العدد يمكن تشغيل الحلقة حتى نصف العدد.

وذلك لانه أكبر قاسم ممكن أن يكون للعدد هو نصفه.

 

 

 

 

 

 

 

تمرين – عدد متكامل (îñôø îåùìí àå îñôø îùåëìì)

 

أكتب برنامج يقرأ عدد صحيح موجب أكبر من 1،

البرنامج يفحص إذا كان هذا العدد هو عددا متكاملاً.

عدد متكامل هو عدد طبيعي الذي يساوي لحاصل جمع جميع قواسمه ما عدى العدد نفسه.

 

 

العدد المتكامل الأول هو 6 لأن  1 + 2 + 3 = 6

وبعده يأتي 28 لأن 1 + 2 + 4 + 7 + 14 = 28

وبعده  496 و- 8128.

 

الحل:

بدون دالة:

<script>

var sum =  0 , i;

num = parseInt(prompt("num = "))

for (i =1; i <= num/2; i++) {

 

  if (num % i == 0) {

 

    sum += i    

  }

}

 

if (sum == num) {

    document.write(num," is perfect number")

}

else{

    document.write(num," is not perfect number")

}

</script> 

 

حل السؤال باستعمال دالة

 

<script> 

function perfect(n) {

    var sum =  0 , i;

    var ok = false ;

    for (i= 1; i<= n/2; i++) {

 

        if (n % i == 0) {

 

            sum += i      // sum = sum + i

        }

    }

 

    if (sum == n) {

      ok = true;

    }

    return ok;

}

 

num = parseInt(prompt("num = "))

if (perfect(num) == true) {

    document.write(num," is perfect number")

}

else {

    document.write(num," is not perfect number")

}

</script> 

 

 

 

 

 

 

 

 

تمرين  -  العدد الأولي (îñôø øàùåðé)

 

تعريف: الأعداد الطبيعية هي الأعداد الصحيحة الموجبة.

 

العدد الأولي هو عدد طبيعي أكبر من 1، لا يقبل القسمة إلا على نفسه وعلى 1 فقط.

(له قاسمان فقط نفسه والعدد 1).

من هنا العدد الأولي لا يمكن إظهاره على أنه ضرب عددين طبيعيين أصغر منه.

 

كل عدد طبيعي أكبر من 1 وغير أولي نقول انه قابل للتحليل إلى عوامل (îñôø ôøé÷).

 

مثال:

7 هو عدد أولي لأنه لا يقبل القسمة إلا على 1 وعلى 7،

بينما 6 ليس عددا اولياً، لأنه قابل للتحليل، قابل للقسمة على 1، وعلى 2 وعلى 3 وعلى 6.

 

العدد 1 لا يعتبر عدد أولى وأيضا ليس قابل للتحليل إلى عوامل (îñôø ôøé÷).

العدد 2 هو العدد الأولي الوحيد الذي يكوّن زوجياً (جميع الأعداد الأولية فردية ما عدى 2)

 

مجموعة الأعداد الأولية هي مجموعة غير منتهية (÷áåöä àéðñåôéú).

 

 

 

أكتب برنامج يقرأ عدد صحيح موجب أكبر من 1،

البرنامج يفحص إذا كان هذا العدد هو عددا أولياً أم لا.

إذا كان عدد أولي يطبع prime وإلا يطبع not prime

 

 

لأجل تحديد هل العدد أولي أم لا؟ نقوم بالبحث عن قاسم له بين 2 و- نصفه.

إذا لم نجد قاسم له، عندها يكون العدد أولي

 

حل السؤال باستعمال دالة

 

<script>

function prime (n) {

    var ok = true ;

 

    for (i=2; i <= n/2; i++) {

 

        if (n % i == 0) {

 

          ok = false;

        }

    }

    return ok;

}

 

num = parseInt(prompt("num = "))

if (prime(num) == true) {

    document.write(num," is prime number")

}

else {

    document.write(num," is not prime number")

}

</script> 

 

 

 

 

 

 

 

 

عددين صديقين – (îñôøéí éãéãéí)

 

في الرياضيات، زوج أعداد يعتبران صديقين إذا كان كل واحد منهما مساوي لحاصل جمع قواسم العدد الآخر (بحيث بين القواسم لا نحسب العدد نفسه)

أصغر زوج لأعداد صديقة هم الأعداد 220, 284

قواسم العدد 220 هي:

      1, 2, 4, 5, 10, 11, 20, 22, 44, 55 و- 110 وحاصل جمعهم هو 284.

قواسم العدد 284 هي:

      1, 2, 4, 71 و- 142, وحاصل جمعهم هو 220.

 

أكتب برنامج يقرأ عددين طبيعيين، ثم يفحص ويعلن إذا كان العددين صديقين.

 

 

<script>

function sum_fact(n) {

    var sum = 0 ;

 

    for (i=1 ; i <= n/2 ; i++) {

 

        if (n % i == 0) {

 

            sum += i ;

        }

    }

    return sum

}

 

n1 = parseInt(prompt("num1 = "))

 

n2 = parseInt(prompt("num2 = "))

 

if ((sum_fact(n1) == n2) && (sum_fact(n2) == n1)) {

  document.write(n1,' ',n2," are friends number")

}

else {

    document.write(n1,' ',n2," are not friends number")

}

</script>

 

 

 

 

 

 

 

 

 

تمرين  -  مضروب العدد – n! (òöøú ùì îñôø)

 

مضروب العدد n ، يرمز له بـ n! ، وهو

n! = 1·2·3·4· ….. · (n-1) · n

( أ )

أكتب عملية (دالة) باسم fact()، التي تستقبل عدد صحيح موجب أكبر من 1،  ثم تحسب حاصل ضرب الأعداد من 1 وحتى هذا العدد.

العملية تقوم بأرجاع القيمة التي حسبتها .

(ب)

اكتب برنامج يقرأ عدد صحيح أكبر من 1، البرنامج  يستدعى العملية fact() التي كتبتها ويقوم بحساب مضروب هذا العدد ، n!

مثال:

5! = 1·2·3·4·5= 120

1! = 1

0! = 1  (هكذا تم تعريفة)

 

 

المخرج:

num = 5

120

 

<script>

    function fact(n) {

        var p =  1 ;

 

        for (x=1; x <= n+1; x++) {

 

            p = p * x

        }

        return  p

    }

    num = parseInt(prompt("num="))

    document.write(fact(num))

</script> 

 

 

 

 

 

 

 

تمرين - معرفة العدد الزوجي (îñôø æåâé)

 

(أ)

أكتب عملية (دالة) التي تستقبل عدد صحيح موجب أكبر من 1، ثم تفحص إذا كان العدد هو عددا زوجيا.

العملية تقوم بأرجاع القيمة True إذا كان زوجي وإلا ترجع False .

(ب)

اكتب برنامج يقرأ عدد صحيح أكبر من 1،
تم يستدعى العملية التي كتبتها ويفحص إذا كان العدد زوجي. إذا كان زوجي يطبع
even وإذا لا يطبع odd (فردي).

 

الحل::

المخرج:

num = 5

odd

------------------
num = 8

even

 

 

 

<script>

    function even(n) {

        var ok = false

 

        if (n % 2 == 0) {

 

            ok = true

        }

        return ok

    }

num = parseInt(prompt("num="))

 

if (even(num) == true) {

    document.write(num," is even")

}

else {

    document.write(num, " is odd")

}

</script>

 

كتب كل من  رامي وسعاد العملية بشكل مختلف، أكمل الأماكن الناقصة، وافحص صحة الحل:

اقتراح رامي

اقتراح سعاد

function even(n) {

    if (n % 2 == 0) {

        ok = true 

    }

    else {

        ok = false

    }

    return ok

}

function even(n) {

    if (n % 2 == 0) {

        return true 

    }

    else {

    return false

    }

}

 

 

 

 

 

 

 

الوظيفة البيتية

 

 

 

 

 

 

 

 

https://sites.google.com/site/koftanhatav/_/rsrc/1424517650012/home/math1.png?height=241&width=320    

w4

 

  

 

 

مدرسة قفطان حلبي الإعداديةدالية الكرمل - Copywrite – 2019