private string BDTtakatowords(Int64 BDTtaka)
{
string result="";
if ((BDTtaka >= 1) && (BDTtaka <= 10))
{
if ((BDTtaka % 10) == 1) result = "One";
if ((BDTtaka % 10) == 2) result = "Two";
if ((BDTtaka % 10) == 3) result = "Three";
if ((BDTtaka % 10) == 4) result = "Four";
if ((BDTtaka % 10) == 5) result = "Five";
if ((BDTtaka % 10) == 6) result = "Six";
if ((BDTtaka % 10) == 7) result = "Seven";
if ((BDTtaka % 10) == 8) result = "Eight";
if ((BDTtaka % 10) == 9) result = "Nine";
if ((BDTtaka % 10) == 0) result = "Ten";
}
if (BDTtaka > 9 && BDTtaka < 20)
{
if (BDTtaka == 11) result = "Eleven";
if (BDTtaka == 12) result = "Twelve";
if (BDTtaka == 13) result = "Thirteen";
if (BDTtaka == 14) result = "Forteen";
if (BDTtaka == 15) result = "Fifteen";
if (BDTtaka == 16) result = "Sixteen";
if (BDTtaka == 17) result = "Seventeen";
if (BDTtaka == 18) result = "Eighteen";
if (BDTtaka == 19) result = "Nineteen";
if (BDTtaka == 20) result = "Twenty";
}
if (BDTtaka > 20 && (BDTtaka/10) == 2 && (BDTtaka % 10) == 0) result = "Twenty";
if (BDTtaka > 20 && (BDTtaka/10) == 3 && (BDTtaka % 10) == 0) result = "Thirty";
if (BDTtaka > 20 && (BDTtaka/10) == 4 && (BDTtaka % 10) == 0) result = "Forty";
if (BDTtaka > 20 && (BDTtaka/10) == 5 && (BDTtaka % 10) == 0) result = "Fifty";
if (BDTtaka > 20 && (BDTtaka/10) == 6 && (BDTtaka % 10) == 0) result = "Sixty";
if (BDTtaka > 20 && (BDTtaka/10) == 7 && (BDTtaka % 10) == 0) result = "Seventy";
if (BDTtaka > 20 && (BDTtaka/10) == 8 && (BDTtaka % 10) == 0) result = "Eighty";
if (BDTtaka > 20 && (BDTtaka/10) == 9 && (BDTtaka % 10) == 0) result = "Ninty";
if (BDTtaka > 20 && (BDTtaka/10) == 2 && (BDTtaka % 10) != 0)
{
if ((BDTtaka % 10) == 0) result = "Twenty";
if ((BDTtaka % 10) == 1) result = "Twenty One";
if ((BDTtaka % 10) == 2) result = "Twenty Two";
if ((BDTtaka % 10) == 3) result = "Twenty Three";
if ((BDTtaka % 10) == 4) result = "Twenty Four";
if ((BDTtaka % 10) == 5) result = "Twenty Five";
if ((BDTtaka % 10) == 6) result = "Twenty Six";
if ((BDTtaka % 10) == 7) result = "Twenty Seven";
if ((BDTtaka % 10) == 8) result = "Twenty Eight";
if ((BDTtaka % 10) == 9) result = "Twenty Nine";
}
if (BDTtaka > 20 && (BDTtaka/10) == 3 && (BDTtaka % 10) != 0)
{
if ((BDTtaka % 10) == 1) result = "Thirty One";
if ((BDTtaka % 10) == 2) result = "Thirty Two";
if ((BDTtaka % 10) == 3) result = "Thirty Three";
if ((BDTtaka % 10) == 4) result = "Thirty Four";
if ((BDTtaka % 10) == 5) result = "Thirty Five";
if ((BDTtaka % 10) == 6) result = "Thirty Six";
if ((BDTtaka % 10) == 7) result = "Thirty Seven";
if ((BDTtaka % 10) == 8) result = "Thirty Eight";
if ((BDTtaka % 10) == 9) result = "Thirty Nine";
}
if (BDTtaka > 20 && (BDTtaka/10) == 4 && (BDTtaka % 10) != 0)
{
if ((BDTtaka % 10) == 1) result = "Forty One";
if ((BDTtaka % 10) == 2) result = "Forty Two";
if ((BDTtaka % 10) == 3) result = "Forty Three";
if ((BDTtaka % 10) == 4) result = "Forty Four";
if ((BDTtaka % 10) == 5) result = "Forty Five";
if ((BDTtaka % 10) == 6) result = "Forty Six";
if ((BDTtaka % 10) == 7) result = "Forty Seven";
if ((BDTtaka % 10) == 8) result = "Forty Eight";
if ((BDTtaka % 10) == 9) result = "Forty Nine";
}
if (BDTtaka > 20 && (BDTtaka/10) == 5 && (BDTtaka % 10) != 0)
{
if ((BDTtaka % 10) == 1) result = "Fifty One";
if ((BDTtaka % 10) == 2) result = "Fifty Two";
if ((BDTtaka % 10) == 3) result = "Fifty Three";
if ((BDTtaka % 10) == 4) result = "Fifty Four";
if ((BDTtaka % 10) == 5) result = "Fifty Five";
if ((BDTtaka % 10) == 6) result = "Fifty Six";
if ((BDTtaka % 10) == 7) result = "Fifty Seven";
if ((BDTtaka % 10) == 8) result = "Fifty Eight";
if ((BDTtaka % 10) == 9) result = "Fifty Nine";
}
if (BDTtaka > 20 && (BDTtaka/10) == 6 && (BDTtaka % 10) != 0)
{
if ((BDTtaka % 10) == 1) result = "Sixty One";
if ((BDTtaka % 10) == 2) result = "Sixty Two";
if ((BDTtaka % 10) == 3) result = "Sixty Three";
if ((BDTtaka % 10) == 4) result = "Sixty Four";
if ((BDTtaka % 10) == 5) result = "Sixty Five";
if ((BDTtaka % 10) == 6) result = "Sixty Six";
if ((BDTtaka % 10) == 7) result = "Sixty Seven";
if ((BDTtaka % 10) == 8) result = "Sixty Eight";
if ((BDTtaka % 10) == 9) result = "Sixty Nine";
}
if (BDTtaka > 20 && (BDTtaka/10) == 7 && (BDTtaka % 10) != 0)
{
if ((BDTtaka % 10) == 1) result = "Seventy One";
if ((BDTtaka % 10) == 2) result = "Seventy Two";
if ((BDTtaka % 10) == 3) result = "Seventy Three";
if ((BDTtaka % 10) == 4) result = "Seventy Four";
if ((BDTtaka % 10) == 5) result = "Seventy Five";
if ((BDTtaka % 10) == 6) result = "Seventy Six";
if ((BDTtaka % 10) == 7) result = "Seventy Seven";
if ((BDTtaka % 10) == 8) result = "Seventy Eight";
if ((BDTtaka % 10) == 9) result = "Seventy Nine";
}
if (BDTtaka > 20 && (BDTtaka/10) == 8 && (BDTtaka % 10) != 0)
{
if ((BDTtaka % 10) == 1) result = "Eighty One";
if ((BDTtaka % 10) == 2) result = "Eighty Two";
if ((BDTtaka % 10) == 3) result = "Eighty Three";
if ((BDTtaka % 10) == 4) result = "Eighty Four";
if ((BDTtaka % 10) == 5) result = "Eighty Five";
if ((BDTtaka % 10) == 6) result = "Eighty Six";
if ((BDTtaka % 10) == 7) result = "Eighty Seven";
if ((BDTtaka % 10) == 8) result = "Eighty Eight";
if ((BDTtaka % 10) == 9) result = "Eighty Nine";
}
if (BDTtaka > 20 && (BDTtaka/10) == 9 && (BDTtaka % 10) != 0)
{
if ((BDTtaka % 10) == 1) result = "Ninty One";
if ((BDTtaka % 10) == 2) result = "Ninty Two";
if ((BDTtaka % 10) == 3) result = "Ninty Three";
if ((BDTtaka % 10) == 4) result = "Ninty Four";
if ((BDTtaka % 10) == 5) result = "Ninty Five";
if ((BDTtaka % 10) == 6) result = "Ninty Six";
if ((BDTtaka % 10) == 7) result = "Ninty Seven";
if ((BDTtaka % 10) == 8) result = "Ninty Eight";
if ((BDTtaka % 10) == 9) result = "Ninty Nine";
}
return result;
}
protected void Button1_Click(object sender, System.EventArgs e)
{
TextBox2.Text = BDTtaka(Convert.ToInt64(TextBox1.Text));
}
Проблема: когда я вхожу в Text1, например, 20 или 20000 или 2000000, тогда показываю только Таку или только Тысяча Така или Лак Така только соответственно. Но должен показывать двадцать или двадцать тысяч двадцати лаков соответственно.Перевод валюты Бангладеш на слова
Я не могу ответить на ваш вопрос, потому что я не очень понимаю, это возможно потому, что мне не хватает знаний ABOU т валюты в Бангладеш, но вам было бы лучше, если бы вы заменили вашу свернутую (а также несколько багги) коллекцию операторов if с помощью простого массива числовых слов с 99 элементами. –
В нашу бангладешскую валюту: 1 = одна така, 10 = десять така, 100 = сто така, 1000 = одна тысяча така, 99000 = девяносто девять тысяч така, 100000 = одна лак така, 1000000 = десять лак така, 10000000 = one crore taka –
Мне было поручено поддерживать такой код раньше. Ради вашего здравомыслия и здравомыслия ваших преемников, пожалуйста, найдите время, чтобы упростить этот код. Как только вы это сделаете, я думаю, вы обнаружите, что ваш вопрос намного легче ответить, поскольку это будет естественное расширение шаблона, который вы использовали для упрощения первоначального подхода. –