PDA

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



Arash_janusV3
یک شنبه 29 مرداد 1391, 23:26 عصر
درود بر دوستان
سورس تبدیل عدد به حروف تا 15 رقم
در این پروژه از حلقه ها ، خروجی مقدار از تابع ، تبدیل کردن مقدار به int or double or string
swich ، case
استفاده شده است
امیدوارم با تجزیه و تحلیل این پروژه که خودتون انجام می دید به نکات کاربردی در کار با رشته ها و ... دست پیدا کنید
visualstudio 2010
ConvertNumberToString.rar (http://barnamenevis.org/attachment.php?attachmentid=91522&d=1345403729)

تست کردم مشکلی نداشت :لبخندساده:
با سپاس فراوان

Arash_janusV3
یک شنبه 29 مرداد 1391, 23:27 عصر
کدهای آن را هم می گذارم
در صورتی که در دانلودها مشکلی پیش آمد به کدها دسترسی داشته باشید


public string GetFigures(string x)
{
x = Convert.ToString(Double.Parse(x));
string text7;
string text10;

string[] textArray0_10 = new string[11];
textArray0_10[0] = "صفر";
textArray0_10[1] = "یک";
textArray0_10[2] = "دو";
textArray0_10[3] = "سه";
textArray0_10[4] = "چهار";
textArray0_10[5] = "پنج";
textArray0_10[6] = "شش";
textArray0_10[7] = "هفت";
textArray0_10[8] = "هشت";
textArray0_10[9] = "نه";

string[] textArray10_19 = new string[11];
textArray10_19[0] = "ده";
textArray10_19[1] = "یازده";
textArray10_19[2] = "دوازده";
textArray10_19[3] = "سیزده";
textArray10_19[4] = "چهارده";
textArray10_19[5] = "پانزده";
textArray10_19[6] = "شانزده";
textArray10_19[7] = "هفده";
textArray10_19[8] = "هجده";
textArray10_19[9] = "نوزده";

string[] textArray20_90 = new string[11];
textArray20_90[2] = "بیست";
textArray20_90[3] = "سی";
textArray20_90[4] = "چهل";
textArray20_90[5] = "پنجاه";
textArray20_90[6] = "شصت";
textArray20_90[7] = "هفتاد";
textArray20_90[8] = "هشتاد";
textArray20_90[9] = "نود";

string[] textArray100_900 = new string[11];
textArray100_900[1] = "یکصد";
textArray100_900[2] = "دویست";
textArray100_900[3] = "سیصد";
textArray100_900[4] = "چهارصد";
textArray100_900[5] = "پانصد";
textArray100_900[6] = "ششصد";
textArray100_900[7] = "هفتصد";
textArray100_900[8] = "هشتصد";
textArray100_900[9] = "نهصد";

string strHezar = "هزار";
string strHezar_ = "هزار" + " ";
string strMeliun = "میلیون";
string strMiliard = "میلیارد";
string strMiliard_ = "میلیارد" + " ";
string strTriliun = "تریلیون";
string strTriliun_ = "تریلیون" + " ";

string text4 = x;
text7 = "";
switch (text4.Length)
{
case 1:
if (x != "")
{
text7 = textArray0_10[Convert.ToInt32((string)x)];
}
break;

case 2:
if ((Int32.Parse(text4.Substring(text4.Length - 1, 1)) > 0) & (Convert.ToDouble(text4.Substring(0, 1)) > 1))
{
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( text4.Length - 1, 1)));
text7 = " و " + GetFigures(text10);
}
if (Convert.ToDouble(text4.Substring(0, 1)) > 1)
{
text7 = textArray20_90[Convert.ToInt32(text4.Substring(0, 1))] + text7;
}
if (Convert.ToDouble(text4.Substring(0, 1)) == 1)
{
text7 = textArray10_19[Convert.ToInt32(text4.Substring(text4.Length - 1, 1))];
}
break;

case 3:
if (Convert.ToDouble(text4.Substring(text4.Length - 2, 2)) > 0)
{
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( text4.Length - 2, 2)));
text7 = " و " + GetFigures(text10);
}
text7 = textArray100_900[(int)Math.Round(Convert.ToDouble(text4.Substring(0 , 1)))] + text7;
break;

