PDA

View Full Version : رفع ارور برنامه



pooria_googooli
چهارشنبه 08 تیر 1390, 17:19 عصر
هرچی گشتم جایی برای رفع اشکال پیدا نکردم . این برنامه برا تبدیل عدد به حروف هستش ولی نمیدونم چرا این ارور رو میده : the name getnum3 does not exist in current context اینم کد برنامه :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;


namespace WindowsFormsApplication4
{
class MyTools
{
private static string[] yekan = new string[10] { "صفر", "یک", "دو", "سه", "چهار", "پنج", "شش", "هفت", "هشت", "نه" };
private static string[] dahgan = new string[10] { "", "", "بیست", "سی", "چهل", "پنجاه", "شصت", "هفتاد", "هشتاد", "نود" };
private static string[] dahyek = new string[10] { "ده", "یازده", "دوازده", "سیزده", "چهارده", "پانزده", "شانزده", "هفده", "هجده", "نوزده" };
//array[10..19]
private static string[] sadgan = new string[10] { "", "یکصد", "دویست", "سیصد", "چهارصد", "پانصد", "ششصد", "هفتصد", "هشتصد", "نهصد" };
private static string[] basex = new string[5] { "", "هزار", "میلیون", "میلیارد", "تریلیون" };


private static string getnum3(int num3)
{
string s = "";
int d3, d12;
d12 = num3 % 100;
d3 = num3 / 100;
if (d3 != 0)
s = sadgan[d3] + " و ";
if ((d12 >= 10) && (d12 <= 19))
{
s = s + dahyek[d12 - 10];
}
else
{
int d2 = d12 / 10;
if (d2 != 0)
s = s + dahgan[d2] + " و ";
int d1 = d12 % 10;
if (d1 != 0)
s = s + yekan[d1] + " و ";
s = s.Substring(0, s.Length - 3);
};
return s;
}

public static string num2str(string snum)
{
string stotal = "";
if (snum == "0")
{
return yekan[0];
}
else
{
snum = snum.PadLeft(((snum.Length - 1) / 3 + 1) * 3, '0');
int L = snum.Length / 3 - 1;
for (int i = 0; i <= L; i++)
{
int b = int.Parse(snum.Substring(i * 3, 3));
if (b != 0)
stotal = stotal + getnum3(b) + " " + basex[L - i] + " و ";
}
stotal = stotal.Substring(0, stotal.Length - 3);
}
return stotal;
}
}


public partial class Form1 : Form
{

public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
button1.Text = "تبدیل";
label1.Text = "";
textBox1.Text = "";

}

private void button1_Click(object sender, EventArgs e)
{
int t = int.Parse(textBox1.Text);
label1.Text = getnum3(t);
}



}
}

Esmail Solhkhah
چهارشنبه 08 تیر 1390, 22:10 عصر
دوست عزیز جواب رو بصورت پیام خصوصی براتون فرستادم

موفق باشید.

میلاد قاضی پور
چهارشنبه 08 تیر 1390, 23:56 عصر
چرا باید متد پرایوت موجود در کلاس دیگر رو در کلاس جدید بتونه فراخوانی کنه ؟
متد گت نام 3 رو پابلیک تعریف کنید
ضمنا متد استاتیک رو که به اون صورت استفاده نمیکنن!
نام کلاس دات متد استاتیکتون

pooria_googooli
پنج شنبه 09 تیر 1390, 12:45 عصر
ممنون . درست شد