نمایش نتایج 1 تا 7 از 7

نام تاپیک: محاسبات داینامیک

  1. #1

    محاسبات داینامیک

    سلام دوستان
    یک سوال داشتم.
    فرض کنید الان متغیر $count ما دو عدد رو جمع می کنه و نمایش میده.
    حالا اگر دو روز بعد نظر مدیر سیستم در مورد محاسبه این متغیر عوض بشه و به جای جمع بخواد اون رو به ضرب تبدیل کنه و یا به توان برسونه اول بعد جمع کنه.
    یک راهش اینه که برنامه نویس بره خودش دستی فرمول رو به چیزی که گفتن تغییر بده.
    راهه بعدی اینه که به صورت داینامیک باشه یعنی مدیر بره در بخش مدیریت فرمول رو ادیت کنه و من با توجه به فرمول جدید این کار رو انجام بدم.
    ---------
    به نظرتون بهترین راه برای این کار چیه ؟
    ضمن اینکه ممکنه طرف در محاسبش از فانکشنی استفاده کنه مثلا
    $count = fact (3) + sqrt(4)

    من باید فانکشن رو در بیارم از فروم ببینم موجود هست اگر بود مقدار داخلش رو بدم بهش محاسبه کنه.

    ---
    ممنون میشم دوستان یه راهنمایی کنن

  2. #2

    نقل قول: محاسبات داینامیک

    سلام.
    یه تابعی تو php داریم که میتونه این کار رو واست انجام بده. یه نگاهی به این لینک بنداز متوجحه میشی چطور ازش استفاده کنی : http://php.net/manual/en/function.eval.php

  3. #3

    نقل قول: محاسبات داینامیک

    میتونی فرومول رو در قالب یه رشته در دیتابیس ذخیره کنی بعد که رشته رو از دیتابیس خوندی با eval اجراش کنی. مثلا:
    eval('$count = pow(2, 4) + sqrt(4);');
    echo $count;


    یا اینطوری:
                    $n1=2;
    $n2=4;
    $n3=16;
    eval('$count = pow($n1, $n2) + sqrt($n3);');
    echo $count;

  4. #4

    نقل قول: محاسبات داینامیک

    سلام
    به نظر من با تابع بازگشتي و تابع explode ميشه يه كاريش كرد ولي خيلي پيچيدس و زمان ميخواد.
    يه ديد كلي اگه بخوام بگم به اين ترتيب كه در يه تابع بازگشتي به ترتيب اولويت كمتر عمليات(مثلا اول جمع بعد ضرب) اونقدر معادله رو اكسپلود كنيم تا به كوچكترين اجزا شكسته بشه حالا اجزاء كوچيك اگه تابعي روشون اعمال شده بود اعمال كنيم و اعدادشون رو بدست بيارين و با return كردن تابع عملياتي كه انجام شده به ترتيب بالعكس انجام ميشه.(اول ضرب ها بعد جمع ها و...).
    البته اين فقط در حد يه تئوري هست و چيزي كه به ذهن من رسيد. اميدوارم يه جرقه اي واسه حلش تو ذهنتون ايجاد شده باشه.

  5. #5

    نقل قول: محاسبات داینامیک

    ممنون از دوستان بابت راهنمایی هاشون
    تابع eval تا حد زیادی مشکل رو برطرف می کنه ولی ایرادی که هست اینه که ممکنه در رشته ای که اومدی نام تابعی باشه که من قبلا نوشتم .ممکنه به تابعی مثل sqrt مقداری داده بشه که خودش با اجرای تابع دیگری به دست بیاد که من دستی نوشتم. این رو من الان موندم چطوری به دست بیارم
    مثالش به این صورت هست:
    $formula = "conft() * fact() * sqrt(fetch_time()) * 1";

    الان میبینید که تابع sqrt مقدار داخلش از تابعی به نام fetch_time میاد که مثلا توسط خود من ایجاد شده.

  6. #6
    کاربر دائمی آواتار colors
    تاریخ عضویت
    بهمن 1389
    محل زندگی
    کــردســــــــــتــان
    پست
    1,075

    نقل قول: محاسبات داینامیک

    اینجوری میشه انجامش داد
    function calculation($first, $second, $action){
    switch($action){
    case 'ضرب':
    return ($first * $second);
    break;
    case 'تقسیم':
    return ($first / $second);
    break;
    case 'جمع':
    return ($first + $second);
    break;
    case 'منفی':
    return ($first - $second);
    break;
    }
    }

    echo calculation(5,2,'تقسیم')

    مثلا برای دریافت مقدار پارامتر سوم(نوع عملیات) یه list box گذاشت که طرف(مدیر) انتخاب کنه.

    میشه برای انجام عملیات روی هر عدد قبل از ارسال هم, همچین تابعی رو نوشته.

  7. #7

    نقل قول: محاسبات داینامیک

    نقل قول نوشته شده توسط Dead Space مشاهده تاپیک
    ممنون از دوستان بابت راهنمایی هاشون
    تابع eval تا حد زیادی مشکل رو برطرف می کنه ولی ایرادی که هست اینه که ممکنه در رشته ای که اومدی نام تابعی باشه که من قبلا نوشتم .ممکنه به تابعی مثل sqrt مقداری داده بشه که خودش با اجرای تابع دیگری به دست بیاد که من دستی نوشتم. این رو من الان موندم چطوری به دست بیارم
    مثالش به این صورت هست:
    $formula = "conft() * fact() * sqrt(fetch_time()) * 1";

    الان میبینید که تابع sqrt مقدار داخلش از تابعی به نام fetch_time میاد که مثلا توسط خود من ایجاد شده.
    مشکلی پیش نمیاد. هر متدی که خارج از eval قابل فراخوانی شدن باشه ، داخل eval هم قابل فراخوانی هست.

تاپیک های مشابه

  1. نرم افزار Report Generator داینامیک فارسی
    نوشته شده توسط mtajik در بخش گزارش سازی با Crystal Report
    پاسخ: 5
    آخرین پست: سه شنبه 13 مرداد 1388, 13:48 عصر
  2. چگنگی ایجادگزارش داینامیک باreport builder
    نوشته شده توسط reza_moridi در بخش ابزارهای گزارش سازی در دلفی
    پاسخ: 1
    آخرین پست: سه شنبه 12 خرداد 1383, 18:25 عصر
  3. درخواست الگوریتم Search برای صفحات استاتیک و داینامیک
    نوشته شده توسط الهام تفریشی در بخش ASP.NET Web Forms
    پاسخ: 7
    آخرین پست: شنبه 26 اردیبهشت 1383, 07:15 صبح
  4. محاسبات روی ماتریسها و مجموعه‌ها در VC(اظطراری)
    نوشته شده توسط Abbas Arizi در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 4
    آخرین پست: جمعه 24 بهمن 1382, 00:40 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •