PDA

View Full Version : سوال: محاسبه شماره آیه در پروژه قرائت قرآن



alonmahdi
پنج شنبه 02 آبان 1392, 23:12 عصر
سلام دوستان عزیز
من دارم یک برنامه می نویسم برای مدیریت در قرائت قران.
که در حین کار به مشکلی بر خوردم .
یکم توضیح می دم بعد سوالم رو مطرح می کنم.
کار برنامه به این صورته که نام سوره ای رو برای شروع و همچنین آیه اون سوره و همین طور تعداد آیه که می خواهد به خواند رو وارد می کنه بعد برنامه باید بهش بگه که شما تا سوره x آیه x رو بخون.
یعنی مثلا اگه طرف به عنوان شروع آیه 1 سوره حمد رو انتخاب کرد ، برنامه باید بیاد حساب کنه که مثلا سوره حمد 7 آیه داره بعد از تعداد آیه ایه ای که می خواد در اون روز بخونه کم بکنه که اگه فرض بگیریم کاربر تعداد آیه در روز رو 50 وارد کرده باشه میشه 43 تا آیه از سوره بعدی که در حقیقت میشه 43 آیه از سوره بقره رو باید بهش بگه بخون!

حالا لطفا کمک کنید که چگونه این الگوریتم رو پیاده سازی کنم !!!:ناراحت:
باتشکر
عیدتون هم مبارک :بوس:

samin_panahi
پنج شنبه 02 آبان 1392, 23:38 عصر
سلام
خوب تو دیتابیست تعداد آیه های هر سوره + شماره ی هر سوره رو وارد می کنی
بعد برنامه میاد چک می کنه اگر عددی که کاربر برای شروع انتخاب کرده از تعداد آیه های سوره بیشتر نبود عدد بعدی که تعداد آیه در روز هست رو نگاه می کنه و با تعداد آیه های سوره مقایسه می کنه اگه کمتر بود که هیچ
اگه بیشتر بود بعد ار خوندن سوره اول یه عدد به شماره ی سوره اضافه می کنه (می ره تو سوره ی بقره) و تعداد آیاتی که از سوره ی اول (حمد) خونده رو از تعداد آیه در روز (50) کم می کنه و از سوره ی بعدی می خونه
حالا باید تقریبا همچین چیزی رو با توجه به برنامه کدش کنید

csharpdoost
پنج شنبه 02 آبان 1392, 23:38 عصر
//مثال
int numAyatSore1= 100;
int numAyatSore2 = 120;
int ayatDarRoz = 50;
int startAyeh = 10;
int endAyeh = 0;


if ((startAyeh + ayatDarRoz) > numAyatSore1)
{
//اخرین آیه ای که از سوره بعدی باید بخواند
endAyeh = ((startAyeh + ayatDarRoz) - numAyatSore1);
}
else
endAyeh = startAyeh + ayatDarRoz;

alonmahdi
پنج شنبه 02 آبان 1392, 23:49 عصر
سلام
خوب تو دیتابیست تعداد آیه های هر سوره + شماره ی هر سوره رو وارد می کنی
بعد برنامه میاد چک می کنه اگر عددی که کاربر برای شروع انتخاب کرده از تعداد آیه های سوره بیشتر نبود عدد بعدی که تعداد آیه در روز هست رو نگاه می کنه و با تعداد آیه های سوره مقایسه می کنه اگه کمتر بود که هیچ
اگه بیشتر بود بعد ار خوندن سوره اول یه عدد به شماره ی سوره اضافه می کنه (می ره تو سوره ی بقره) و تعداد آیاتی که از سوره ی اول (حمد) خونده رو از تعداد آیه در روز (50) کم می کنه و از سوره ی بعدی می خونه
حالا باید تقریبا همچین چیزی رو با توجه به برنامه کدش کنید
اولا ممنون بابت نظرتون .
ولی دوست گلم منم می دونم باید چنین کاری بکنم اما همون طور که گفتم که توی پیاده سازیش با کد مشکل پیدا کردم.

alonmahdi
پنج شنبه 02 آبان 1392, 23:52 عصر
//مثال
int numAyatSore1= 100;
int numAyatSore2 = 120;
int ayatDarRoz = 50;
int startAyeh = 10;
int endAyeh = 0;


if ((startAyeh + ayatDarRoz) > numAyatSore1)
{
//اخرین آیه ای که از سوره بعدی باید بخواند
endAyeh = ((startAyeh + ayatDarRoz) - numAyatSore1);
}
else
endAyeh = startAyeh + ayatDarRoz;


این الگوریتم نیست مشکل داره اگه سوره اولی بزرگتر بود چی؟ کار نمی کنه اون وقت

csharpdoost
جمعه 03 آبان 1392, 00:00 صبح
این الگوریتم نیست مشکل داره اگه سوره اولی بزرگتر بود چی؟ کار نمی کنه اون وقت
چه ارتباطی به این داره که سوره اول بزرگتر باشه یا کوچکتر؟ ویرایش کردم دوباره دقت کن

samin_panahi
جمعه 03 آبان 1392, 02:45 صبح
اولا ممنون بابت نظرتون .
ولی دوست گلم منم می دونم باید چنین کاری بکنم اما همون طور که گفتم که توی پیاده سازیش با کد مشکل پیدا کردم.
من نمی دونم شما کدتون رو بر چه اساسی دارید می نویسید که تو پیاده سازی کمکتون کنم
یه تکه کد نوشتم که توش از آرایه برای نگه داری تعداد آیات استفاده کردم و فرض کردم تعداد سوره ها 5 تاست شامل حمد (7 آیه)، بقره (286)، آل عمران (200)، نسا (176)، مائده (120)
و یه سری شرط رو توش بررسی کردم شما هم باید تو برنامه ی خودتون همچین شرط هایی رو بررسی کنید البته این کدی که دادم کامل نیست و یه جاهایی ایراد داره شرط های دیگه ای هم باید بررسی شه تا دقیق کار کنه
اگر جایی رو متوجه نشدید بپرسید توضیح بدم

alonmahdi
جمعه 03 آبان 1392, 20:25 عصر
من نمی دونم شما کدتون رو بر چه اساسی دارید می نویسید که تو پیاده سازی کمکتون کنم
یه تکه کد نوشتم که توش از آرایه برای نگه داری تعداد آیات استفاده کردم و فرض کردم تعداد سوره ها 5 تاست شامل حمد (7 آیه)، بقره (286)، آل عمران (200)، نسا (176)، مائده (120)
و یه سری شرط رو توش بررسی کردم شما هم باید تو برنامه ی خودتون همچین شرط هایی رو بررسی کنید البته این کدی که دادم کامل نیست و یه جاهایی ایراد داره شرط های دیگه ای هم باید بررسی شه تا دقیق کار کنه
اگر جایی رو متوجه نشدید بپرسید توضیح بدم

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

barnamenevisjavan
شنبه 04 آبان 1392, 07:49 صبح
این پروژه هم خیلی مفید هستش رایگان دانلود کنید
http://barnamenevisjavan.ir/1876/%D8%B3%D9%88%D8%B1%D8%B3-%D9%86%D8%B1%D9%85-%D8%A7%D9%81%D8%B2%D8%A7%D8%B1-%D9%82%D8%B1%D8%A2%D9%86-%D8%A8%D8%A7-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE/