سؤال عن تصريح ;x=x+1 :

السلام عليكم أنا أدرس من مرجع انكليزي البرمجة بلغة C فكان مكتوب:

;x=x+1

in effect, the value of variable x got incremented by one which has nothing to do with comparing the variable with any value

ما معناها الدقيق؟ لأني لم أفهمها تماماً؟

و شكراً.

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

ربما المثال يساعدك على الفهم

x = 10

الآن قيمة x هي عشرة

x = x + 1

الآن لو طبعت x فسوف تحصل على 11 وفي الغالب ستحصل على نفس النتيجة لو قمت بكتابة

x++

أين نحتاج مثل هذا التطبيق ؟ في أمور كثيرة مثل تغيير القيمة بـ

+ - * /

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

يعني اكس الجديدة تساوي اكس القديمة زائد واحد

لو تقصد الترجمة تماما

"فى التأثير ، قيمة المتغير x سيتم زيادتها بقيمة 1 ، وذلك ليس له أى علاقة بمقارنة المتغير مع أى قيمة "

المعنى أن هذه المعادلة ستقوم بزيادة المتغير x بقيمة واحد ولن تقوم بمقارنة المتغير مع أى قيمة ، أو علامة (=) المستخدمة هنا لن يتم توظيفها للمقارنة ، ولكن للاسناد

شكراً لك أخي العزيز على هذا الشرح الرائع , الآن اتّضح المعنى تماماً.

x = x+1 هي ضع في x قيمة x السابقة وزيدلها 1

x=x+1 ليست معادلة رياضية, في البرمجة تعني حرفيا اضف 1 على x القديمة

x==1 هذه هي صيغة المعادلات في البرمجة (php)

x==1 أيضاً لا تعتبر صيغة المعادلة في البرمجة بالمفهوم الرياضي، هذه معاملات مقارنة وليست صيغة معادلة رياضية فيمكن صياغتها كالتالي x==x+1 وهي صحيحة برمجياً وقيمة المقارنة خاطئة دائماً أي False ولكنها صيغة غير صحيحة رياضياً .

نعم كل صيغ التساوي في البرمجة هي حقيقة مقارنات حتى (سواء= او == او حتى===)

فقط يمكن اعتبار == اقرب الى معادلة لان معناها التساوي الحقيقي في المجموع (:

= تستخدم لإسناد القيمة للمتغير، لم أمر على لغة تسخدمها في غير هذا غير لغة الإستعلامات SQL و لغة التنسيق CSS تستخدمها للمقارنة

يمكن إعتبار === هي الأقرب :) لأنها تأخذ في الإعتبار نوعية المتغير عند المقارنة "المساواة من نفس النوع"

هذا اخي الحبيب يكون لديكIncrement and Decrement

التزايد والتناقص

افضل شيئ بعطيك هذا الفيديو تفهم منه افضل لاتنسى ايضا ركز على

x++ or ++x

بالكتاب عطاك مثال مبسط حتى تفهم الخطوه التاليه (المختصره )

اذا الدرس صعب عليك شوف قناة عبد الله عيد قام بشرح هذا الموضوع في java,php بالتفصيل الممل

اجعل القيمة المحفوظة في الذاكرة إكس تساوي محتوياتها القديمة مضافا إليها واحد.

والمقصود أنها عملية إحلال assignment وليس عملية فحص مساواة أو إعلان مساواة.

-3

أعتقد هذا للتكرار Loop