/**
* Created by
*/
public class otchet {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
double a = Integer.parseInt(reader.readLine());
double c = ((a / 87)*100);
double d = ((c/100)*13);
double e = (c-d);
System.out.println(c + " Оклад" );
System.out.println(d + " 13 процентов");
System.out.println(e + " Сверка");
}
}
Вводишь число и получаешь ответ.
Что нужно дописать, чтобы после вывода, программа запускалась заново? Т.е. для ввода нового числа (старое должно остаться).
ps я новенький в Java, не кидайте камни.
Дополнение к дополнению, не заводите привычку писать конструкции подобные этой: line.equals("exit")
правильнее: "exit".equals(line), поскольку иначе придется добавлять проверку на null перед сравнением.
Раз уж начали разбирать код, у меня вопрос по этой строчке:
reader = new BufferedReader(new InputStreamReader(System.in));
Можно ли как-то без постоянного создания ссылок ?
Не нужно перезапускать программу, просто отправьте всю логику в бесконечный цикл. Выход из программы скажем по команде exit. Если старые числа нужно хранить внутри программы, то коллекции в помощь.
KreMbI4: Вам нужно разобраться в основах, почитайте Шилдта, иначе далеко не уедете. Быстро набросал, я думаю всё понятно.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
public class Main {
static final double commandExit = 909;
public static void main(String[] args) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
ArrayList oldValues = new ArrayList();
while(true) {
System.out.println("Введите цифру или " + commandExit + " для выхода : ");
double a = 0;
try {
a = Double.parseDouble(reader.readLine());
} catch (IOException e) {
e.printStackTrace();
}
if (a == commandExit) {
break;
} else {
oldValues.add(a);
double c = ((a / 87)*100);
double d = ((c/100)*13);
double e = (c-d);
System.out.println(c + " Оклад" );
System.out.println(d + " 13 процентов");
System.out.println(e + " Сверка");
System.out.println("Прошлые значения: ");
for (Double item: oldValues) {
System.out.println(item);
}
}
}
System.exit(0);
}
}