PDA

View Full Version : مشکل در جمع چند عدد



yanni2
یک شنبه 20 خرداد 1397, 09:08 صبح
سلام من با استفاده از کد زیر چند عدد وارده در Textbox ها رو جمع میزنم و در داخلی textbox دیگر میریزم ولی مشکل اینجاست جمع اعداد درست نیست
اگه میشه راهنماییم کنید.

int sjam1=0;
int sjam2=0;
int sjam3=0;
int sjam4=0;
int sum=0;

sjam1=convert.toInt32(textbox5.text);
sjam2=convert.toInt32(textbox8.text);
sjam3=convert.toInt32(textbox12.text);
sjam4=convert.toInt32(textbox18.text);

sum = sjam1+sjam2+sjam3+sjam4;
string summ=convert.toString(sum);
textbox19.text=summ.tostring();

Mahmoud.Afrad
یک شنبه 20 خرداد 1397, 09:13 صبح
یک مثال از ورودیها و خروجی بزنید

yanni2
یک شنبه 20 خرداد 1397, 09:14 صبح
اعداد صحیح وارد میکنم

الان کنارم نیست برنامه که دقیق بگم
ولی همان اعداد صحیح وارد میکنم
ولی 3تکست باکس اول جمع میشود.
تکست باکس آخر انگار نصفش جمع میشود!!!

Mahmoud.Afrad
یک شنبه 20 خرداد 1397, 09:18 صبح
اگر کد دقیقا همین هست اسم متغیر چهارم منطبق نیست.(خط 4و10)

yanni2
یک شنبه 20 خرداد 1397, 09:33 صبح
نه اینو دستی نوشتم
تو برنامه درست هست ولی بازم خطا میده

nunegandom
یک شنبه 20 خرداد 1397, 13:56 عصر
تعداد رقم ورودی ها چقدر است؟
شاید باید long استفاده کنید یا decimal

danialafshari
یک شنبه 20 خرداد 1397, 14:41 عصر
با سلام
در هنگام پرسش سوال کد دقیق برنامتون رو بزارید شاید مشکل تایپی باشه چون ظاهراً کد درسته و ورودی هایی که بهش میدید رو بهمراه نتیجه قرار بدید
در هنگام استفاده از Object ها از نام گذاری استاندارد استفاده کنید تا سردرگم نشید
متد زیر رو تست کنید:

private int ResultSum(params int[] val)
{
int Result = 0;
foreach (int num in val)
{
Result += num;
}
return Result;
}

توسط متد بالا n تا Textbox میتونید اضافه کنید بدون اینکه لازم باشه در متد تغییری ایجاد بشه
استفاده:

MessageBox.Show(ResultSum(Convert.ToInt32(textBox1 .Text), Convert.ToInt32(textBox2.Text), Convert.ToInt32(textBox3.Text),Convert.ToInt32(tex tBox4.Text)).ToString());

موفق باشید

yanni2
یک شنبه 20 خرداد 1397, 19:24 عصر
کد اصلی

int sjam1=0;
int sjam2=0;
int sjam3=0;
int sjam4 = 0;
int sum = 0;
sjam1 = Convert.ToInt32(textBox9.Text);
sjam2 = Convert.ToInt32(textBox12.Text);
sjam3 = Convert.ToInt32(textBox15.Text);
sjam4 = Convert.ToInt32(textBox188.Text);

sum = (sjam1 + sjam2 + sjam3 + sjam4);
string jamsss = Convert.ToString(sum);
textBox19.Text = jamsss.ToString() ;


اینم عکس خروجی
148357

Msharp
یک شنبه 20 خرداد 1397, 19:45 عصر
از این کد استفاده کنید ببینید نتیجه یکی هست ؟



void jaaam() {


var sjam1 = int.Parse(textBox1.Text);
var sjam2 = int.Parse(textBox2.Text);
var sjam3 = int.Parse(textBox3.Text);
var sjam4 = int.Parse(textBox4.Text);


var sum = (sjam1 + sjam2 + sjam3 + sjam4).ToString();


MessageBox.Show(sum);
}

mr.sirwan
یک شنبه 20 خرداد 1397, 23:21 عصر
کد اصلی

int sjam1=0;
int sjam2=0;
int sjam3=0;
int sjam4 = 0;
int sum = 0;
sjam1 = Convert.ToInt32(textBox9.Text);
sjam2 = Convert.ToInt32(textBox12.Text);
sjam3 = Convert.ToInt32(textBox15.Text);
sjam4 = Convert.ToInt32(textBox188.Text);

sum = (sjam1 + sjam2 + sjam3 + sjam4);
string jamsss = Convert.ToString(sum);
textBox19.Text = jamsss.ToString() ;


اینم عکس خروجی
148357

احتمال خیلی زیاد اسم تکست باکس هارو توی کد اشتباه وارد کردین، اسمارو بررسی کنین