صفحة 1 من 2 12 الأخيرةالأخيرة
النتائج 1 إلى 15 من 27

الموضوع: لغز برمجي

  1. #1
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2008
    المشاركات
    555

    لغز برمجي



    يوجد مصفوفتين

    كود PHP:
    $x= array(1,2,3,4,5);
    $y= array(6,7,8,9,0); 
    اريدك ان تجمع العنصر الاول مع العنصر الثاني وتخزينها اين ما يحلو لك ومن ثم جمع ال5 ارقام التي طلعت معاك واذا طلع مجموعها 50يطبع 50 واذا ليس 50 يطبع not 50

    يلا في حد يقدر لها :1power::1power:

    من دون عملها يدويا يعني اعتبر ان المصفوفة بها 1000 عنصر وليس 5





    التعديل الأخير تم بواسطة exchangeboss ; 23-05-2009 الساعة 09:11 PM
    __________________
    مدونتي قريبا

    بيع ar-ci.com


  2. #2
    عضو شرف
    تاريخ التسجيل
    May 2007
    المشاركات
    1,647


    كود PHP:
    <?php

    $x 
    = array(12345678910);
    $y = array(10987654321);

    // Please ensure that both arrays have the same number of elements

    $restuls = array();
    $num count($x);
    for (
    $i 1$i <= $num$i++) {
          
    $results[] = $x[$i] + $y[$i];
    }

    if (
    array_sum($results) == 50) {
         echo 
    50;
    } else {
       echo 
    ' not 50 ';  
    }

    ?>
    لم أتحقق من صحة عملها، ولا أدري إن كان ما فهمته صحيحاً .. وكذلك لم أحاول كتابة الكود بصيغة مختصرة أكثر .. يعني حل عالماشي ..

    تحياتي، أشرف السمهوري





    __________________
    # اتبعني على Twitter
    # عِرفان ساهم ببناء المحتوى العربي العلمي على الإنترنت!

  3. #3
    عضو نشيط
    تاريخ التسجيل
    Oct 2008
    المشاركات
    283


    تفضل أخي
    كود PHP:
    <?php
    $x 
    = array(1,2,3,4,5);
    $y = array(6,7,8,9,0);  
    for (
    $i 0$i count($x); $i++) {
        
    $sum[] = $x[$i] + $y[$i];
    }
    if (
    array_sum($sum) != 50) {
        echo 
    "not 50";
    }else{
        echo 
    50;
    }
    ?>






    __________________
    اللهم وفقني لما تحبه وترضاه...

  4. #4
    عضو نشيط
    تاريخ التسجيل
    Oct 2008
    المشاركات
    283


    أسف أخي أشرف
    لم أرى الكود بتاعك قبل أن أضع مشاركتي

    فيه تشابه كبير !!





    __________________
    اللهم وفقني لما تحبه وترضاه...

  5. #5
    عضو شرف
    تاريخ التسجيل
    May 2007
    المشاركات
    1,647


    كودي فيه خطأ أساساً .. العداد يبدأ من 1 مع أنه يجب أن يبدأ من 0 .. عداد الـ for الذي كتبته أنت هو الصحيح ..

    أعتذر بسبب ضيق الوقت وعدم التركيز

    تحياتي، أشرف السمهوري





    __________________
    # اتبعني على Twitter
    # عِرفان ساهم ببناء المحتوى العربي العلمي على الإنترنت!

  6. #6
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2008
    المشاركات
    555


    شكرا لكما الطرق صحيحة ولكن انا عملتها من غير array_sum لاني صراحة اول مرة اعرف هذه الدالة انتظر الباقيين





    __________________
    مدونتي قريبا

    بيع ar-ci.com

  7. #7
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2008
    المشاركات
    555


    شرط بwhile وليس for





    __________________
    مدونتي قريبا

    بيع ar-ci.com

  8. #8
    عضو جديد
    تاريخ التسجيل
    Jan 2008
    المشاركات
    15


    السلام عليكم
    هذه مشاركتي الأولي في هذا المنتدى المميز أرجو أن أكون خفيفا عليكم

    كود 6 أسطر
    كود PHP:
    <?php
    $x 
    = array(1,2,3,4,5);
    $y = array(6,7,8,9,0);  
    if((
    array_sum($x) + array_sum($y)) != 50)echo 'Not ';
    echo 
    '50';
    ?>
    نجمع عناصر المصفوفة الأولى ونجمع عناصر الثانية ثم نجمع المجموعين

    طريقة ثانية:
    كود PHP:
    <?php
    $x 
    = array(1,2,3,4,5);
    $y = array(6,7,8,9,0);  
    if(
    array_sum(array_merge($x,$y)) != 50)echo 'Not ';
    echo 
    '50';
    ?>
    ندمج المصفوفتين ثم نجمع عناصرهما

    بدون حلقات تكرار حصلنا على نفس النتيجة

    ملاحظة:عدم استخدام حلقات التكرار أسرع والله تعالى أعلم





    التعديل الأخير تم بواسطة najm4u ; 23-05-2009 الساعة 10:51 PM
    __________________
    ان اصبت فمن الله وان اخطات فمن نفسي

  9. #9
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2008
    المشاركات
    555


    السلام عليكم
    هذه مشاركتي الأولي في هذا المنتدى المميز أرجو أن أكون خفيفا عليكم

    كود 6 أسطر
    كود PHP:
    <?php
    $x 
    = array(1,2,3,4,5);
    $y = array(6,7,8,9,0);  
    if((
    array_sum($x) + array_sum($y)) != 50)echo 'Not ';
    echo 
    '50';
    ?>
    نجمع عناصر المصفوفة الأولى ونجمع عناصر الثانية ثم نجمع المجموعين

    طريقة ثانية:
    كود PHP:
    <?php
    $x 
    = array(1,2,3,4,5);
    $y = array(6,7,8,9,0);  
    if(
    array_sum(array_merge($x,$y)) != 50)echo 'Not ';
    echo 
    '50';
    ?>
    ندمج المصفوفتين ثم نجمع عناصرهما

    بدون حلقات تكرار حصلنا على نفس النتيجة

    ملاحظة:عدم استخدام حلقات التكرار أسرع والله تعالى أعلم
    بدون دالة من دوال ال array_xxسوى الدالة array() :nice:





    __________________
    مدونتي قريبا

    بيع ar-ci.com

  10. #10
    عضو جديد
    تاريخ التسجيل
    Jan 2008
    المشاركات
    15


    أحرجتني







  11. #11
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2008
    المشاركات
    555



    لا مشكلة الموضوع لتبادل الخبرات

    تعيش وتاكل غيرها :app:





    __________________
    مدونتي قريبا

    بيع ar-ci.com

  12. #12
    عضو جديد
    تاريخ التسجيل
    Jan 2008
    المشاركات
    15


    جرب هذا الكود

    كود PHP:
    <?php
    $x
    = array(1,2,3,4,5);
    $y= array(6,7,8,9,0);
    $val 0;
    while(
    next($x) !== false){
        
    $val += current($x)+next($y);
    }
    if(
    $val != 50)echo 'Not ';
    echo 
    '50'
    ?>






    التعديل الأخير تم بواسطة najm4u ; 23-05-2009 الساعة 11:12 PM
    __________________
    ان اصبت فمن الله وان اخطات فمن نفسي

  13. #13
    عضو شرف
    تاريخ التسجيل
    May 2007
    المشاركات
    1,647


    كود PHP:
    $x = array(1,2,3,4,5);
    $y = array(6,7,8,9,0);

    $i 0;
    $num count($x);
    while (
    $i $num) {
          
    $array[] = $x[$i] + $y[$i];
          
    $i++;
    }

    $sum 0;
    $i 0;
    while (
    $i $num) {
          
    $sum += $array[$i];
          
    $i++;
    }

    if (
    $sum == 50) {
          echo 
    '50';
    } else {
          echo 
    'not 50';

    كود مفصل وممل إذا كنت تريد إلى هذا الحد من التفصيل .. هناك طرق مباشرة عديدة كما ذكرت في الردود السابقة .. لكن هذا إن كنت تريد تخزينها في مصفوفة جديدة ثم حساب المجموع وبطرق بدائية جداً ..

    تحياتي، أشرف السمهوري





    __________________
    # اتبعني على Twitter
    # عِرفان ساهم ببناء المحتوى العربي العلمي على الإنترنت!

  14. #14
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2008
    المشاركات
    555


    كود PHP:
    $x = array(1,2,3,4,5);
    $y = array(6,7,8,9,0);

    $i 0;
    $num count($x);
    while (
    $i $num) {
          
    $array[] = $x[$i] + $y[$i];
          
    $i++;
    }

    $sum 0;
    $i 0;
    while (
    $i $num) {
          
    $sum += $array[$i];
          
    $i++;
    }

    if (
    $sum == 50) {
          echo 
    '50';
    } else {
          echo 
    'not 50';

    كود مفصل وممل إذا كنت تريد إلى هذا الحد من التفصيل .. هناك طرق مباشرة عديدة كما ذكرت في الردود السابقة .. لكن هذا إن كنت تريد تخزينها في مصفوفة جديدة ثم حساب المجموع وبطرق بدائية جداً ..

    تحياتي، أشرف السمهوري
    جرب هذا الكود

    كود PHP:
    <?php
    $x
    = array(1,2,3,4,5);
    $y= array(6,7,8,9,0);
    $val 0;
    while(
    next($x) !== false){
        
    $val += current($x)+next($y);
    }
    if(
    $val != 50)echo 'Not ';
    echo 
    '50'
    ?>

    الكودين جميلين يوجد طرق اخرى ايضا انا بانتظار الباقي





    __________________
    مدونتي قريبا

    بيع ar-ci.com

  15. #15
    عضو شرف
    تاريخ التسجيل
    May 2007
    المشاركات
    1,647


    هل ترغب بكود من سطرين مثلاً؟

    كود PHP:
    $x= array(1,2,3,4,5);
    $y= array(6,7,8,9,0); 
    for (
    $i 0$sum 0$num count($x); $i $num$sum += $x[$i] + $y[$i]);
    echo (
    $sum == 50 50 'not 50'); 
    تحياتي، أشرف السمهوري





    __________________
    # اتبعني على Twitter
    # عِرفان ساهم ببناء المحتوى العربي العلمي على الإنترنت!





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض