تور لحظه آخری
امروز : چهارشنبه ، 28 شهریور 1403    احادیث و روایات:  امام صادق (ع):هر كس از مكّه بر گردد و تصميم داشته باشد كه سال بعد هم به حجّ برود، بر عمرش افزو...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

تریدینگ ویو

کاشت ابرو

لمینت دندان

لیست قیمت گوشی شیائومی

صرافی ارکی چنج

صرافی rkchange

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

طراحی کاتالوگ فوری

Future Innovate Tech

پی جو مشاغل برتر شیراز

لوله بازکنی تهران

آراد برندینگ

وکیل کرج

خرید تیشرت مردانه

وام لوازم خانگی

نتایج انتخابات ریاست جمهوری

خرید ابزار دقیق

خرید ریبون

موسسه خیریه

خرید سی پی کالاف

واردات از چین

دستگاه تصفیه آب صنعتی

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

خرید نهال سیب سبز

قیمت پنجره دوجداره

بازسازی ساختمان

طراحی سایت تهران سایت

دیوار سبز

irspeedy

درج اگهی ویژه

ماشین سازان

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

شات آف ولو

تله بخار

شیر برقی گاز

شیر برقی گاز

خرید کتاب رمان انگلیسی

زانوبند زاپیامکس

بهترین کف کاذب چوبی

پاد یکبار مصرف

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

بلیط هواپیما

 






آمار وبسایت

 تعداد کل بازدیدها : 1816518278




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

نمايش تصادفي چند نوشته ( ASP Random ) -


