تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الفصل (13):- العمليات الرياضية في الدوت نيت بإستخدام الفئة System.Math
#1
السلام عليكم ورحمة الله وبركاته :_

درسنا اليوم عن كيفية التعامل مع الدوال الرياضية من خلال الفئة :_ system.math

أولاً وقبل البداية يجب علينا ان نستورد الفئة math

من خلال الكود التالي :-
كود :
[align=left] Imports System.Math  
[/align]





=====================
===============
========
====
==

من اهم الاستخدامات لهذا النطاق في الدوت نيت :-
  • معرفة جتا الزاوية من خلال sin
  • معرفة ظل الزاوية من خلال tan
  • معرفة جيب الزاوية من خلال cos


ويوجد ايضاً شي مهم وهو للمدرسة
  • معرفة الجذر التربيعي من خلال sqrt
  • القيمة المطلقة لعدد ما من خلال abs
  • معرفة العدد اذا اكبر من صفر او اصغر من خلال sign


وهناك ايضاً عمليات المقارنة مثل :_
  • اظهار اكبر قيمة من معامليين رئيسيين من خلال max
  • اظهار اقل قيمة من معامليين رئيسيين من خلال min
  • لتقريب العدد إلى الفاصلة من خلال round
  • لاعطاء رقم صحيح غير قابل لوضع الفاصلة من خلال fix


نبدأ اولاً بتعريف متغير لاستخدامه في البرنامج كما تعلمنا هنا ...
---------------------------------------------------------------------
بداية سنقوم بتعريف متغيرات تحمل قيمة كل انواع المتغيرات لاستخدامه مع الجميع

بهذا الكود :_
كود :
[align=left] Dim x, y ,zAs Object
        x = 12
        y = 12.12
z = 16
[/align]

