PDA

View Full Version : مشکل در برنامه جمع عدد



jalal2478
پنج شنبه 13 اسفند 1388, 20:26 عصر
دوستان یه برنامه نوشتم که 2عدد را دریافت کنه و جمع کنه با شرایط زیر اما مشکل داره
اگر کاربر ورودی اول را چیزی وارد نکرد مقدار صفر را درون متغیر مربوطه قرار دهد.
اگر کاربر ورودی اول و دوم را چیزی وارد نکرد پیغام مناسبی چاپ کند
اگر هر 2 ورودی را عدد وارد کرد هر 2 را با هم جمع و در یغامی جمع انها را نمایش دهد.




import

javax.swing.JOptionPane;



public



class sum {



/**

*




@param args


*/

publicstaticvoid main(String[] args) {
// TODO Auto-generated method stub
String s=JOptionPane.showInputDialog(




"please enter number one:");

int



i=Integer.parseInt(s);

String n=JOptionPane.showInputDialog("please enter number two:");

int




j=Integer.parseInt(n);



if



(s==null & n==null)

JOptionPane.showMessageDialog(null,"the number not input");

if




(s==null)

i=0;

int




sum=i+j;

JOptionPane.showMessageDialog(null,"the sum input 2number:"+sum);

}




}


با تشکر فراوان.

ermia2008
جمعه 14 اسفند 1388, 01:13 صبح
سلام دوست عزیز.
اصلاح شده برنامه رو براتون گذاشتم. به تغییرات اعمال شده دقت کنید:




import javax.swing.JOptionPane;

class Sum{

public static void main(String[] args) {

int i=0,j=0;

String s = JOptionPane.showInputDialog("please enter number one:");
i = s.equals("")?0:Integer.parseInt(s);

String n = JOptionPane.showInputDialog("please enter number two:");
j=n.equals("")?0:Integer.parseInt(n);

if(s.equals("") && n.equals(""))
JOptionPane.showMessageDialog(null,"the number not input");

int sum=i+j;
JOptionPane.showMessageDialog(null,"the sum input 2number:"+sum);
}

}//end of class
البته این برنامه برای ورودی غیر عدد چک نشده!
موفق باشید

jalal2478
جمعه 14 اسفند 1388, 10:54 صبح
ضمن عرض تشکر از شما دوست عزیز
1سوال دیگه اینکه دارم ادامه میدم در اعمال توان این ارور رو تو اجرا میده

The local variable d may not have been initialized



publicstaticvoid main(String[] args) {
// TODO Auto-generated method stub

String s=JOptionPane.showInputDialog(

"please enter a frist number:");

int



i=Integer.parseInt(s);

String n=JOptionPane.showInputDialog("please enter a secound number:");

int




j=Integer.parseInt(n);

int



a,d;

for



(d=1;d<=j;d++)

a=i*j;




//JOptionPane.showMessageDialog(null, d );


System.out.print(a);

ermia2008
جمعه 14 اسفند 1388, 23:10 عصر
ضمن عرض تشکر از شما دوست عزیز
1سوال دیگه اینکه دارم ادامه میدم در اعمال توان این ارور رو تو اجرا میده

The local variable d may not have been initialized


خوب وقتی که شما متغیر هاتون رو به صورت محلی تعریف میکنید باید مقدار دهی اولیه بشن فرضا در اینجا باید به متغیر d یه مقدار اولیه مثل 0 نسبت بدید. ولی اگه متغیرها به صورت سراسری تعریف شده باشند احتیاجی به این کار نیست و همه متغیرها دارای مقدار پیش فرضی خواهند بود.

موفق باشید.