واضح آرشیو وب فارسی:سایت ریسک: t=19175">نمايش تصادفي چند نوشته ( ASP Random ) Mostafa_sh 31 شهريور 1383, 13:37سلام من چند تا آبجکت دارم : strAval : aval strAvalScore : 1 strDovom : Dovom strDovomScore : 2 strSevom : Sevom strSevomScore : 3 میخوام این ها رو جوری رندم نشون بدم که امتیازهاشون هم توی نمایششون تاثیر داشته باشه. یعنی اونی که اتیازش 3 هست ، احتمال اینکه نشون داده بشه بیشتر باشه. من نمیخوام آبجکت ها حتماً به همین صورت باشه ، من فقط یه مثال زدم که منظورم رو متوجه بشید. ممنون. mehradmoein 31 شهريور 1383, 15:33با سلام، شما بايد از آبجكت content rotator استفاده كنيد. كد زير را وارد كنيد: ----------------------------------------------- set obj = server.createobject("mswc.contentrotaor") response.write obj.choosecontent("content.txt") ------------------------------------------- بعد يك فايل به نام content.txt ايجاد كنيد . ---------------------------------------------------------- content.txt: %%#3// your text %%#2// your text ----------------------------------------------------- هر چه عدد بزرگتر باشه احتمال نمايشش زياد تر هست Mostafa_sh 31 شهريور 1383, 16:30خوب اگر ركورد هاي من روي فايل تكست نباشند چي ؟ مثلاْ روي ديتابيس باشن يا توي خود همون صفحه اي اس پي باشند ؟ AliReza 26 03 مهر 1383, 04:03مي توني بين اعداد يك تا شش يك عدد را راندوم انتخاب كني و توي يك if ساده بيايي و بگي : اگر عدد 1 - 3 - 5 بود امتياز 3 را انتخاب كنه.... اگر عدد 2 - 4 بود امتبياز 2 را انتخاب بشه..... اگر هم عدد7 بود امتياز 1 انتخاب بشه..... به اين ترتيب امكان انتخاب شدن امتاز سه از همه بيشتر و امكان انتخاب امتياز 1 از همه كمتر مي باشد..... Mostafa_sh 04 مهر 1383, 17:42بابا اين چه ايده ايه آخه ؟ من بحثم يكي دو تا نيست من دارم راجع به 500 تا ركورد حذف ميزنم كه هر كدوم يك امتيزي دارن و بايد بطور رندوم با در نظر گرفتن امتيازهاشون سه تا از اين ركورد ها بيرون كشيده بشه ( قرعه كشي ) AliReza 26 04 مهر 1383, 18:03بابا اين چه ايده ايه آخه ؟ من بحثم يكي دو تا نيست من دارم راجع به 500 تا ركورد حذف ميزنم كه هر كدوم يك امتيزي دارن و بايد بطور رندوم با در نظر گرفتن امتيازهاشون سه تا از اين ركورد ها بيرون كشيده بشه ( قرعه كشي ) خوب استاد اشاره نكردي كه ركوردهات زياده.... AliReza 26 04 مهر 1383, 18:49اول توي متغيير total كل فيلد هات را وارد كن..... بعد عدد تصادفي بين 1 و تعداد كل فيلدهات توي متغيير iRnd ذخير ميشه.... <% randomize dim total,iRnd total = 500 iRnd = cint((total - 1) * rnd + 1) %> بعد به را حتي ميتوني ID فيلدي كه مساوي متغيير iRnd است را نمايش بدي... يه را ساده براي اينكه فيلدي شانس بيشتري براي نمايش داشته باشه اين كه اون فيلد بيشتر از يك شماره شناسايي باشه (ميتوني به تعداد امتيازي كه آبجكتت داره شماره شناسايي بهش بدي).... مثلا اگه آبجكت با شماره شناسايي 259 از 3 امتياز 2 را داشت بهش شماره 501 را هم بده.... در اين صورت شانس اون فيلد براي انتخاب شدن 2 برابر بقيه فيلد ها ميشه.... نكته : منظورم از اضافه كردن يك شماره شناسايي اضافه كردن يك ركورد توي پايگاه داده ات نيست بلكه منظورم اضافه كردن اون شماره تو برنامه ات است...... Mostafa_sh 07 مهر 1383, 18:33منظور شما رو در مورد امتيازها نفهميدم ولي اگر بايد توي سورس كاري انجام بدم براي هر ركورد بايد بگم كه من نميدونم ركوردها چند تان و چند تا امتياز دارن و همه اطلاعات توي ديتابيس هست. ممنون AliReza 26 08 مهر 1383, 01:57خوب ديگه.... ببين شما راحت ميتوني هر ركورد را توي يك آرايه دو بعدي بزاري.... اولين بعد ID ركورد و دوميش هم امتياز ركورد.... بعد واسه تعيين حد عددت(عددي كه از بين يك تا اين عدد يكي راندوم انتخاب ميشه) از راه زير استفاده كن : حاصل جمع بعد دوم ركورد ها حالا با فرمول زير يه عدد راندوم با توجه به فرمول بالا انتخاب ميشه : randomize dim total,iRnd total = حاصل جمع بعد دوم ركورد ها iRnd = cint((total - 1) * rnd + 1) مثال : خوب حالا فرض را بر اين ميگيريم كه تعداد كل ركوردهات 6 تا باشه(براي راحتي كار تعداد را پايين گرفتم) و متياز ها بصورت زير براي 6 امتياز ثبت شده (عدد اول آي دي ركورد است و عدد دوم هم امتياز ركوردت از 3): (1,3) (2,1) (3,3) (4,2) (5,1) (6,1) خوب با تو جه به امتياز ها ركورد اول و ركورد سوم بايد شانسشون براي انتخاب در راندوم بيشتر از بقيه ركورد ها باشند .... خوب حالا با فرمولي كه دادم شروع به محاسبه ميكنم : randomize dim total,iRnd total = حاصل جمع بعد دوم ركورد ها iRnd = cint((total - 1) * rnd + 1) خوب حالا total ما ميشه 11 فرض ميكنيم عدد راندوم (iRnd) هم 4 در اومده... يه توضيح ديگه : با الگوريتمي كه من دادم اگه عدد 1 تا 3 از راندوم انتخاب بشه ركورد اول نشون داده ميشه... اگه عدد 4 از راندوم انتخاب بشه ركورد دوم نشون داده ميشه... اگه عدد 5 تا 7 از راندوم انتخاب بشه ركورد سوم نشون داده ميشه... اگه عدد 8 تا 9 از راندوم انتخاب بشه ركورد چهارم نشون داده ميشه... اگه عدد 10 از راندوم انتخاب بشه ركورد پنجم نشون داده ميشه... اگه عدد 11 از راندوم انتخاب بشه ركورد ششم نشون داده ميشه... پس با توجه به الگوريتمي كه من دادم بايد فرمولي باشه كه اينو ثابت كنه ... اون راهش اينه: 2 - حالا از ركورد آخر مياييم پايين در حالي كه داريم محاسبه زير را انجام ميديم : dim test test برابر با total كه 11 در اومد - مقدار بعد دوم آخرين ركورد( كه تو مثال ما 1 بود) در نتيجه test مقدار 10 را مي گيره.... if test = iRnd then response.write(ركورد را) else test -= مقدار بعد دوم آخرين ركوردend if ببخشيد اگر جمله بنديم بد شد..... موفق باشي.... Mostafa_sh 08 مهر 1383, 17:27مرسي شرمندم كردي AliReza 26 08 مهر 1383, 23:46قابلي نداشت....




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 286]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن