صفيف :: APX.

مجموعة ملحقات البرمجة
التحميل الان

صفيف :: APX. الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • Perl Artistic License
  • السعر:
  • FREE
  • اسم الناشر:
  • Dr. Bernd Ulmann
  • موقع ويب الناشر:
  • http://search.cpan.org/~vaxman/

صفيف :: APX. العلامات


صفيف :: APX. وصف

صفيف :: APX هو وحدة بيرل التي تمدد PERL-5 مع بعض الوظائف الأساسية التي تم العثور عليها بشكل شائع في لغات البرمجة المشتركة مثل APL، Lang5 وما إلى ذلك. إنه في الأساس عبارة عن مجموعة من الصفيف :: التعميق والتحميل الزائد بعض مشغلي بيرل الأساسي بطريقة يسمح بمعالجة سهلة من هياكل البيانات المتداخلة. تتميز هياكل البيانات هذه في الأساس عن صفائف N-Vydional التي يمكن التعامل معها بطريقة مماثلة ل APL أو LANG5.A مثال لطيفة هو حساب قائمة بأعداد رئيسية باستخدام حل APL Archetypical. الفكرة الأساسية هي: إنشاء منتج خارجي لمتوافرين . لا تحتوي المصفوفة الناتجة على أي أعداد أولية لأن كل رقم هو نتاج عددا من الأعداد الصحيحة على الأقل. ثم تحقق من كل رقم في المتجه الأصلي إذا كان عضوا في هذه المصفوفة. إذا لم يكن الأمر كذلك، يجب أن يكون الرقم الأول. يتم إرجاع الأسلوب النظري المحدد "في" متجه الاختيار يتكون من 0 و 1 قيم يمكن استخدامها في خطوة ثانية لتحديد القيم الرئيسية فقط من المتجه الأصلي. باستخدام الصفيف :: APX يمكن كتابة هذا في بيرل مثل هذا: استخدم صارما؛ استخدام التحذيرات؛ استخدم صفيف :: APX QW (: ALL)؛ بلدي $ f = sub {$ _ * $ _ }؛ # نحن بحاجة إلى منتج خارجي بلدي X $؛ طباعة $ X-> حدد (! ($ x = iota (199) + 2) -> في ($ x | $ f | $ x))؛ كيف يعمل هذا؟ أول ناقل تم إنشاؤه: $ X = IOTA (99) + 2 هذا متجه يتم استخدامه بعد ذلك لإنشاء منتج خارجي (أساسا جدول الضرب بدون 1 عمود / صف: بلدي $ F = SUB {$ _ * $ _ }؛ # نحن بحاجة إلى منتج خارجي ... $ x | $ f | $ x ... the | properator يستخدم هنا كمنتج خارجي -Operator (إذا تم تطبيقها على هياكل بيانات APX، فستكون بمثابة ثنائي ثنائي أو) - فهو يتوقع مرجع دالة مثل $ F في المثال أعلاه. وبالتالي فمن الممكن إنشاء أي منتجات "خارجية" - لا تستند بالضرورة إلى الضرب فقط. باستخدام المتجه المخزن في $ x والمصفوفة الثانية الأبعاد، يتم استخدام هذه المصفوفة الداخلية لاستخلاص ناقلات منطقي يحتوي على 1 في كل مكان يتوافق مع عنصر في معامل اليد اليسرى الموجود في معامل اليد اليمنى . ثم يتم قلب هذا ناقل المنطقي باستخدام التحميل الزائد! -Operator:! ($ x = iota (99) + 2) -> في ($ x | $ F | $ x) باستخدام طريقة تحديد هذا ناقلات Boolean هذا حدد العناصر المطابقة ر o الأماكن التي تميزت مع 1 من المتجه الأصلي $ x مما يؤدي إلى متجه للأرقام الرئيسية بين 2 و 100: طباعة $ X-> حدد (! ($ x = iota (199) + 2) -> في ($ x | F |. $ x))؛ يتم ملخصها صارمة؛ استخدام التحذيرات؛ استخدم صفيف :: APX QW (: ALL)؛ # إنشاء ناقلات اثنين و : بلدي $ x = iota (3)؛ بلدي $ y = iota (3) + 3؛ طباعة "المتجه الأول هو $ X"؛ طباعة "المتجه الثاني هو $ y \ n"؛ # إضافة هذه المخلفات وطباعة النتيجة: طباعة "مجموع هذه المخلفات هو"، $ X + $ y، "\ n"؛ # إنشاء وظيفة لمضاعفة قيمين: لي $ f = sub {$ _ * $ _ }؛ # إنشاء منتج خارجي وطباعة ذلك: طباعة "المنتج الخارجي لهذن هذين المخلفات هو \ n"، $ x | $ F | $ y؛ gies عائدات المتجه الأول هو المتجه الثاني هو مجموع هذين المتجهين هو الناتج الخارجي لهذين هذين المتجهون هو ] الصفحة الرئيسية للمنتج


صفيف :: APX. برامج ذات صلة