פורסם 2007 בספטמבר 118 שנים אני רציתי לכתוב תוכנית שעושה כפל חילוק + - בINPUTDIALOG ועשיתי כזה דבר\import javax.swing.JOptionPane; import java.math.*;public class Addition { public static void main( String args[] ) { int op = 0; int sum = 0; String firstNumber = JOptionPane.showInputDialog( "Enter first integer" ); String secondNumber = JOptionPane.showInputDialog( "Enter second integer" ); int number1 = Integer.parseInt( firstNumber ); int number2 = Integer.parseInt( secondNumber ); String o = JOptionPane.showInputDialog( "1=* 2=+ 3=- 4=/" ); int op3 = Integer.parseInt( o ); if(op3==1 ) { sum = number1 * number2; // add numbers } if(op3==2) { sum = number1 + number2; // add numbers } if(op3==3) { sum = number1 - number2; // add numbers } if(op3==4) { sum = number1 / number2; // add numbers } JOptionPane.showMessageDialog( null, "The sum is " + sum, "Sum of Two Integers", JOptionPane.INFORMATION_MESSAGE ); } }]הקוד הזה עובד כמו שצריך אבל במקום שאני ירשום * אני צריך לרשום 1 ורק אז זה יעשה לי פעולה של כפל String o = JOptionPane.showInputDialog( "1=* 2=+ 3=- 4=/" );איך אני גורם לתוכנה להבין שאני לוחץ על * ?ניסיתי לעשות PARASEINT לזה אבל לא הלך ניסיתי גם לשים את הקוד ASCII של ה * אבל זה לא מחשב לי את התוצאה והוא זורק לי תוצאה 0 כי הוא לא נכנס ל IF אני יודע שצריך לעשות משהו שקוראים לו ASCII TO CHAR (משהו כזה)אבל אני לא מצליח תודה
פורסם 2007 בספטמבר 118 שנים אני לא יודע java, אבל היא מאוד דומה ל C#.ב C# יש אירוע בלחיצת כפתור, אני הייתי בודק את האירוע הנ"ל ובודק איזה כפתור נלחץ (לא צריך ASCII בשביל זה)
פורסם 2007 בספטמבר 118 שנים מחבר אני לא יודע CSHARP ואני לא הכי מומחה לJAVA (בעקרון רק התחלתי ללמוד ) ככה שאני לא הכי יודע אני יודע שעושים את זה עם KEYLISTENER מה שאמרת אבל כמו שאמרתי אני לא הכי יודע איך
פורסם 2007 בספטמבר 118 שנים אל תעשה parshint, אלא תקלוט את זה כמחרוזת, ותיקח את האות(char) הראשונה. תבדוק האם האות הזו שווה ל- '+', '-', '*' או '/', ותפעל בהתאם(אתה יכול לעשות את זה ע"י סוויץ לדוגמא).
פורסם 2007 בספטמבר 118 שנים מחבר ניסיתי ועשיתי כזה דברimport javax.swing.JOptionPane; import java.math.*;public class Addition { public static void main( String args[] ) { int op = 0; int sum = 0; String firstNumber = JOptionPane.showInputDialog( "Enter first integer" ); String secondNumber = JOptionPane.showInputDialog( "Enter second integer" ); String sign = JOptionPane.showInputDialog( "Enter math sign" ); if(sign=="*") { { int number1 = Integer.parseInt( firstNumber ); int number2 = Integer.parseInt( secondNumber ); sum=number1*number2; break; } } JOptionPane.showMessageDialog( null, "The sum is " + sum, "Sum of Two Integers", JOptionPane.INFORMATION_MESSAGE ); } }וזה לא עובד שאני לוחץ על * זה רושם לי Exception in thread "main" java.lang.NumberFormatException: For input string: "*" at java.lang.NumberFormatException.forInputString(Unknown Source) at java.lang.Integer.parseInt(Unknown Source) at java.lang.Integer.parseInt(Unknown Source)ניסיתי גם if(sign=="*") { { int number1 = firstNumber; int number2 = secondNumber; sum=number1*number2; break; } }וגם זה לא עובד לי בקשה תרשום לי את התשובה אני משתגע כבר
פורסם 2007 בספטמבר 118 שנים 1) על איזו שורה זה מצביע לך?2) אתה בטוח שלא הכנסת את הכוכבית לאחד המספרים בטעות?
פורסם 2007 בספטמבר 118 שנים התכוונתי לאינפוט שאתה מכניס לו באינפוט דיאלוג. באיזו שורה הוא נותן לך את השגיאה?
פורסם 2007 בספטמבר 118 שנים מחבר באותו רגע שאני מכניס כאן את הסימן * String sign = JOptionPane.showInputDialog( "Enter math sign" );
פורסם 2007 בספטמבר 118 שנים תרשום את כל הstack trace של האקספשן שאתה מקבל. אתה בטוח שזו השורה שהוא מצביע עליה?
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.