الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

logical and functions

مغلق
بدأه st0rm-man في 20 مارس 2007 · 3 رد · 1,718 مشاهدة · في المواضيع والدروس
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

صراحه من احسن المنتديات العربيه انتم و SG

من فتره كنت سالت سؤال ولقيت بدل الاجابه 10

اتكسفت الصراحه مشاركش ولو بمشاركه بسيطه :D

ارجوا تقبلوها مني :D

ده الكود

#include<stdio.h>
int AND(int x ,int y);
int OR(int x ,int y);
int NOT(int x ,int y);
int z,f,d,x,y;
/* coded by storm man */
main()
{
printf("HI PUT THE FIRST NUMBER:x=");
scanf("%d",&x);
printf("\nTHE SECONDE ONE:y=");
scanf("%d",&y);
printf("Z WILL EQUAL 0 IF FALES 1 IF TRUE:");
printf("\nz=%d \t f=%d \t d=%d",AND(x,y),OR(x,y),NOT(x,y));

}
int AND(int x , int y)
{

z=(x>y) && (x>0);
return z;

}
int OR(int x , int y)
{

f=(x>y) || (x>0);
return f;

}
int NOT(int x , int y)
{

d=!(x>y);
return d;

}

ومن هنا حمله

http://st0rm-m4n.741.com/logic.c

نشرح بقي rolleyes.gif

int AND(int x ,int y);
int OR(int x ,int y);
int NOT(int x ,int y);

تعريفات مبدئيه لثلاث دوال وظيفتها تحديد عدد ال parameter للداله ونوعها

والداله طبعا انوعها كلها int

int z,f,d,x,y;

تعريف اربع متغيرات من نوع int

main()
{
printf("HI PUT THE FIRST NUMBER:x=");
scanf("%d",&x);
printf("\nTHE SECONDE ONE:y=");
scanf("%d",&y);
printf("Z WILL EQUAL 0 IF FALES 1 IF TRUE:");
printf("\nz=%d \t f=%d \t d=%d",AND(x,y),OR(x,y),NOT(x,y));

}

الداله كلها وجسم البرنامج

استخدمنا printf كدالة اخارج و scanf كدالة ادخال

printf("\nz=%d \t f=%d \t d=%d",AND(x,y),OR(x,y),NOT(x,y));

استخدمنا الثلاث دوال مع دالة الاخراج لعرض النتائح علي وحدة الاخارج الشاشه huh.gif

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

int AND(int x , int y)
{

z=(x>y) && (x>0);
return z;

اذا كان x>y وكان x>0 بتم وضع القيمه 1 للمتغير z وراجاعه عند استخدام الداله واقصد بارجاعه اي استخدام قيمته

جدول and

0 AND 1 = 0

1 AND 1=0

1 AND 0=0

اي ان يجب ان يتحقق الشرطين لكي تعطي AND قيمة 1 = true

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

int OR(int x , int y)
{

f=(x>y) || (x>0);
return f;

}

دالة OR نفس دالة AND مع اختلاف الاتي

اذا تحقق احد الشرطين او الشرطين كلاهما ترجع بقيمة 1 اي true

جدول OR

1 OR 0=1

0 OR 1=1

0 OR 0=1

1 OR 1=0

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

int NOT(int x , int y)
{

d=!(x>y);
return d;

}

كما سبق مع اختلاف القيمه المرجعه

NOT مربكه قليلا اذا كان الشرط غير حقيقي تعطي true واذا كان حقيق تعطي FALSE اي ان

NOT 1=0

NOT 0=1

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

اذكر في النهايه ثلاث اشياء

اولوية ال logical operator علي بعضها

NOT!= 1

AND&&=2

OR||=3

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

ثانيا 0 ترمز الي FALSE و 1 الي TRUE

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

ثالثا لايمكن ارجاع اكثر من قيمة من داله

وعند المحاوله سوف تاخذ اول قيمه التاثير ويتم اهمال الباقي

اي لا يمكن وجود داله مثل

int AND(int x , int y)
{

z=(x>y) && (x>0);
return z;
f=(x>y) || (x>0);
return f;
d=!(x>y);
return d;

}

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

سلام (h)

cheers

#2

كود غريب :D

اولا احب اقولك يعطيك العافية

الشي الثاني استعمالك لـ global variables يغنيك على انك تسوي return لأنه بالاساس خلاص انت سويت لها اسناد ما فيه داعي تسوي ريترن وحاول دائما تتجنب استعمال القلوبل فاريبلز لأنها راح تاخذ حيز من البرنامج سواء استعملتها اول لا لهذا دائما يتجنب استعمالها لأنك تهدر موارد الحاسب :)

مجرد معلومة وشاكر مرة اخرى

#3

اشكرك انا علي معلومتاك بس فعلا جديده علي حكايه الجلوبال فاريابلز مش لازملها ريتيرن

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

يعني المتغيرات المسنده مش لازملها ريترتن بصفتها في البرنامج كله جلوبال

اقتباس
حاول دائما تتجنب استعمال القلوبل فاريبلز لأنها راح تاخذ حيز من البرنامج سواء استعملتها اول لا لهذا دائما يتجنب استعمالها لأنك تهدر موارد الحاسب

الف شكر علي العلومه القيمه ديت بس ممكن اعرف هي بتهدر موارد الحاسب في ايه وليه ؟

اقتباس
كود غريب

الف شكر برده :D :D :D بس غريب ليه

الف شكر ليك عزيزي علي ردك ومشاركتك بمعلومات جميله مثل هيك :D

#4

اخي انا جربت موضوع الريترن في الجلوبال فاريابلز

وكانت النتيجه غير مساويه مع الريترن

الناتج هو

z=4 f=4 d=0

يعني مابيرجع معي ب 0 او 1

بيرجع بالقيم الي انا اسنتدها الي x و y ولكن دالة not صفر كما هي

هذا الموضوع مغلق.

مواضيع مشابهة