La probaste al menos? Es C básico!
Pienzo lo mismo, para que quieres math.h si solo tienes que dividir y multiplicar dos números!
Te lo explico por partes:
quedaría así
Ahora el operador ternario
   
Si la condicion es verdadera, se asigna resultado_si, si es falsa se asigna resultado_no. Los paréntesis no son necesarios. Pero en nuestro caso tenemos dos operaciones para la ultima sentencia, así que la separamos con la coma
return resultado;
   
Sintetizando nos queda así
			Cita de: -- KiLiaN -- en 27 Agosto 2012, 01:16 AMY no sería más fácil multiplicar por sí misma la variable y obtener así el cuadrado?
Pienzo lo mismo, para que quieres math.h si solo tienes que dividir y multiplicar dos números!
Te lo explico por partes:
Código (c) [Seleccionar] 
	// Si el resultado es cero abortamos la división
	if(z == 0) // pero lo escribo asi if(!z)
		return 0;
	x = x/z; // pero lo escribo así x /= 2
	x = x*x; // pero lo escribo asi x *= xquedaría así
Código (c) [Seleccionar] 
	if(!z)
		return 0;
	x /= z;
	x *= x;
	return x;Ahora el operador ternario
Código (c) [Seleccionar] 
    a = (condicion)? (resultado_si): (resultado_no);Si la condicion es verdadera, se asigna resultado_si, si es falsa se asigna resultado_no. Los paréntesis no son necesarios. Pero en nuestro caso tenemos dos operaciones para la ultima sentencia, así que la separamos con la coma
Código (c) [Seleccionar] 
	// si z vale 0 retornamos cero, en otro caso realizamos las dos operaciones...
	// la expresión con comas tendra el valor de la última
	resultado = (z == 0)? (0): (x /= z, x * x );return resultado;
Sintetizando nos queda así
Código (c) [Seleccionar] 
    return !z? 0: (x /=z, x*x);