نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

وحدات التحكّم (Controllers) في Laravel

مقدمة بدلًا من تعريف كامل منطق معالجة طلباتك (request handling logic) على أنّها نطاقات مغلقة (‎(Closures في ملفّات المسارات، قد ترغب في تنظيم هذا السلوك (behavior) باستخدام أصناف ووحدات التحكّم. تستطيع وحدات التحكّم جمع منطق معالجة الطلبات ذي الصلة في صنف واحد. تخزّن وحدات التحكّم في المجلّد app/Http/Controllers. وحدات التحكّم الأساسية تعريف وحدات التحكّم تجد أدناه مثالًا عن وحدة تحكّم بسيطة. لاحظ أن وحدة التحكّم تُوسّع صنف وحدة التحكّم الأساسية المُحتواة في Laravel. يوفّر الصنف الأساسي عددًا من التوابع المفيدة ...

الجدول ASCII في أردوينو

يرجع الترميز ASCII (اختصارٌ إلى American Standard Code for Information Interchange) إلى ستينيات القرن الماضي، وكان يُعدُّ الطريقة القياسية المتبعة آنذاك (والتي لا تزال مستعملة إلى يومنا هذا) في ترميز النصوص عدديًّا. انتبه إلى أنَّ المحارف 32 الأولى من هذا الجدول هي محارف غير مطبوعة (non-printing characters)، وتدعى غالبًا محارف التحكم (control characters). القيمة العشرية القيمة الست عشرية المحرف   القيمة العشرية القيمة الست عشرية المحرف القيمة العشرية القيمة الست عشرية المحرف 0 00 NUL (null) 42 2A * 85 ...

التحكم بالتدفق (Control Flow) في Kotlin

كما في أيّة لغة برمجة فإن لغة Kotlin تحتوي على تعابير للتحكم بالتدفق، وهي: تعبير if، وتعبير when، وحلقة for، وحلقة while. وتدعم كذلك الكلمتين المفتاحيّتَين continue و break المستخدَمتَين في الحلقات (راجع أوامر الرجوع والقفز returns and jump). تعبير if يُعدُّ الشرط if في لغة Kotlin تعبيرًا يعيد قيمة، وبالتالي لا حاجة للصيغة condition ? then : else لأن تعبير if يقوم بهذا الدور كما في الشيفرة الآتية: // الاستخدام الاعتيادي var max = a if (a < b) max = b // ...

إزالة رايات التحكم (Remove Control Flag)

المشكلة لديك متغيرات منطقية تعمل كرايات تحكم لتعبيرات منطقية متعددة. الحل استخدم الكلمات المفتاحية break و continue و return بدلًا من هذه المتغيرات. لم إعادة التصميم؟ تعود رايات التحكم إلى الأيام الخوالي، عندما كان يُتاح دائمًا للمبرمج "الأصيل" نقطة إدخال واحدة للدوال (سطر تعريف الدالة) ونقطة خروج واحدة (في نهاية الدالة). لكن هذا النمط المتشدد عفا عليه الزمن في لغات البرمجة الحديثة، إذ أصبح لدينا عوامل خاصة لتعديل تدفق التحكم في الحلقات وغيرها من التركيبات المُعقدة مثل: break: إيقاف الحلقة. continue: ...

التعبير if الشرطي في أردوينو

يتحقَّق التعبير if الشرطي من شرط معيَّن وينفِّذ الكتلة البرمجية المكتوبة ضمنه إن كان محقَّقًا (أي كانت قيمته true). البنية العامة if (condition) { // الكتلة البرمجية المراد تنفيذها عند تحقق الشرط } إنَّ الشرط condition هو تعبيرٌ منطقيٌّ أي قيمته إمَّا true أو false. أمثلة مثالٌ على استعمال التعبير if الشرطي بصيغ متعددة: if (x > 120) digitalWrite(LEDpin, HIGH); if (x > 120) digitalWrite(LEDpin, HIGH); if (x > 120){ digitalWrite(LEDpin, HIGH); } if (x > 120){ digitalWrite(LEDpin1, HIGH); digitalWrite(LEDpin2, HIGH); } ملاحظات وتحذيرات قد ...

الحلقة for التكرارية في أردوينو

تُستعمَل الحلقة for لتكرار كتلة برمجية معينة من الشيفرة عددًا محدَّدًا من المرات. يُستعمَل في هذه الحلقة عادةً عدادٌ لتتبع عدد مرات تكرار الشيفرة ومقاطعتها عند الوصول إلى عدد محدَّد. يمكن استعمال الحلقة for مع أية عملية تكرارٍ، وتُستعمَل بكثرة مع المصفوفات لتنفيذ عملية معينة على عناصرها التي قد تكون بيانات عادية أو أرجل معينة. البنية العامة for (خطوة ;الشرط ;التهيئة الأولية) { // الكتلة البرمجية المراد تكرارها; } تنفَّذ عملية التهيئة الأولية مرةً واحدةً فقط في بداية تنفيذ الحلقة. يُتحقَّق من الشرط ...

الدالة isSpace()‎ في أردوينو

تتحقَّق الدالة isSpace()‎ إن كان المحرف المُمرَّر إليها فراغًا (space). البنية العامة isSpace(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar فراغًا. أمثلة مثالٌ على استعمال الدالة isSpace()‎: if (isSpace(this)) // فراغًا this التحقق إن كان المتغير { Serial.println("المحرف هو فراغ"); } else { Serial.println("ليس المحرف فراغًا"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. الدالة isAlphaNumeric()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا أو عددًا. الدالة isAscii()‎ : تتحقَّق ...

الدالة isDigit()‎ في أردوينو

تتحقَّق الدالة isDigit()‎ إن كان المحرف المُمرَّر إليها رقمًا. البنية العامة isDigit(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar رقمًا. أمثلة مثالٌ على استعمال الدالة isDigit()‎: if (isDigit(this)) // رقمًا this التحقق إن كان المتغير { Serial.println("المحرف هو رقم"); } else { Serial.println("ليس المحرف رقمًا"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. الدالة isAlphaNumeric()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا أو عددًا. الدالة isAscii()‎ : تتحقَّق إن ...

المكتبة Mouse في أردوينو

تتيح توابع المكتبة Mouse إمكانية تحكم اللوحات التي تعتمد على متحكمات 32u4 أو SAMD بمؤشر الفأرة في الحاسوب المتصل عبر المنفذ USB الأصلي للمتحكم. يكون موقع مؤشر الفأرة نسبي دومًا؛ فعند تحديث موقع مؤشر الفأرة الحالي وتحريكه، ينتقل المؤشر إلى الموقع الجديد نسبةً إلى موقعه القديم. تسمح المكتبات الأساسية للوحات التي ترتكز على متحكمات 32u4 و SAMD (مثل عائلة Leonardo، و Esplora، و Zero، و Due، و MKR) بجعل الفأرة و/أو لوحة المفاتيح تبدوان عند وصلهما بالحاسوب وكأنَّهما أصليتان. هنالك ...

الدالة isAlpha()‎ في أردوينو

تتحقَّق الدالة isAlpha()‎ إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. البنية العامة isAlpha(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar محرفًا أبجديًّا. أمثلة مثالٌ على استعمال الدالة isAlpha()‎: if (isAlpha(this)) // محرفًا أبجديًّا this التحقق إن كان المتغير { Serial.println("المحرف هو محرف أبجدي"); } else { Serial.println("ليس المحرف محرفًا أبجديًّا"); } انظر أيضًا الدالة isAlphaNumeric()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا أو عددًا. الدالة isAscii()‎ : تتحقَّق إن كان المحرف المُمرَّر إليها أحدَ ...

الدالة isGraph()‎ في أردوينو

تتحقَّق الدالة isGraph()‎ إن كان المحرف المُمرَّر إليها قابلًا للطباعة (printable) ويحوي بعض المحتوى المرئي (الفراغ قابلٌ للطباعة ولكنه لا يملك محتوى مرئي). البنية العامة isGraph(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar قابلًا للطباعة. أمثلة مثالٌ على استعمال الدالة isGraph()‎: if (isGraph(this)) // قابلًا للطباعة this التحقق إن كان المتغير { Serial.println("المحرف هو محرف قابلٌ للطباعة"); } else { Serial.println("ليس المحرف قابلًا للطباعة"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر ...

الدالة isControl()‎ في أردوينو

تتحقَّق الدالة isControl()‎ إن كان المحرف المُمرَّر إليها أحدَ محارف التحكم (control character). البنية العامة isControl(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar أحدَ محارف التحكم. أمثلة مثالٌ على استعمال الدالة isControl()‎: if (isControl(this)) // Ascii محرف this التحقق إن كان المتغير { Serial.println("المحرف هو محرف تحكم"); } else { Serial.println("ليس المحرف محرف تحكم"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. الدالة isAlphaNumeric()‎: تتحقَّق إن كان المحرف المُمرَّر ...

الدالة isAscii()‎ في أردوينو

تتحقَّق الدالة isAscii()‎ إن كان المحرف المُمرَّر إليها أحدَ المحارف Ascii. البنية العامة isAscii(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar أحدَ المحارف Ascii. أمثلة مثالٌ على استعمال الدالة isAscii()‎: if (isAscii(this)) // Ascii محرف this التحقق إن كان المتغير { Serial.println("Ascii المحرف هو محرف"); } else { Serial.println("Ascii ليس المحرف محرف"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. الدالة isAlphaNumeric()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا ...

الدالة isAlphaNumeric()‎ في أردوينو

تتحقَّق الدالة isAlphaNumeric()‎ إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا أو عددًا. البنية العامة isAlphaNumeric(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar محرفًا أبجديًّا أو عددًا. أمثلة مثالٌ على استعمال الدالة isAlphaNumeric()‎: if (isAlphaNumeric(this)) // محرفًا أبجديًّا أو عددًا this التحقق إن كان المتغير { Serial.println("المحرف هو محرف أبجدي أو عدد"); } else { Serial.println("ليس المحرف محرفًا أبجديًّا أو عددًا"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. الدالة ...

الدالة isPunct()‎ في أردوينو

تتحقَّق الدالة isPunct()‎ إن كان المحرف المُمرَّر إليها أحد علامات الترقيم (أي هل المحرف فاصلة أو فاصلة منقوطة أو علامة تعجب ...إلخ.). البنية العامة isPunct(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar أحد علامات الترقيم. أمثلة مثالٌ على استعمال الدالة isPunct()‎: if (isPunct(this)) // أحد علامات الترقيم this التحقق إن كان المتغير { Serial.println("المحرف هو أحد علامات الترقيم"); } else { Serial.println("ليس المحرف علامة ترقيم"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف ...

الدالة isPrintable()‎ في أردوينو

تتحقَّق الدالة isPrintable()‎ إن كان المحرف المُمرَّر إليها قابلًا للطباعة (أي أحد المحارف التي تعطي أية مخرجات حتى لو كان فراغًا). البنية العامة isPrintable(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar قابلًا للطباعة. أمثلة مثالٌ على استعمال الدالة isPrintable()‎: if (isPrintable(this)) // محرفًا قابلًا للطباعة this التحقق إن كان المتغير { Serial.println("ٍّالمحرف هو محرف قابل للطباعة"); } else { Serial.println("ليس المحرف محرفًا قابلًا للطباعة"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر ...

الدالة isUpperCase()‎ في أردوينو

تتحقَّق الدالة isUpperCase()‎ إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا كبيرًا (lower case). البنية العامة isUpperCase(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar محرفًا أبجديًّا كبيرًا. أمثلة مثالٌ على استعمال الدالة isUpperCase()‎: if (isUpperCase(this)) // محرفًا أبجديًّا كبيرًا this التحقق إن كان المتغير { Serial.println("ٍّالمحرف هو محرف أبجدي كبير"); } else { Serial.println("ليس المحرف محرفًا أبجديًّا كبيرًا"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. الدالة isAlphaNumeric()‎: تتحقَّق إن ...

الدالة isLowerCase()‎ في أردوينو

تتحقَّق الدالة isLowerCase()‎ إن كان المحرف المُمرَّر إليها المُمرَّر إليها محرفًا أبجديًّا صغيرًا (lower case). البنية العامة isLowerCase(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar محرفًا أبجديًّا صغيرًا. أمثلة مثالٌ على استعمال الدالة isLowerCase()‎: if (isLowerCase(this)) // محرفًا أبجديًّا صغيرًا this التحقق إن كان المتغير { Serial.println("المحرف هو محرف أبجدي صغير"); } else { Serial.println("ليس المحرف محرفًا أبجديًّا صغيرًا"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. الدالة isAlphaNumeric()‎: ...

الدالة isHexadecimalDigit()‎ في أردوينو

تتحقَّق الدالة isHexadecimalDigit()‎ إن كان المحرف المُمرَّر إليها رقمًا ستَّ عشريٍّ (hexadecimal digit)؛ أي يقع بين A-F أو 9-0. البنية العامة isHexadecimalDigit(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar رقمًا ستَّ عشريٍّ. أمثلة مثالٌ على استعمال الدالة isHexadecimalDigit()‎: if (isHexadecimalDigit(this)) // رقمًا ستَّ عشريٍّ this التحقق إن كان المتغير { Serial.println("ٍّالمحرف هو رقم ستُّ عشري"); } else { Serial.println("ليس المحرف رقمًا ستَّ عشريٍّ"); } انظر أيضًا الدالة isAlpha()‎: تتحقَّق إن كان المحرف المُمرَّر إليها ...

الدالة isSpace()‎ في أردوينو

تتحقَّق الدالة isSpace()‎ إن كان المحرف المُمرَّر إليها مسافةً بيضاءةً (white space). محارف المسافات البيضاء هي: '‎\f': الانتقال إلى الصفحة الجديدة (formfeed). '‎\n': سطرٍ جديد (newline). '‎\r': العودة إلى بداية السطر  (carriage return). '‎\t': مسافة جدولة أفقية (horizontal tab). '‎\v': مسافة جدولة رأسية (vertical tab). بالإضافة إلى الفراغ (space). البنية العامة isWhitespace(thisChar) المعاملات thisChar المحرف المراد التحقُّق منه. القيم المعادة تعاد القيمة true إن كان المعامل thisChar أحد محارف المسافات البيضاء. أمثلة مثالٌ على استعمال الدالة isWhitespace()‎: if (isWhitespace(this)) ...

المكتبة Keyboard في أردوينو

تتيح توابع المكتبة Keyboard إمكانية إرسال اللوحات التي تعتمد على متحكمات 32u4 أو SAMD ضغطات مفاتيحٍ من لوحة مفاتيح افتراضية إلى الحاسوب المتصل عبر المنفذ USB الأصلي للمتحكم. ملاحظة: لا يمكن إرسال جميع المحارف ASCII المتاحة، خصوصًا تلك التي لا يمكن طباعتها (non-printing)، باستعمال المكتبة Keyboard. تدعم المكتبة إمكانية استعمال مفاتيح التبديل التي تغيِّر سلوك مفتاح آخر عند الضغك عليها باستمرار (مثل المفتاح shift). انتقل إلى توثيق "مفاتيح التبديل" لمعلومات أوسع عن المفاتيح المدعومة واستعمالاتها. تسمح المكتبات الأساسية للوحات التي ...

صيغة بديلة لبنى التحكم في PHP

(PHP 4, PHP 5, PHP 7) تقدّم PHP صيغة مختلفة لبعض بنى التحكّم المتوفّرة فيها، وهي if و while و for و foreach و switch. وفي جميع الأحوال يمكن استخدام الصيغة البديلة بوضع نقطتين رأسيتين (:) بدلًا من القوس المعقوف في بداية العبارة ووضع العبارة endif;‎ أو endwhile;‎ أو endfor;‎ أوendforeach; ‎ أو endswitch;‎ في النهاية حسب الحاجة. <?php if ($a == 5): ?> A is equal to 5 <?php endif; ?> في المثال السابق أُدخلِت كتلة HTML والتي تتضمن الجملة "A ...

صيغة بديلة لبنى التحكم في PHP

(PHP 4, PHP 5, PHP 7) تقدّم PHP صيغة مختلفة لبعض بنى التحكّم المتوفّرة فيها، وهي if و while و for و foreach و switch. وفي جميع الأحوال يمكن استخدام الصيغة البديلة بوضع نقطتين رأسيتين (:) بدلًا من القوس المعقوف في بداية العبارة ووضع العبارة endif;‎ أو endwhile;‎ أو endfor;‎ أوendforeach; ‎ أو endswitch;‎ في النهاية حسب الحاجة. <?php if ($a == 5): ?> A is equal to 5 <?php endif; ?> في المثال السابق أُدخلِت كتلة HTML والتي تتضمن الجملة "A ...

التعبير switch...case في أردوينو

يتحقَّق التعبير switch...case -كما في if- من قيمة محدَّدة بطريقة تسمح للمبرمج بتحديد عدة شيفرات تُنفَّذ إحداها بناءً على تلك القيمة المفحوصة. بتفصيلٍ أوسعٍ، يوازن التعبير switch...case قيمة متغير مع القيم المحددة ضمنه؛ عند مطابقة قيمة ذلك المتغير مع إحدى القيم أو التعابير الموجودة ضمنه، فستُنفَّذ الكتلة البرمجية المرتبطة بتلك القيمة أو التعبير. تستخدم عادةً الكلمة المفتاحية break في نهاية كل حالة من حالات التعبير switch...case للخروج منه بعد مطابقة الحالة وتنفيذ الكتلة المرتبطة بها. إن لم تُستعمَل الكلمة break ...

الكلمة else المفتاحية في أردوينو

يسمح التعبير if...else الشرطي بالتحكم بشكل أوسع بتسلسل عملية التحقق من عدة شروط معينة عند تنفيذ الشيفرة عوضًا عن التحقق من شرط وحيد عند استعمال التعبير if. ستُنفَّذ العبارة else (إن وجدت) إن لم يتحقق الشرط المعطى في العبارة if ( أي أعطى القيمة false). يمكن أيضًا استعمال العبارة else مع العبارة if بالشكل else if لإضافة شرط آخر للتحقق منه وبذلك يمكن إجراء عدة عمليات تحقق متتابعة في الوقت نفسه. في حال وجود عدة شروط يراد التحقُّق منها، سيُتحقَّق ...

الحلقة while التكرارية في أردوينو

تكرِّر الحلقة while تنفيذ الكتلة البرمجية التي ضمنها بشكل مستمر ولا نهائي ما دامت قيمة الشرط المنطقي الموجود بين القوسين هي true (اطلع على البينة العامة)؛ متى ما أصبحت قيمة الشرط المنطقي false، تتوقف الحلقة وتخرج. يجب أن يحدث أي تغيير في قيمة الشرط وإلا لن تخرج الحلقة مطلقًا، لذا يجب أن تزيد أو تنقص قيمة المتغير الذي يُفحَص ضمن الشرط المنطقي أو يجب أن يُستعمَل شرط خارجي مثل فحص قيمة حساس أو ما شابه. البنية العامة while(condition){ // ...

الكلمة return المفتاحية في أردوينو

تقاطع الكلمة return المفتاحية تنفيذ أيَّ دالةٍ وتعيد قيمةً من الدالة إلى من استدعاها إن حدُّدت. البنية العامة return; return value; // value في هذه الصياغة، ستعاد القيمة يمكن أن تكون القيمة value المعادة أيُّ نوعٍ من أنواع المتغيرات أو الثوابت المراد إعادته إلى من استدعى الدالة. أمثلة يوضح المثال التالي كيفية إنشاء دالة توازن القيمة المقاسة من حساس مع عتبة معينة: int checkSensor(){ if (analogRead(0) > 400) { return 1; ...

التعبير switch...case في أردوينو

يتحقَّق التعبير switch...case -كما في if- من قيمة محدَّدة بطريقة تسمح للمبرمج بتحديد عدة شيفرات تُنفَّذ إحداها بناءً على تلك القيمة المفحوصة. بتفصيلٍ أوسعٍ، يوازن التعبير switch...case قيمة متغير مع القيم المحددة ضمنه؛ عند مطابقة قيمة ذلك المتغير مع إحدى القيم أو التعابير الموجودة ضمنه، فستُنفَّذ الكتلة البرمجية المرتبطة بتلك القيمة أو التعبير. تستخدم عادةً الكلمة المفتاحية break في نهاية كل حالة من حالات التعبير switch...case للخروج منه بعد مطابقة الحالة وتنفيذ الكتلة المرتبطة بها. إن لم تُستعمَل الكلمة break ...

الكلمة goto المفتاحية في أردوينو

تنقل الكلمة goto المفتاحية البرنامج إلى موضع معين ضمن الشيفرة. البنية العامة goto label; // إرسال البرنامج لتنفيذ الكتلة البرمجية // label الموجودة عند التسمية أمثلة مثالٌ على استعمال التعبير goto: for(byte r = 0; r < 255; r++){ for(byte g = 255; g > 0; g--){ for(byte b = 0; b < 255; b++){ ...

الكلمة break المفتاحية في أردوينو

تُستعمَل الكلمة break المفتاحية للخروج من الحلقات for، أو while، أو do...while التكرارية، إذ تتخطى الشيفرة التي بعدها وشروط الحلقة المحددِّة وتخرج منها. تُستعمَل أيضًا للخروج من التعبير switch...case البرمجي. البنية العامة break; أمثلة في الشيفرة التالية، يخرج المتحكم من الحلقة for عندما تتجاوز قيمة الحساس المقاسة عتبة معينة: for (x = 0; x < 255; x ++) { analogWrite(PWMpin, x); sens = analogRead(sensorPin); if (sens > threshold){ ...

الكلمة continue المفتاحية في أردوينو

تتخطى الكلمة continue المفتاحية الشيفرة التي تليها في حلقة التكرار (مثل الحلقات for، أو while، أو do...while التكرارية) إلى عملية التحقق من التعبير الشرطي لتلك الحلقة ثم يُستأنَف عمل حلقة التكرار بشكل طبيعي. عمل هذه العبارة شبيه بإحداث قفزة في حلقة التكرار لتخطي تنفيذها عند تحقق شرط معين. البنية العامة continue; أمثلة في الشيفرة التالية، ستُكتب القيمة من 0 إلى 255 على الرجل PWMpin مع تخطي كتابة القيم التي تقع في المجال 41 إلى 119: for (x = 0; x ...

بنى التحكم في PHP

تتكون جميع شيفرات PHP من سلسلة من العبارات (statements)، ويمكن للعبارة أن تكون إسنادًا (assignment) أو استدعاءً لدالّة، أو حلقة تكرارية، أو عبارة شرطية أو حتى عبارة لا تقوم بأي عمل على الإطلاق (عبارة فارغة). تنتهي العبارات عادة بالفاصلة المنقوطة (;)، ويمكن تجميع العبارات بإحاطتها بالأقواس المعقوفة ({}) لتصبح مجموعة عبارات (statement-group)، والتي تعدّ بدورها عبارات أيضًا. سنفصل الحديث في هذا الفصل عن أنواع متعددة من العبارات. if بنية if هي واحدة من أهم الميزات المتوفّرة في العديد من اللغات ...

دوال التعامل مع المحارف والتحقق منها في أردوينو

تعمل هذه الدوال مع المحارف بشكل عام، إذ تتحقَّق من كون محرف محدَّد ينتمي إلى مجموعةٍ معيَّنة من المحارف. isAlpha()‎ تتحقَّق الدالة isAlpha()‎ إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا. isAlphaNumeric()‎ تتحقَّق الدالة isAlphaNumeric()‎ إن كان المحرف المُمرَّر إليها محرفًا أبجديًّا أو عددًا. isAscii()‎ تتحقَّق الدالة isAscii()‎ إن كان المحرف المُمرَّر إليها أحدَ المحارف Ascii. isControl()‎ تتحقَّق الدالة isControl()‎ إن كان المحرف المُمرَّر إليها أحدَ محارف التحكم (control character). isDigit()‎ تتحقَّق الدالة isDigit()‎ إن كان المحرف المُمرَّر إليها رقمًا. isGraph()‎ ...

الحلقة do...while التكرارية في أردوينو

تعمل الحلقة do...while التكرارية بنفس الطريقة التي تعمل بها الحلقة while باستثناء أنه يُتحقق من الشرط في نهاية الحلقة وليس في بدايتها. هذا يعني أنَّ الحلقة ستُنفَّذ مرة واحدة على الأقل. البنية العامة do { // الكتلة البرمجية المراد تكرار تنفيذها } while (condition); الشرط condition هو تعبير منطقي وسيُقيَّم على أنه إمَّا true أو false. أمثلة مثالٌ عن استعمال الحلقة do...while في قراءة قيمةٍ من حساس وانتظار بلوغها حدًّا معيَّنًا: do { delay(50); ...

عبارة pass في بايثون

لا تؤدي عبارة pass أي عمل على الإطلاق، ويمكن استخدامها عندما تكون عبارة معيّنة مطلوبة لغويًّا ولكنّها لا تؤدّي وظيفة معينة. فعلى سبيل المثال يؤدي تنفيذ الشيفرة التالية إلى جعل مفسّر بايثون مشغولًا وبانتظار قطع عملية التنفيذ عن طريق الضغط على مفتاحي Ctrl+C: >>> while True: ...     pass ... تستخدم هذه العبارة عادة في إنشاء أصناف مصغّرة: >>> class MyEmptyClass: ...     pass ... يمكن استخدام عبارة pass أيضًا كنصّ بديل مؤقت لدالة أو جملة شرطية معيّنة عند العمل على شيفرة جديدة، الأمر الذي ...

التساوي (Equality) في لغة Kotlin

تحتوي لغة Kotlin على نوعين من التساوي: التساوي البنيويّ (structural equality): يكون التحقُّق فيه عبر الدالة equals()‎. التساوي المرجعيّ (referential equality): وهو التحقُّق من الإشارة إلى نفس الكائن (object). التساوي البنيويّ (Structural Equality) يعتمد التساوي البنيويّ على المعامل == ونفيه =! ، إذ يُترجَم التعبير a == b إلى الصيغة: a?.equals(b) ?: (b === null) فإن لم يحتوِ المتغيِّر a على القيمة الفارغة null فستُستدعَى الدالةequals(Any?)‎ ، أما إن كانت قيمته null فيجري التحقُّق من أنّ b مساوٍ -مرجعيًّا- للقيمة null. ...

المعامل & في أردوينو

يُستعمل المعامل & لتوفير مرجعيةٍ لعنوان الذاكرة المحجوزة (referencing) لأحد المتغيرات، إذ تعدُّ المرجعية إحدى الميزات المهمة التي تُستعمَل مع المؤشرات (pointers). فإذا كان لدينا متغيرًا باسم x، فإنَّ x& يمثِّل عنوان هذا المتغير في الذاكرة. البنية العامة &variable; أمثلة مثالٌ على استعمال المعامل & مع متغير ومؤشر: int *p; // التصريح عن مؤشر؛ نوعه: عدد صحيح int i = 5, result = 0; p = &i; // 'i' عنوان ...

المعامل ++ في أردوينو

يزيد المعامل ++ قيمة المتغير المستعمل معه بمقدار 1. البنية العامة x++; // القديمة ثم يزيدها بمقدار 1 x يعيد المعامل قيمة المتغير ++x; // بمقدار 1 ثم يعيد قيمته الجديدة x يزيد قيمة المتغير المعاملات x متغيرٌ يراد زيادة قيمته بمقدار 1. الأنواع المسموح بها هي: عدد صحيح، وعدد طويل (يمكن أن يكون عديم الإشارة). أمثلة مثالٌ على استعمال المعامل ++: x = 2; y = ++x; // القيمة 3 أيضًا y الآن ...

المعامل * في أردوينو

يُستعمل المعامل * لتوفير وصولٍ لقيمة مخزَّنة في عنوان محدَّد من الذاكرة (Dereferencing) لأحد المؤشرات، إذ تعدُّ الوصولية للبيانات المخزنة في عناوين الذاكرة إحدى الميزات المهمة التي تُستعمَل مع المؤشرات (pointers). فإذا كان لدينا مؤشرًا باسم p، فإنَّ p* يمثِّل القيمة المحتواة في عنوان الذاكرة التي يشير إليه هذا المؤشر. البنية العامة &variable; أمثلة مثالٌ على استعمال المعامل * مع مؤشر: int *p; // التصريح عن مؤشر؛ نوعه: عدد صحيح int i = 5, result ...

الثوابت في أردوينو

الثوابت هي تعابير معرَّفة مسبقًا في لغة أردوينو. تُستعمَل لتسهيل عمل المبرمجين أثناء كتابتهم للشيفرة، بالإضافة إلى جعل الشيفرة أكثر قابلية للقراءة. تُصنَّف الثوابت في مجموعات بحسب وظيفتها. تعريف المستويات المنطقية (الثوابت المنطقية) يوجد ثابتان يستعملان لتمثيل الحقيقة (truth) والزيف (falsity) في لغة أردوينو هما: true، و false. الثابت false تمثِّل القيمة false المنطقية قيمة خطأ، وتعرَّف على أنَّها صفر (0) من الناحية العددية. الثابت true تمثِّل القيمة true المنطقية قيمة صحيحة وتُعرَّف على أنَّها واحدٌ (1) من الناحية العددية. ...

المصفوفات في أردوينو

المصفوفة هي مجموعة من المتغيرات الموضوعة في وعاء واحد والتي يمكن الوصول إليها عبر رقم فهرس كلٍّ منها. يمكن أن تكون المصفوفات في لغة C، التي ترتكز عليها لغة أردونيو، معقدةً بعض الشيء ولكنَّ استعمال المصفوفات بأبسط شكل لها هو أمر سهل ويسير. إنشاء مصفوفة يوجد عدة طرائق لإنشاء مصفوفة منها: int myInts[6]; int myPins[] = {2, 4, 8, 3, 6}; int mySensVals[6] = {2, 4, -8, 3, 2}; char message[6] = "hello"; يمكنك التصريح عن مصفوفة دون تهيئتها ووضع قيم فيها كما في ...

المعامل ‎==‎ في أردوينو

يوازن المعامل ‎==‎ بين قيمتين أو متغيِّرين ويعيد القيمة true إن كان المعامل الموجود في الطرف الأيسر مساويًا للمعامل الموجود في الطرف الأيمن. انتبه رجاءً إلى أنَّه قد يوازن بين متغيرين من نوعين مختلفين، وذلك قد يؤدي إلى الحصول على نتيجة غير متوقعة. بناءً على ذلك، يوصَى بموازنة متغيراتٍ من النوع نفسه بما فيها أنواع الأعداد التي لها إشارة أم لا. البنية العامة x == y; المعاملات x متغيرٌ يراد التحقق من تساويه مع متغير أو قيمة معينة. الأنواع المسموح ...

المعامل -- في أردوينو

ينقص المعامل -- قيمة المتغير المستعمل معه بمقدار 1. البنية العامة x--; // القديمة ثم يطرحها منها العدد 1 x يعيد المعامل قيمة المتغير --x; // العدد 1 ثم يعيد قيمته الجديدة x يطرح من قيمة المتغير المعاملات x متغيِّرٌ يراد طرح القيمة 1 منه. الأنواع المسموح بها هي: عدد صحيح، وعدد طويل (يمكن أن يكون عديم الإشارة). أمثلة مثالٌ على استعمال المعامل --: x = 2; y = --x; // القيمة 1 أيضًا ...

المعامل || في أردوينو

يطبِّق المعامل || العملية OR المنطقية على قيمتين أو تعبيرين منطقيين ويعيد القيمة المنطقية الناتجة؛ أي يعيد القيمة true المنطقية إن كانت قيمة أحد المعاملين المعطيين هي true. البنية العامة result = operand1 || operand2; // إن كانت true هي result ستكون قيمة المتغير // true ...

المعامل + في أردوينو

يحسب المعامل + ناتج جمع عددين مع بعضهما بعضًا. أي يجري هذا المعامل عملية الجمع التي هي إحدى العمليات الحسابية الأساسية الأربعة. البنية العامة sum = operand1 + operand2; المعاملات product متغير. الأنواع المسموح بها هي: عدد صحيح، أو عدد عشري، أو عدد عشري مضاعف، أو بايت، أو عدد قصير، أو عدد طويل. operand1 متغير أو ثابت. الأنواع المسموح بها هي: عدد صحيح، أو عدد عشري، أو عدد عشري مضاعف، أو بايت، أو عدد قصير، أو عدد طويل. operand2 متغير ...

المعامل ‎<=‎ في أردوينو

يوازن المعامل ‎<=‎ بين قيمتين أو متغيِّرين ويعيد القيمة true إن كان المعامل الموجود في الطرف الأيسر أصغر من المعامل الموجود في الطرف الأيمن أو يساويه. انتبه رجاءً إلى أنَّه قد يُوازَن بين متغيرين من نوعين مختلفين، ويمكن أن يؤدي ذلك إلى الحصول على نتيجة غير متوقعة. بناءً على ذلك، يوصَى بموازنة متغيراتٍ من النوع نفسه بما فيها أنواع الأعداد التي لها إشارة أم لا. البنية العامة x <= y; المعاملات x متغير يراد التحقق من كونه أصغر من متغير ...

المعامل = في أردوينو

يدعى المعامل = في لغة C «معاملَ الإسناد»، إذ يختلف عن المعنى الظاهري المعروف في الرياضيات الذي يشير إلى الموازنة أو المساواة. يخبر معامل الإسناد المتحكم بتقييم التعبير أو القيمة الموجودة في الطرف الأيمن للمعامل = أيًّا كانت وتخزينها في المتغير الموجود في الطرف الأيسر لذاك المعامل. البنية العامة (dataType) variable = value/statement; أمثلة مثالٌ على استعمال المعامل =: int sensVal; // نوعه: عدد صحيح ،sensVal التصريح ...

المعامل | في أردوينو

يُجرِي المعامل | في لغة ++C العملية OR على كل بتين متقابلين من بتات العددين المعطيين بشكل مستقل ويعطي القيمة العددية الناتجة. وفقًا لهذا التعريف، إن كانت قيمة أحد البتَّين 1، فالقيمة الناتجة عن تطبيق العملية OR عليهما هي 1؛ خلا ذلك، ستكون القيمة الناتج هي 0. اطلع على الشكل التالي لفهم العملية بوضوح: 0 0 1 1 operand1 0 1 0 1 operand2 ---------- 0 1 1 ...

المعامل / في أردوينو

يحسب المعامل / ناتج قسمة عددين أحدهما على الآخر. أي يجري هذا المعامل عملية القسمة التي هي إحدى العمليات الحسابية الأساسية الأربعة. البنية العامة result = numerator / denominator; المعاملات result متغير. الأنواع المسموح بها هي: عدد صحيح، أو عدد عشري، أو عدد عشري مضاعف، أو بايت، أو عدد قصير، أو عدد طويل. numerator متغير أو ثابت يمثل المقسوم. الأنواع المسموح بها هي: عدد صحيح، أو عدد عشري، أو عدد عشري مضاعف، أو بايت، أو عدد قصير، أو عدد طويل. ...

المجاري في أردوينو

الصنف Stream هو الصنف الأساس للمجاري التي تنقل المحارف والبيانات الثنائية. لا يستدعَى هذا الصنف مباشرةً ولكنَّه يُستدعَى كلما استُعملَ أو استدعيَ تابعٌ يعتمد عليه. يعرِّف الصنف Stream دوال القراءة في أردوينو. عند استعمال أية وظيفة أساسية تستعمل تابعً مثل read()‎ أو أي تابع مشابه، فيمكنك افتراض أنه سيستدعي الصنف Stream. من أجل دوال مثل print()‎، يرث الصنف Stream آنذاك من الصنف Print. بعض المكتبات التي تعتمد على الصنف Stream: Serial Wire Ethernet SD available()‎ يجلب التابع عدد البايتات المتاحة للقراءة ...

عرض (50 السابقة | 50 التالية) (20 | 50 | 100 | 250 | 500).