الحماية للأبد -Security 4 Ever


الحماية للأبد -Security 4 Ever (https://www.sec4ever.com/home/index.php)
-   دورة البيرل Perl (https://www.sec4ever.com/home/forumdisplay.php?f=177)
-   -   [استفسار] الدرس الثاني: شرح الoperators و ال literals (https://www.sec4ever.com/home/showthread.php?t=14720)

SubHack 06-05-2014 01:10 PM

رد: الدرس الثاني: شرح الoperators و ال literals
 
استفسار

بالنسبة لهذا المعامل **=
لو فرضنا ان
a=2 , c=1
اذن
c**=a

الناتج

c=1**2

c=1

اذاى الناتج النهائى 1

b0y 06-05-2014 02:56 PM

رد: الدرس الثاني: شرح الoperators و ال literals
 
اقتباس:

المشاركة الأصلية كتبت بواسطة SubHack (المشاركة 78326)
استفسار

بالنسبة لهذا المعامل **=
لو فرضنا ان
a=2 , c=1
اذن
c**=a

الناتج

c=1**2

c=1

اذاى الناتج النهائى 1

أهلا أخي, الناتج صحيح
العملية ** ليست ضرب إنما puissance
يعني أنت لم تضرب 1 ب 2 إنما جعلت 1 قوة 2.
أتمنا أن تكون فهمت ماذا أقصد, مثال :
2 قوة 1 = 2^1 = 2
2 قوة 2 = 2^2 = 4
و أنت هنا إستعملت 1 قوة 2 بالشكل : 1^2 = 1 أي قوة للرقم 1 سينتج الرقم واحد.
بالتوفيق

Bl3cK0uT 06-05-2014 05:25 PM

رد: الدرس الثاني: شرح الoperators و ال literals
 
الدرس يبي له تطبيق عملي وشكرا لك

dark dz 06-05-2014 06:30 PM

رد: الدرس الثاني: شرح الoperators و ال literals
 
درس مشروح ببساطة ومفهوم في انتظار الدرس الثالت ^_^

Ashter 06-05-2014 07:57 PM

رد: الدرس الثاني: شرح الoperators و ال literals
 
كود PHP:

$a 1;
$b 3;

$x $a+$b;
print 
"$x"


هذا فهمت فقط اما بقية اتمنى امثلة او دروس تطبيقة ddd

b0y 06-05-2014 09:23 PM

رد: الدرس الثاني: شرح الoperators و ال literals
 
اقتباس:

المشاركة الأصلية كتبت بواسطة SqL_St (المشاركة 78362)
كود PHP:

$a 1;
$b 3;

$x $a+$b;
print 
"$x"

هذا فهمت فقط اما بقية اتمنى امثلة او دروس تطبيقة ddd

eek لو تعيد قرائة الدرس مره أخرى أعتقد ستتضح الأمور أكثر لديك ddd
و بخصوص الأمثلة: في التطبيقات القادمة ( بعد الدرس الخامس ) إن شاء الله.

Mr.haili 07-05-2014 12:55 PM

رد: الدرس الثاني: شرح الoperators و ال literals
 
تطبيق عملي وان شاء الله تمام

N1r0 08-05-2014 11:03 AM

رد: الدرس الثاني: شرح الoperators و ال literals
 
اه نسيت اخي الكريم .. اتمنى لو تفضلتم علينا فيما بعد

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

امثلة بسيطة كعمل سكان لموقع ما مثلا او جلب مواقع السيرفر

التخمين الخ .. لنخرج بنتائج مرضية من الدورة وهذا بعد تكرمكم علينا به طبعا

دمتم بود

ElSyad 09-07-2014 08:43 AM

رد: الدرس الثاني: شرح الoperators و ال literals
 
وعليكم السلام

انا حاولت اطبق العوامل الحسابية كبدآية بس دايما يديني غلط

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

صورة للتطبيق بعد عدة محاولات واتمني اعرف اي الخطأ الي ف التطبيق

http://im60.gulfup.com/k4gxM4.png

+

اني جربت اشيل السينجل كويتس الي بالمتغير $s ومنفعتش برضو

b0y 09-07-2014 10:20 AM

رد: الدرس الثاني: شرح الoperators و ال literals
 
اقتباس:

المشاركة الأصلية كتبت بواسطة ElSyad (المشاركة 82128)
وعليكم السلام

انا حاولت اطبق العوامل الحسابية كبدآية بس دايما يديني غلط

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

صورة للتطبيق بعد عدة محاولات واتمني اعرف اي الخطأ الي ف التطبيق

http://im60.gulfup.com/k4gxM4.png

+

اني جربت اشيل السينجل كويتس الي بالمتغير $s ومنفعتش برضو

أهلا أخي
في البداية الخطأ الظاهر هو بسبب صيغة الprint المستعملة فهي بالشكل:
print data exp
أي لا وجود لل=, أعتقد أنك تقصد: print "$s";
لكن السكربت الذي وضعته أنت سينتج:
$b+$a كصيغة لأنك إستعملت الsingle quote عند تعريف المتغيير $c, لكن أيضا لو إستبدلتها بdouble quote سيتم طباعة الناتج:
5+2, لأن المترجم هنا إعتبر ال+ كأي حرف لا وظيفة له, لذلك يجب عليك عمل eval لل$c لينفذ الأمر في المترجم, وذلك بعدة طرق:
الأول إستعمال الeval مثال:
كود:

#!/usr/bin/perl
$a = 5;
$b = 2;
$c = "$a+$b";
print eval($c);

الناتج سيكون 7.
الثاني بعمل eval عند تعريف ال$c مثال:
كود:

#!/usr/bin/perl
$a = 5;
$b = 2;
$c = $a+$b;
print $c;
print "\n";

الناتج 7 أيضا.
الفارق بين المثال الثاني و تطبيقك, هو أن في المثال الثاني المترجم أعتبر ال+ صيغة جمع, أما في تطبيقك فهو إعتبرها حرف عادي.
أتمنى أن تكون الفكرة وصلت ddd.
بالتوفيق


الساعة الآن 04:56 AM

Powered by vBulletin® Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.