PDA

View Full Version : نحوه ثبت و استفاده از فرمول های محاسباتی



khoshblagh
دوشنبه 19 مرداد 1388, 06:50 صبح
با سلام خدمت دوستان
در یک برنامه حقوق و دستمزد فرضی ممکن است یک کاربر که در یک شرکت فعالیت میکند جهت محاسبه مثلا اضافه کاری از فرمول خاصی استفاده نماید. حال اگر بخواهیم در این برنامه جدولی تعبیه و کاربر مجاز باشد که فرمول محاسباتی خود را ( منظور روش محاسبه اضافه کاری مورد مثال) خود را ثبت نماید و سپس برنامه از فرمول برای محاسبه استفاده نماید.
این کار چگونه باید انجام شود. منظورم روش کار به طور کلی میباشد.متشکرم

Felony
دوشنبه 19 مرداد 1388, 09:03 صبح
برای این کار باید تمامی دستورات رو برای برنامه تعریف کنی ، اگر بخوای تمامی عملگرهای محاسباتی رو بهش بدی کمی کار پیچیده ای میشه ولی شدنی هست .
شما باید برنامه رو طوری بنویسید که از اول فرمول شروع کنه به تحلیل و مثلا هرجا x بود عدد x رو بزراه و هرجا y بود عدد y رو بعد میاین دوباره از اول و اولین عملگر محاسباتی رو پیدا میکنید و اعداد قبل و بعدش رو طبق عملگر دریافت شده روشون محاسبات انجام میدین و حاصل محاسبه رو تو یه متغیر نگه میدارین و میرین سراغ پیدا کردن عملگر بعدی و این بار روی عدد قبلی به دست اومده و عدد بعد از عملگر محاسبه انجام میدین به همین ترتیب تا آخر عبارت رو پردازش میکنید ... ، البته اگر تقدم عملگرها براتون مهمه که باید باشه و میخواین کاربر بتونه توسط پرانتز تقدم عملگرها رو بالا ببره کار پیچیده تر میشه ...

Hsimple11
دوشنبه 19 مرداد 1388, 11:13 صبح
این فرمولها به هرحال زیاد پیچیده نیستند و ورودی اونا زیاد نیست. میتونید هر قسمت فرمول رو توی یک فیلد ذخیره کنید. یعنی از کاربر بخواین اینجوری ذخیره کنه. اینجوری کار خودتون رو ساده میکنید.

khoshblagh
دوشنبه 19 مرداد 1388, 11:28 صبح
با تشکر از دوستان
در صورت امکان با مثالی موضوع را روشن کنید. متشکرم

Hsimple11
سه شنبه 20 مرداد 1388, 01:43 صبح
مثلا به کاربر میگین زمان فرمول نویسی متغیر ها رو از X1 تا XN انتخاب کنه که چند تا متغیر داره و با اونا متغیر رو بنویسه. میتونید تمام عملگرها و توابع ریاضی پرکاربرد رو هم خودتون بنویسید و کاربر بتونه انتخاب کنه. مثلا توابع مثلثاتی، رادیکال، قدرمطلق و ... بعد فرمول تکه تکه در بانک ذخیره شه. عملگرها و توابع و متغیرها. بعد موقع استفاده از فرمول به تعداد متغیرها فیلد به کاربر بدید که اونا رو پر کنه. حالا کارتون دیگه ساده است. کافیه جایگزین کنید.البته برای اینکه بتونید هر نوع فرمول پیچیده ای رو طراحی کنید باید خیلی زمان بگذارید.