case 4:
if (Convert.ToDouble(text4.Substring(text4.Length - 3, 3)) > 0)
{
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( text4.Length - 3, 3)));
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 1)));
text7 = GetFigures(text10) + strHezar + text7;
break;

case 5:
if (Convert.ToDouble(text4.Substring(text4.Length - 3, 3)) > 0)
{
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( text4.Length - 3, 3)));
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 2)));
text7 = GetFigures(text10) + strHezar + text7;
break;

case 6:
if (Convert.ToInt32(text4.Substring(text4.Length - 5, 5)) != 0)
{
if (Convert.ToInt32(text4.Substring(text4.Length - 3, 3)) > 0)
{
text10 = Convert.ToString(Convert.ToInt32(text4.Substring(t ext4.Length - 3, 3)));
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 3)));
text7 = GetFigures(text10) + strHezar_ + text7;
break;
}
text7 = textArray100_900[(int)Math.Round(Convert.ToDouble(text4.Substring(0 , 1)))] + strHezar_;
break;


case 7:
if (Convert.ToInt32(text4.Substring(text4.Length - 6, 6)) != 0)
{
text10 = Convert.ToString(Convert.ToInt32(text4.Substring(t ext4.Length - 6, 6)));
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 1)));
text7 = GetFigures(text10) + strMeliun + text7;
break;

case 8:
if (Convert.ToInt32(text4.Substring(text4.Length - 6, 6)) > 0)
{
text10 = Convert.ToString(Convert.ToInt32(text4.Substring(t ext4.Length - 6, 6)));
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 2)));
text7 = GetFigures(text10) + strMeliun + text7;
break;

case 9:
if (Convert.ToInt32(text4.Substring(text4.Length - 6, 6)) > 0)
{
text10 = Convert.ToString(Convert.ToInt32(text4.Substring(t ext4.Length - 6, 6)));
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 3)));
text7 = GetFigures(text10) + strMeliun + text7;
break;

case 10:
if (Convert.ToInt32(text4.Substring(text4.Length - 9, 9)) > 0)
{
text10 = Convert.ToString(Convert.ToInt32(text4.Substring(t ext4.Length - 9, 9)));
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 1)));
text7 = GetFigures(text10) + strMiliard + text7;
break;

case 11:
if (Convert.ToInt32(text4.Substring(text4.Length - 9, 9)) > 0)
{
text10 = Convert.ToString(Convert.ToInt32(text4.Substring(t ext4.Length - 9, 9)));
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 2)));
text7 = GetFigures(text10) + strMiliard + text7;
break;
case 12:
if (Int32.Parse(text4.Substring(text4.Length - 9, 9)) > 0)
{
text10 = text4.Substring(text4.Length - 9, 9);
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 3)));
text7 = GetFigures(text10) + strMiliard_ + text7;
break;

case 13:
if (double.Parse(text4.Substring(text4.Length - 12, 12)) > 0)
{
text10 = text4.Substring(text4.Length - 12, 12);
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 1)));
text7 = GetFigures(text10) + strTriliun + text7;

break;

case 14:
if (double.Parse(text4.Substring(text4.Length - 12, 12)) > 0)
{
text10 = text4.Substring(text4.Length - 12, 12);
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 2)));
text7 = GetFigures(text10) + strTriliun + text7;
break;

case 15:
if (double.Parse(text4.Substring(text4.Length - 12, 12)) > 0)
{
text10 = text4.Substring(text4.Length - 12, 12);
text7 = " و " + GetFigures(text10);
}
text10 = Convert.ToString(Convert.ToDouble(text4.Substring( 0, 3)));
text7 = GetFigures(text10) + strTriliun_ + text7;
break;
}
string text3 = " " + text7 + " ";
//return text3.Replace(" ", "");
return text3;
}


private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text == "")
{
label1.Text = "";
}
else
{
label1.Text = GetFigures(textBox1.Text) + " ریال ";
}
}

Arash_janusV3
پنج شنبه 09 شهریور 1391, 19:58 عصر
این نمونه مربوط به تبدیل عدد به حروف هست

