¿Por qué la división de enteros en C # devuelve un entero y no un flotador?

¿Alguien sabe por qué la división de enteros en C # devuelve un entero y no un flotador? ¿Cuál es la idea detrás de esto? (¿Es sólo un legado de C / C ++?)

Cía#:

float x = 13 / 4;   
//imagine I used have an overridden == operator here to use epsilon compare
if (x == 3.0)
   print 'Hello world';

El resultado de este código sería:

'Hello world'

Estrictamente hablando, no existe tal cosa como la división de enteros (la división por definición es una operación que produce un número racional, los enteros son un subconjunto muy pequeño de los cuales).

Respuestas a la pregunta(7)

Su respuesta a la pregunta