Sobes.tech
Middle

Qual é o resultado de dividir um valor inteiro por zero e dividir um número de ponto flutuante por zero?

sobes.tech IA

Resposta da IA

Em Golang:

A divisão de um valor inteiro por zero provoca um pânico em tempo de execução (panic: integer divide by zero).

A divisão de um número de ponto flutuante por zero dá um valor especial +Inf (infinito positivo) para números positivos e -Inf (infinito negativo) para números negativos. A divisão de 0.0 por 0.0NaN (Not a Number).

Exemplo:

package main

import "fmt"

func main() {
	// Divisão de int por 0 - provoca um pânico
	// var i int = 10
	// fmt.Println(i / 0) // Descomente para demonstração do pânico

	// Divisão de float por 0
	var f float64 = 10.0
	fmt.Println(f / 0.0) // +Inf

	var f2 float64 = -10.0
	fmt.Println(f2 / 0.0) // -Inf

	var f3 float64 = 0.0
	fmt.Println(f3 / 0.0) // NaN
}