Это потому, что вы делаете деления на int
, что даст zero
.Итак, что вам нужно сделать, это разыграть gain
и cost
для первого плавания, а затем умножить его на 100. Например: gp = (((float) gain / (float) cost) * 100);
полный код:
package gain_per;
import java.util.Scanner;
public class Gain {
public static void main(String[] args) {
Scanner sn = new Scanner(System.in);
int op,rc,sp,cost,gain;
double gp=0;
System.out.println("Enter Old Price:");
op = sn.nextInt();
System.out.println("Enter Repair cost:");
rc = sn.nextInt();
System.out.println("Enter Selling Price:");
sp = sn.nextInt();
if(op != 0 && rc != 0 && sp != 0) {
cost = op+rc;
if(cost<sp) {
gain = sp-cost;
gp = (((float) gain / (float) cost) * 100);
System.out.println(gp);
}
else {
System.out.println("Cannot Calculate");
}
}
else {
System.out.println("Invalid Input");
}
}
}