سرس برنامه تبدیل عدد به حروف(Download) (http://barnamenevis.org/showthread.php?12172-%D8%B3%D8%B1%D8%B3-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AA%D8%A8%D8%AF%DB%8C%D9%84-%D8%B9%D8%AF%D8%AF-%D8%A8%D9%87-%D8%AD%D8%B1%D9%88%D9%81%28Download%29)

Arash_janusV3
پنج شنبه 09 شهریور 1391, 20:07 عصر
این نمونه ها مربوط به تبدیل عدد به حروف هستند

تبدیل عدد به حروف (http://barnamenevis.org/showthread.php?6320-%D8%AA%D8%A8%D8%AF%DB%8C%D9%84-%D8%B9%D8%AF%D8%AF-%D8%A8%D9%87-%D8%AD%D8%B1%D9%88%D9%81)
سورس تابع تبدیل عدد به حروف : (http://barnamenevis.org/showthread.php?247198-%D8%B3%D9%88%D8%B1%D8%B3-%D8%AA%D8%A7%D8%A8%D8%B9-%D8%AA%D8%A8%D8%AF%DB%8C%D9%84-%D8%B9%D8%AF%D8%AF-%D8%A8%D9%87-%D8%AD%D8%B1%D9%88%D9%81)
برنامه ی تبدیل عدد به حروف(اگه دوست داشتید دانلود کنید!) (http://barnamenevis.org/showthread.php?244279-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%DB%8C-%D8%AA%D8%A8%D8%AF%DB%8C%D9%84-%D8%B9%D8%AF%D8%AF-%D8%A8%D9%87-%D8%AD%D8%B1%D9%88%D9%81%28%D8%A7%DA%AF%D9%87-%D8%AF%D9%88%D8%B3%D8%AA-%D8%AF%D8%A7%D8%B4%D8%AA%DB%8C%D8%AF-%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%DA%A9%D9%86%DB%8C%D8%AF%21%29)
تابع تبدیل عدد به حروف (http://barnamenevis.org/showthread.php?5736-%D8%AA%D8%A7%D8%A8%D8%B9-%D8%AA%D8%A8%D8%AF%DB%8C%D9%84-%D8%B9%D8%AF%D8%AF-%D8%A8%D9%87-%D8%AD%D8%B1%D9%88%D9%81)

Samsam2010
پنج شنبه 09 شهریور 1391, 20:56 عصر
سلام

شاخ تر از این سراغ دارید بهم خبر بدید :|

تبدیل اعداد به حروف تا سقف گوگول پلکس پلکس (آخرین واحد شمارش) (http://barnamenevis.org/showthread.php?356566-%D8%AA%D8%A8%D8%AF%DB%8C%D9%84-%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF-%D8%A8%D9%87-%D8%AD%D8%B1%D9%88%D9%81-%D8%AA%D8%A7-%D8%B3%D9%82%D9%81-%DA%AF%D9%88%DA%AF%D9%88%D9%84-%D9%BE%D9%84%DA%A9%D8%B3-%D9%BE%D9%84%DA%A9%D8%B3-(%D8%A2%D8%AE%D8%B1%DB%8C%D9%86-%D9%88%D8%A7%D8%AD%D8%AF-%D8%B4%D9%85%D8%A7%D8%B1%D8%B4))

ali_habibi1384
پنج شنبه 09 شهریور 1391, 21:55 عصر
ميتونيد كاموننت آماده اين ابزارو با كلي امكانات ديگه در يك تكست باكس از امضام دانلود كنيد.:چشمک:

Samsam2010
پنج شنبه 09 شهریور 1391, 22:56 عصر
دوست من واقعا حال میکنم برنامه نویسهای به خوبی شما می بینم ، من خودم عددی نیستم اما الگوریتم تبدیل عدد به حروفی که توی پست5 هستش از نظر الگوریتم خیلی زیباست (سقف گوگول پلکس پلکس)
در ضمن اکثر سورس هایی که توی نت پیدا میشن تا سقف تریلیارد هستند (هر چند به بیشتر از اون احتیاجی نداریم) اما این الگوریتم برنامه هستش ، که زیباست یه نگاه بهش بنداز؛ تکست باکست هم دانلود کردم خیلی خوبه دستت درد نکنه :چشمک: