Fa ساخت سخن روز در mmb

reza zareie

Active Member
آيا مي شه تو mmbسخن روز ساخت به اين صورت كه بعد هر روز جمله عوض بشه و جمله ي ديگه اي تو برنامه نمايش داده شه . من با ساخت جمله ها و نحوه ي نمايششون مشكلي ندارم فقط مي خوام توي يك روز يك جمله نشون داده شه ؟
 

Amit13

Well-Known Member
جملات رو قبل از نمايش كجا ميخواين ذخيره كنيد؟؟؟؟؟

-فايل TXT حاوي جملات
-استفاده از sql
-از اينترنت دانلود بشه
 

Amit13

Well-Known Member
كسي نبود كمكم كنه؟ توروخدا اگه نميشه رك و پوس كنده بگيد نمي شه

كاملا عمليه.پوست كنده.....
يك روش ميگم شايد به دردت خورد:

خوب من ميخوام جملات از يك فايل txtدريافت بشه
اول شما نياز به يك رشته داريد تا تاريخ رو ثبت كنه. برنامه ابتدا تاريخ روز رو با تاريخ ثبت شده مقايسه كنه اگه متفاوت بود جمله ي جديد بخونه (به اضافه اينكه تاريخ رو آپديت كنه) اگه متفاوت نبود همون جمله رو نمايش بده.

مثلا اگه تاريخ رو در $date و $today تاريخ روز باشه:

کد:
today$=CBK_DateShort
If (date$=today$) Then
  LoadVariable("numberL","numberL")
Else
  numberL=RND(numberOfTexts)
  SaveVariable("numberL","numberL")
  ****And Save Date$
End
filename$='c:\sokhanha.txt'
todayText$=StrFromFile(filename$,numerL,1)
 
آخرین ویرایش:

Rezvani Soft

Active Member
ببخشید فکر کنم دقیقا سوال رو متوجه شدم چون گفته بودن با نحوه نمایش متن مشکلی ندارم گفتم میتونن کد
کد:
  Message("امروز يک شنبه است","")
را برای هر روز به
کد:
LoadText("Text","<SrcDir>\file.txt")
تغییر بدن در ضمن زمان ارسال پاسخ شما و من هم زمان بوده و من متوجه پاسخ شما نشده ام.
 
آخرین ویرایش:

reza zareie

Active Member
تو مثالي كه جناب Rezvani گذاشتن ايشون فرضشون براينكه من ميخوام تو هرروز هفته يك جمله رو نمايش بده مثلا تو كل سال شنبه ها فقط يك جمله نشون داده شه اما من مي خوام براي مثال 100 تا جمله دارم اين 100 تا جمله رو توي 100 روز نشون بده ( براي هرروز يك جمله)
 

m javad

کاربر متخصص
اگه هر جمله اي كه داري كمتر از 255 كاركتر باشه ميتوني هر جمله رو داخل يك خط بنويسي كارتون آسونتره.
این قانون از کجا سرو کلش پیدا شده !!!!!!

تو مثالي كه جناب rezvani گذاشتن ايشون فرضشون براينكه من ميخوام تو هرروز هفته يك جمله رو نمايش بده مثلا تو كل سال شنبه ها فقط يك جمله نشون داده شه اما من مي خوام براي مثال 100 تا جمله دارم اين 100 تا جمله رو توي 100 روز نشون بده ( براي هرروز يك جمله)
خب روش کلی همون هست
شما باید چند نکته رو تو کارت در نظر بگیری
اول اینکه چنتا جمله داری؟ 365 یا کمتر یا بیشتر
دوم اینکه تکرار جمله ها در یک دوره چند روزه مجاز هست، مثلا اگر قرار باشه تو یکسال تکراری نباشه
پس باید 365 یا بیشتر جمله داشته باشی و دوره رو هم 365 روزه بگیری
با یه تابع rnd و ثبت شماره جمله های گفته شده کارت حله
یعنی یه جمله رو به صورت رندم میگیری و بعد از تو لیست دوم چک میکنی که آیا قبلا گفته شده یا نه
اگه نه که همون رو نمایش میدید و اگر بله که دوباره یه جمله به رندوم انتخاب میشه
 

reza zareie

Active Member
جناب m javad ببخشيد ميشه يكم بيشتر درباره ي اين موضوع توضيح بدين كه چطوري بايد چك كنم كه جمله قبلا تكرار شده يا نه ؟
 

m javad

کاربر متخصص
فرض کنیم که 10 تا جمله دارید
روز اول توی رندم جمله 5ام نمایش داده شده
شما توی یه فایل متنی عدد 5 رو یادداشت میکنید
روز بعد جمله هفتم انتخاب میشه
برنامتون قبل از نمایش، خطوط اون فایل دوم رو بررسی میکنه
که تا الان تنها5 توی اون ثبت شده، پس جمله هفتم هم نمایش داده میشه و عدد 7 هم توی خط دوم ثبت میشه
و به همین صورت
فرضا که روز سوم دوباره جمله پنجم انتخاب شد
برنامه قبل از نمایش ، شروع به چک میکنه
خط اول 5 هست که برابر جمله انتخابی امروز هست
پس نمایش نمیده و دستور مجدد برای رندم گیری رو میده
اگر مجدد عددی اومد که تو لیست هست دوباره این کار رو انجام میده تا به نتیجه برسه
البته این کار برای مقادیر زیاد ، جالب نیست
چون احتمال داره خیلی طول بکشه
البته راه هایی هست که بشه این راه رو بهینه کرد!
 

reza zareie

Active Member
توروخدا منو ببخشيد يا من خيلي خنگم يا شما خيلي حرفه اي توضيح ميدين البته فكر مي كنم همون اولي درست باشه چون توضيحات شما خيلي واضح و روشنه . مي شه يه مثال خيلي ساده بذاريد
 

جدیدترین ارسال ها

بالا