Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Ошибка после исполнения программы
#11
Добавьте переменную
[src=java]
int itog1;
[/src]
И сделайте как я написал.

..или
[src=java]
itog = Iteger.parseInt(a1 / b1);
[/src]

Добавлено через 4 минуты
Effas Написал:Вы имели в виду так?
PHP код:
<?php 
import javax
.swing.*;

public class
Calculator2 {
public static
void main(String[] args) {
String a = JOptionPane.showInputDialog("Введите 1-е число:");
String itog = JOptionPane.showInputDialog("Введите знак:");
String b = JOptionPane.showInputDialog("Введите 2-е число:");

if (
itog.contains("+"))
itog = a + b;
else if (
itog.contains("-"))
itog = a - b;
else if (
itog.contains("*"))
itog = a * b;
else if (
itog.contains("/"))
itog = a / b;
}
}
PHP код:
<?php 
E
:\Java\Calculator\Calculator2.java:12: operator - cannot be applied to java.lang.String,java.lang.String
itog
= a - b;
^
E:\Java\Calculator\Calculator2.java:14: operator * cannot be applied to java.lang.String,java.lang.String
itog
= a * b;
^
E:\Java\Calculator\Calculator2.java:16: operator / cannot be applied to java.lang.String,java.lang.String
itog
= a / b;
^
3 errors

Мой пост №8, проблема топика была в парсинге символа.
Но если парсинг убираем, выскакивает туча ошибок (№8).
Как вы вообще можете к String'у приравнивать арифметические операции?
Ответ
#12
[src=#java]
mport javax.swing.*;

public class Calculator {
public static void main(String[] args) {
int a = Integer.parseInt(JOptionPane.showInputDialog("Введите 1-е число:"));
String itog = JOptionPane.showInputDialog("Введите знак:");
int b = Integer.parseInt(JOptionPane.showInputDialog("Введите 2-е число:"));

int result = 0;
// Установка условия.
switch(itog.charAt(0)) {
case '+':
result = a + b;
break;
case '-':
result = a - b;
break;
case '*':
result = a * b;
break;
case '/':
result = a / b;
break;
default:
JOptionPane.showInputDialog("Вы ввели не правильный знак!");
}

JOptionPane.showInputDialog("Результат: " + result);
System.exit(0);
}
}
[/src]
Ответ
#13
Спасибо большое, хотел бы чуть инфы о
Код:
.charAt(0)
Ответ
#14
Effas Написал:Спасибо большое, хотел бы чуть инфы о
Код:
.charAt(0)
String - это массив символов (char), (string).charAt(0) - получение первого символа из переменной.
Ответ
#15
Чуть усовершенствовал, ввел проверку в самом начале.
PHP код:
<?php 
import javax
.swing.*;

public class
Calculator {
public static
void main(String[] args) {
// Парсинг и инициализация переменных.
int a = Integer.parseInt(JOptionPane.showInputDialog("Введите 1-е число:"));
String f = JOptionPane.showInputDialog("Введите знак:");
// проверка знака
if(f.charAt(0) != '+' | f.charAt(0) != '-' | f.charAt(0) != '*' | f.charAt(0) != '/') {
JOptionPane.showInputDialog("Вы ввели не правильный знак!");
Thread.sleep(2000);
return
f;
}
int b = Integer.parseInt(JOptionPane.showInputDialog("Введите 2-е число:"));

int result = 0;

// Установка решения.
switch(f.charAt(0)) {
case
'+':
result = a + b;
break;
case
'-':
result = a - b;
break;
case
'*':
result = a * b;
break;
case
'/':
result = a / b;
break;
}

// Вывод результата.
JOptionPane.showInputDialog("Результат: " + result);
}
}
PHP код:
<?php 
E
:\Java\Calculator\Calculator.java:12: cannot return a value from method whose result type is void
return f;
^
1 error

Tool completed with
exit code 1

Если не добавлять задержку ретурна, то:
Поэтапно:
1)http://rghost.ru/10870291.view
2)http://rghost.ru/10870531.view
3)http://rghost.ru/10870571.view
Ответ
#16
Не понял.. а зачем вам 'return' ? return - завершает метод, и в случае если метод должен что-то "вернуть" - передает... В вашем случае метод ничего не возвращает, а вы пытаетесь..
Ответ
#17
Не проще ли взять любой учебник и почитать азы языка.
Какой к черту return f, если у тебя public static void main() (собственно, о чем тебе и сказал компилятор)
Ответ
#18
Ro0TT Написал:Не понял.. а зачем вам 'return' ? return - завершает метод, и в случае если метод должен что-то "вернуть" - передает... В вашем случае метод ничего не возвращает, а вы пытаетесь..
В моем случае, если не правильно введен знак, должно вернуться к вводу знака.

Добавлено через 3 минуты
Lihoy Написал:Не проще ли взять любой учебник и почитать азы языка.
Какой к черту return f, если у тебя public static void main() (собственно, о чем тебе и сказал компилятор)
Учу, совместно практикуюсь удаленно от темы, закрепляю знания.
Ответ
#19
Effas Написал:В моем случае, если не правильно введен знак, должно вернуться к вводу знака.
Матерится хочу.. а оззи не разрешает...

Используйте

[src=java]
String f = "";
while(f.charAt(0) != '+' | f.charAt(0) != '-' | f.charAt(0) != '*' | f.charAt(0) != '/')
f = JOptionPane.showInputDialog("Введите знак:");
[/src]
Ответ
#20
Ща поковыряюсь, да дело не в том, почитай ниже, посмотри скрины.
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Intellij Idea->Android project -> Ошибка iluhin 0 2,369 05-05-2020, 02:10 PM
Последний пост: iluhin
  Ошибка в роботе login servera Klay 11 4,288 03-21-2015, 07:14 PM
Последний пост: Donatte
  Ошибка 1406. JAVA. Елизавет 4 2,469 07-11-2013, 08:47 PM
Последний пост: Елизавет
  ошибка в проге Retribution 4 3,411 05-30-2013, 10:23 PM
Последний пост: Mangol

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)