=================
هذا الكود الخاص لمعرفة ظل الزاوية من خلاله
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]Tan[/color][color=#007700]([/color][color=#0000BB]x[/color][COLOR=#007700]))  
[/COLOR][/COLOR][/align]


ونستطيع ايضاً كتابته بهذا الشكل
كود :
                     [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]System[/color][color=#007700].[/color][color=#0000BB]Math[/color][color=#007700].[/color][color=#0000BB]Tan[/color][color=#007700]([/color][color=#0000BB]x[/color][COLOR=#007700]))

[/COLOR][/COLOR][/align]



وكلاهما سيعطي نفس النتيجة
==================
هذا الكود الخاص بجتا الزاوية
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]Sin[/color][color=#007700]([/color][color=#0000BB]x[/color][color=#007700]))[/color][/COLOR]
[/align]

وايضاً يمكننا استخدامه بالطريقة الطويلة كما سبف ذكره مع ظل الزاوية
=================
ها الكود لمعرفة بجيب الزاوية
كود :
[align=left]
            [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]Cos[/color][color=#007700]([/color][color=#0000BB]x[/color][COLOR=#007700]))
[/COLOR][/COLOR][/align]
[COLOR=#000000][COLOR=#007700]
[/COLOR][/COLOR]

ويمكننا ايضاً استخدام هذا الكود لمعرفة الجذر التربيعي لرقم ما :-
كود :
[align=left]
            [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]Sqrt[/color][color=#007700]([/color][color=#0000BB]z[/color][COLOR=#007700]))  

[/COLOR][/COLOR][COLOR=#000000][COLOR=#007700]

[/COLOR][/COLOR][/align]

لاظهار القيمة المطلقة لعدد ما

ماهي القيمة المطلقة :_ القيمة المطلقة هي القيمة التي يتحول فيها اي عدد سالب الاشارة إلى موجب الاشارة

لاحظ الكود التالي :-
كود :
[align=left]                       [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]System[/color][color=#007700].[/color][color=#0000BB]Math[/color][color=#007700].[/color][color=#0000BB]Abs[/color][color=#007700](-[/color][color=#0000BB]10[/color][COLOR=#007700]))  
[/COLOR][/COLOR][/align]

ولاحظ انك يمكنك استخدامه بالطريقة المختصرة

كالتالي :_
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]msgbox [/color][color=#007700]([/color][color=#0000BB]abs[/color][color=#007700](-[/color][color=#0000BB]100[/color][COLOR=#007700]))  
[/COLOR][/COLOR][/align]


الدالة sign ترجع قيمة (-1) اذا كان الرقم الذي بداخلها صفر او اقل
وترجع القيمة (+1) اذا كان الرقم الذي بداخلها اكبر من صفر . Smile

ويمكننا استخدامها باطريقة التالية :-
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]Sign[/color][color=#007700](+[/color][color=#0000BB]10[/color][color=#007700]))  [/color][/COLOR]
[/align]

هنا سيتم ارجاع قيمة ( +1 ) لان الرقم الذي بداخلها اكبر من صفر

اما هنا
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]Sign[/color][color=#007700](-[/color][color=#0000BB]10[/color][COLOR=#007700]))  
[/COLOR][/COLOR][/align]

هنا سيتم ارجاع قيمة ( -1 ) لان الرقم الذي بداخلها اصغر من صفر

-------------------------------------------------------------------

ومن خلال هذا الكود الصغير نستطيع حساب اي الرقميين السابقيين اكبر
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]System[/color][color=#007700].[/color][color=#0000BB]Math[/color][color=#007700].[/color][color=#0000BB]Max[/color][color=#007700]([/color][color=#0000BB]12[/color][color=#007700], [/color][color=#0000BB]14[/color][COLOR=#007700]))  
[/COLOR][/COLOR][/align]

طبعاً سيعطي في الرسالة الرقم 14 لا نه اكبر من 12 Big Grin

وفي الكود التالي نستطيع حساب اي الرقميين السابقيين اصغر
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]System[/color][color=#007700].[/color][color=#0000BB]Math[/color][color=#007700].[/color][color=#0000BB]Min[/color][color=#007700]([/color][color=#0000BB]10[/color][color=#007700], [/color][color=#0000BB]9[/color][COLOR=#007700]))  
[/COLOR][/COLOR][/align]


سيتم ارجاع الرقم 9 لانه اصغر من ال 10
-----------------------------------------------------------------------

تقريبا العدد إلى فاصلة من خلال الكود التالي

مثلاً اذا احببنا ان نأخد اول رقميين بعد الفاصلة في الرقم المدخل
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]System[/color][color=#007700].[/color][color=#0000BB]Math[/color][color=#007700].[/color][color=#0000BB]Round[/color][color=#007700]([/color][color=#0000BB]12.12345[/color][color=#007700], [/color][color=#0000BB]2[/color][COLOR=#007700]))  
[/COLOR][/COLOR][/align]


في الكود التالي سوف يدخل الرقم (12.12345) في الذاكرة ويختار اول رقميين بعد الفاصلة

يعني سوف يكون المخرج الرقم التالي (12.12)

واذا احببت ان تاخد اول 3 ارقام بعد الفاصلة تكتب 3 عوضاً عن 2 وهكذا

------------------------------

اذا احببت ان تعطي ناتج بدون كسور واعشار زائدة اخر الرقم

ابسط طريقة هي استخدام الدالة fix

وبعد ان عرفنا في الاعلى المتغير المتغير y على ان قيمته تساوي 12.12

نسعمل الان على اخراج المتغير Y بدون الرقم الذي بعد الفاصلة

اي اني اريد الرقم رقم صحيح

نستخدم الكود التالي :-
كود :
[align=left]             [color=#000000] [COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]Fix[/color][color=#007700]([/color][color=#0000BB]y[/color][COLOR=#007700]))  
[/COLOR][/COLOR][/align]

ستجد ان المخرج عندك سيكون رقم (12)

وهناك اسهل طريقة لمنع المستخدم من ادخال الفاصلة في صندوق النص

من خلال الكود التالي

كود :
[align=left][color=#000000][COLOR=#0000BB]****Box1[/color][color=#007700].[/color][color=#0000BB]SelectionStart [/color][color=#007700]= [/color][color=#0000BB]Len[/color][color=#007700]([/color][color=#0000BB]****Box1[/color][color=#007700].[/color][color=#0000BB]****[/color][COLOR=#007700])
[/COLOR][color=#0000BB]****Box1[/color][color=#007700].[/color][color=#0000BB]**** [/color][color=#007700]= [/color][color=#0000BB]Fix[/color][color=#007700]([/color][color=#0000BB]****Box1[/color][color=#007700].[/color][color=#0000BB]****[/color][COLOR=#007700])
[/COLOR][color=#0000BB]****Box1[/color][color=#007700].[/color][color=#0000BB]SelectionStart [/color][color=#007700]= [/color][color=#0000BB]Len[/color][color=#007700]([/color][color=#0000BB]****Box1[/color][color=#007700].[/color][color=#0000BB]****[/color][color=#007700])[/color][/COLOR][color=#000000][COLOR=#007700][COLOR=Red][/color]
[/COLOR][/COLOR][/align]

==========
========
=====
===
=

في النهاية ارجوا ان يكون الدرس في غاية السهولة

[align=center]
وانتظرونا في الدرس القادم ان شاء الله

تقبلوا تحياتنا :_

Lo2i و Mohammed Asaad

الرد }}}
تم الشكر بواسطة:
#2
للفائدة :
اسألة تخص الدرس الحالي وتم الاجابة عنها من الاخوان

Lo2i و Mohammed Asaad

================================

س 1 :
إقتباس :هيه Len وظيفتها إيه؟

ج 1 :
تستخدم الدالة len لحساب عدد الحروف في السلسة النصية ((البايتات))

فمثلاً عندك ****box وتريدي ان تعرفي عدد الحروف المكتوبة بداخله من خلال الدالة LEN

ضعي هذا الكود في الزر لمعرفة عدد الحروف المكتوبة في التيكست

كود :
[SIZE=4][FONT=Tahoma][color=#000000][COLOR=#0000BB]MsgBox[/color][color=#007700]([/color][color=#0000BB]Len[/color][color=#007700]([/color][color=#0000BB]****Box1[/color][color=#007700].[/color][color=#0000BB]****[/color][color=#007700]))[/color][/COLOR][/FONT][/SIZE][SIZE=4][FONT=Tahoma]
[/FONT][/SIZE]

هذا هو عمل الاداة

وعلى فكرة يوجد ايضاً دالة شبيها لها وتقوم بعمل تأتي لك بحجم ملف في الكمبيوتر

وهي دالة FILELEN


س 2 :
إقتباس :ممكن تشرحلى آخر كود عشان مش فاهماه
كود :
[color=#000000][COLOR=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]selectionstart [/color][color=#007700]= [/color][color=#0000BB]len[/color][color=#007700]([/color][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]****[/color][COLOR=#007700])
[/COLOR][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]**** [/color][color=#007700]= [/color][color=#0000BB]fix[/color][color=#007700]([/color][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]****[/color][COLOR=#007700])
[/COLOR][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]selectionstart [/color][color=#007700]= [/color][color=#0000BB]len[/color][color=#007700]([/color][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]****[/color][color=#007700])[/color][/COLOR]

ج 2 :
في السطر الاول :- تحديد الكروسر هو المكان التي محدد عليه في التيكست اي اننا نكتب في المكان فينزل الكلام فيه المكان المحدد يعني مثلاً عندنا جملة ((بسم الله الرحمن الرحيم)) ولنفرض ان ال selection start لها هي بعد كلمة الرحمن يعني اذا قمنا باضافة الكلام سينزل بعد كلمة الرحمن

نقول في السطر الاول اجعل التركيز على النص في = حجم النص يعني مثلاً حجم النص 30 حرف لذلك يقوم باعطاء الكروسر والتركيز على التيكست بعد ال 30 مجال او سعة في التيكست
والسطر الثاني فيه دالة fix ودالة fix تم شرحها في الدرس الاصلي .
والسطر الثالث هو نفسه السطر الاول ..
انت جرب ضع هذا الكود في برنامجك وشوف عمله كيف !!


س 2-2 :
إقتباس :طب ملهوش لازمة السطر التالت حطه ليه؟
وجربت من غيره ونفع

ج 2-2 :
بعرف بس الكود الثالث يعني انا اعتبرته بيعمل تحديث ليس اكثر تحديث لمكان الكروسر Smile

س 3 :
إقتباس :بالنسبة لدوال الجيب وجتا والظل
فإن البرنامج يعطيها بالصيغة الدائرية كيف نجعلها بضيغة أخرى ؟

ج 3 :
ان كنت تقصد ادخال الزاوية بالصيغة الستينية فعليك تحويل الزاوية الممررة للدالة من ستينية الى دائية تضربها بالثابت Math.PI ثم تقسم على 180
بالتوفيق Smile

س 4 :
إقتباس :انا عندي استفسار بالنسبه إلى هذا الكود
كود :
[color=#000000][COLOR=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]selectionstart [/color][color=#007700]= [/color][color=#0000BB]len[/color][color=#007700]([/color][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]****[/color][COLOR=#007700])
[/COLOR][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]**** [/color][color=#007700]= [/color][color=#0000BB]fix[/color][color=#007700]([/color][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]****[/color][COLOR=#007700])
[/COLOR][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]selectionstart [/color][color=#007700]= [/color][color=#0000BB]len[/color][color=#007700]([/color][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]****[/color][color=#007700])[/color][/COLOR]
انا فتحت برنامج الفجوال بيسك وفتح ******s application
وضعت ****box1 في التصمم وبعدين ضغط على الفورم نفسها وكتبت نفس هذا الكوود
طيب ابي اعرف كيف لو كتبت نص ويظهر لي من خلال خاصيه len عدد الاحرف؟؟

ج 4 :
لحل مشكلتك اضيفي label و ****box1
واضغطي على ال ****box وفي حدث ال ****box1_****changed
اكتبي هذا الكود

كود :
[b][FONT=tahoma][SIZE=3][color=navy][COLOR=#000000][COLOR=#0000BB]label1[/color][color=#007700].[/color][color=#0000BB]****[/color][color=#007700]=[/color][color=#0000BB]len[/color][color=#007700]([/color][color=#0000BB]****box1[/color][color=#007700].[/color][color=#0000BB]****[/color][color=#007700])[/color][/COLOR][/COLOR][/SIZE][/FONT][/b]
الرد }}}
تم الشكر بواسطة:
#3
بارك الله فيك اخي على المعلومات الممتازة
ان شاء الله في ميزان حسناتكم
واشكرك على نقل الاسئلة ايضا
ان شاء الله ربي يجزيكم كل خير
الرد }}}
تم الشكر بواسطة:
#4
بارك الله فيك
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الفصل(8): الدوال والاجراءات B3dak Hbebe 3 19,683 15-08-18, 09:20 AM
آخر رد: nagoma
  الفصل(9):مدخل الى الفئاتClasses - الجزء الأول B3dak Hbebe 5 4,333 30-05-17, 01:09 PM
آخر رد: ali hussein
  الفصل(5):صنع القرار...الجزء الأول-الجمل الشرطية Omar Mekkawy 4 4,168 10-08-13, 05:39 PM
آخر رد: Omar Mekkawy
  الفصل(3): التركيبات أنواعها واستخداماتها Omar Mekkawy 4 4,156 10-08-13, 05:32 PM
آخر رد: Omar Mekkawy
  الفصل (1) : الفيجوال بيسك دوت نت (لمحة تعريفية) Omar Mekkawy 2 3,500 27-07-13, 02:39 PM
آخر رد: green.grass52
  الفصل (0) : دورة تعلم معنا فيجوال بيسك دوت نيت Omar Mekkawy 7 4,826 18-07-13, 06:29 PM
آخر رد: el@nsary
  الفصل(16): مدخل لمسارات التنفيذ Threading B3dak Hbebe 3 3,785 27-04-13, 10:58 AM
آخر رد: خليل اسماعيل
  الفصل(15): الفئتان Stack و Queue B3dak Hbebe 2 3,228 27-04-13, 09:20 AM
آخر رد: خليل اسماعيل
  الفصل(12): Oop بالتفصيل...الجزء الثاني B3dak Hbebe 3 3,909 27-04-13, 09:16 AM
آخر رد: خليل اسماعيل
  الفصل (11) :oop بالتفصيل ..الجزء الاول Easy4ever 3 3,569 27-04-13, 09:08 AM
آخر رد: خليل اسماعيل

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم