11 в 2 возвращает 5,0 вместо 5,5

Целое число, деленное на целое, не возвращает меня в десятичном виде. Например, 11/2 дает мне 5,0 вместо 5,5 Что происходит?

import java.util.*;
public class Division {

static double resultado;
static int num1=11;
static int num2=2;

public static void main(String[] args) {
resultado=num1/num2; /*Devuelve 5.0 en vez de 5.5*/
}

}

1
задан 29.11.2019, 18:29
4 ответа

это благодаря тому, что переменные num1 и num2 - int, идеальное состоит в том, чтобы, если результат - double, переменные num1 и num2 tambiГ©n это были. QuedarГ - в asГ-:


import java.util.*;
public class Division {

static double resultado;
static double num1=11;
static double num2=2;

public static void main(String[] args) {
resultado=num1/num2; /*Devuelve 5.0 en vez de 5.5*/
}

Надеялся, что он ты помогает, приветствие.

3
ответ дан 01.12.2019, 10:35
  • 1
    Он рекомендуемый, что instanciar переменные типа double или float показал тип с суффиксом D или F. Ejem: double num1 = 11.0D или float num2 = 2.0F – isaac 30.11.2019, 03:48

Она divisiГіn двух целых чисел дай как оказанный целое число

static double resultado;
static double num1 = 11.0;
static double num2 = 2.0;
resultado = num1 / num2; //5.5
1
ответ дан 01.12.2019, 10:35

Как они говорят, что demГЎs ты должен помещать их твои переменные в DOUBLE, asГ - ты cГіdigo funcionarГЎ; изменись ты cГіdigo поэтому:

import java.util.*;
public class Division {

static double resultado;
static double num1=11;
static double num2=2;

public static void main(String[] args) {
resultado=num1/num2; /*Devuelve 5.0 en vez de 5.5 ahora si te devolverá 5.5*/
 }
}
1
ответ дан 01.12.2019, 10:35

11 из 2 возвращает мне 5.0 вместо 5.5

дает Тебе как результат 5.0, porquГ© составитель понимает, что он expresiГіn:

num1/num2

SerГЎ типа int и поэтому, habrГЎ pГ©rdida данных и из-за этой razГіn, переменная resultado tendrГЎ nГєmero 5.0.

возможная Одна soluciГіn (если он интересует тебя, что переменные num1 и num2 были типа int) состоит в том, чтобы реализовывать одну conversiГіn ясная, а именно, мы покажем составителю, что результат ее expresiГіn num1/num2 serГЎ ТИП DOUBLE .

public static void main(String[] args) 
{
    resultado= (double)num1/num2;
    System.out.println(resultado);
    //Resultado por pantalla: 5.5
}
1
ответ дан 01.12.2019, 10:35

Теги

Похожие вопросы