-7
Распечатайте таблицу десятичных эквивалентов всех собственных дробей с знаменателями от 2 до 14 включительно с числителем, меньшим знаменателя. Радиус десятичной до 5 мест.[Java] - Что не так с этим кодом?
import java.text.*;
public class Decimal
{
public static void main(String[] arg)
{
int d;
int n=1;
float Sum;
DecimalFormat Form = new DecimalFormat("0.00000");
for(d=2;d<=14;d++)
{
do
{
Sum= n/d;
System.out.println(n+"/"+d+" "+Form.format(Sum));// Problem here I assume,why is the sum always Zero????!!
n++;
}while(n!=d);
n=1;
}
}
}
хорошо, если вы не объясните, что это ** предполагается ** делать и что он на самом деле делает, это всего лишь случайный фрагмент кода. Догадайтесь, но вы пытаетесь разделить 1 (тип 'int') на' int', который всегда будет иметь значение 0 – Paul
Распечатайте таблицу десятичных эквивалентов всех собственных дробей с знаменателями от 2 до 14 включительно с числителем меньше знаменателя. Радиус десятичной до 5 мест. – Basam
, тогда это довольно просто: используйте '1.0/d' вместо' 1/d', а результат будет 'double' вместо' int'. 'int', деленный на' int', всегда будет иметь целое число, поэтому дробные цифры просто усекаются, всегда оставляя вас с 0 в вашем случае – Paul