PDA

View Full Version : کمک در باره نوشتن برنامه نوبت دهی مثل بانک ها



darkwish
دوشنبه 08 مهر 1392, 20:34 عصر
سلام دوستان و اساتید گرامی
من می خواهم که یک برنامه نوبت دهی مثل بانک برای برنامم بنویسم
که هرکس نوبتش شد شماره شو مثل بانک بخونه ممنون می شم که راهنماییم کنید.

behnam-soft
دوشنبه 08 مهر 1392, 21:07 عصر
سلام
برای این کار فکر می کنم لازم داری تمام عدد ها رو اول از همه ضبط کنی، البته تا 19 رو هر کدوم کامل، بعد بیست، بعد بیستو، حالا می گی اگر شماره برابر با 21 بود، اول فایل صوتی مربوط به بیستو رو لود کن و بعد فایل مربوط به 1 خب حالا این دو تا رو پشت سر هم اجرا کن !!!

darkwish
دوشنبه 08 مهر 1392, 21:22 عصر
سلام ممنون از توجهت
فایل های صوتی را دارم یه تکه کد نیاز دارم که بتونم روش کار کنم.

behnam-soft
سه شنبه 09 مهر 1392, 01:16 صبح
اگر با نحوه خوندن و اجرا کردن فایل های MP3 آشنایی داری، بقیه اش که دیگه خیلی کاری نداره!
یه دکمه بذار تو صفحه که با هربار کلیک، یکی بهش اضافه میشه،حالا اون عدد رو بفرست به یه تابع که با اعداد مقایسه می کنه، در نهایت، وقتی فهمیدی مقدار عددت برابر با چه فایلی هست،اونا رو در حافظه بخون و اجرا کن! من متاسفانه آشنایی با نحوه خوندن فایل های صوتی ندارم وگرنه بیشتر می تونستم کمکت کنم.

darkwish
سه شنبه 09 مهر 1392, 01:51 صبح
ممنون دوست عزیز
من تا یه جایی پیش رفتم
نام هر فایل صوتی به این صورت هست
مثلا: 100.wav برای عدد صد
4.wav برای عدد چهار
_50.wav برای پنجاه و
منو عدد مورد نظر را برای اینکه بتونم این صدا ها رو ترکیب کنم و بخونم از کد زیر اسفاده کردم


public void num(int n)
{

string s1 = n.ToString(); string o = null;
if (s1.Length == 1)
{
txt2.Text = txt2.Text + s1;
return;
}
for (int i = 0; i < s1.Length - 1; i++)
{
o = o + "0";
}
string s2 = "1" + o;
int n1 = int.Parse(s2);
int d;
d = n - (n % n1);
string s3 = d.ToString();
if (s2.Length == 1)
{
txt2.Text = txt2.Text + d.ToString();
}

if (s2.Length > 1)
{
txt2.Text = txt2.Text + s3 + "_";
int r = n % n1;
num(r);
}
}
این کد یک عدد را در یافت میکند و آنرا به این صورت نمایش می دهد
برای عدد 459 به طور مثال خروجی رشته زیر می شود 9_50_400 حال اگر _400 را بتوان از این رشته بیرون آورد میتوان چهار صد و را پخش کرد _50 را خارج کرد میتوان پنجاه و را پخش کرد اگر 9 را خارج کنیم که اگر پشت سر هم اجرا شود چهارصد و پنجاه و نه پخش کی شود مشکل من تو این قسمت هست که نمی تونم این کار را برای تمامی اعداد انجام دهم
کد برنامه ای که نوشتم را تو لینک می زارم دوستان ببینید می تونید یه بلایی سرش بیارید
http://uplod.ir/i0rnzlimmngn/test.rar.htm

samin_panahi
سه شنبه 09 مهر 1392, 03:14 صبح
این کد یک عدد را در یافت میکند و آنرا به این صورت نمایش می دهد
برای عدد 459 به طور مثال خروجی رشته زیر می شود 9_50_400 حال اگر _400 را بتوان از این رشته بیرون آورد میتوان چهار صد و را پخش کرد _50 را خارج کرد میتوان پنجاه و را پخش کرد اگر 9 را خارج کنیم که اگر پشت سر هم اجرا شود چهارصد و پنجاه و نه پخش کی شود مشکل من تو این قسمت هست که نمی تونم این کار را برای تمامی اعداد انجام دهم
کد برنامه ای که نوشتم را تو لینک می زارم دوستان ببینید می تونید یه بلایی سرش بیارید

http://uploadtak.com/images/l43_talafoz_adad.rar

نتونستم برنامه تون رو دانلود کنم ولی باید از split استفاده کنید
تو این برنامه ای که براتون ضمیمه کردم عدد مورد نظر ( مثلا 9_50_400 ) رو وارد می کنید
خروجی رو همون طوری که می خواید می ده
حالا باید با توجه به برنامه ی خودتون کد رو تغییر بدید

darkwish
سه شنبه 09 مهر 1392, 13:33 عصر
ممنون دوست عزیز خیلی نوکرتیم

samin_panahi
سه شنبه 09 مهر 1392, 19:27 عصر
ممنون دوست عزیز خیلی نوکرتیم
قابلی نداشت :)

HAMRAHSOFT.IR
جمعه 29 خرداد 1394, 18:11 عصر
سلام دوستان کسی مشابه این برنامه نوشته؟ نمونه مجود هست؟