if(cuantos > 0) //si cuantos es mayor que 0
return(acum/cuantos); //retorna esta linea, como es una sola linea no hace falta {}
return (acum); //si no se cumple lo de arriba retorna esta.
tiene el mismo efecto que esto:
if(cuantos > 0)
{
return(acum/cuantos);
}
return (acum);
Pones {} si quieres ejecutar un grupo de instrucciones.
En el caso de que if tuviese mas de una instrucción ponemos {}, si se cumple if ejecutaría todas las sentencias dentro de las {}, de no cumplirse las salta, puedes poner para una sola también, lo mismo da pero si es una sola no tienes que ponerla.
Quiere decir que si después de if hay {} el grupo de instrucciones dentro de las {} pertenece a el anterior if.
pero si caso en una funcion fuera asi:
#include <iostream>
int sumar (int num1, int num2)
{
int resultado =num1+num2;
int numVago=666;
//Sin condicion que compare nada ni haga salto:
return numVago; // De no haber ninguna condicion previa siempre devuelve el primer return.
// Este codigo es perfectamente valido pero no le hemos dicho nada asi que
// el segundo return esta ahi muerto XD, si esperas el resultado de la suma
// ya tienes un bug XD.
return resultado;
}
int main ()
{
int a = 10;
int b = 20;
int imprimir = 0;
imprimir = sumar(a,b);
std::cout << "lo que viene de la funcion sumar es" << imprimir;
return 0;
}
mira esto...
#include <iostream>
using namespace std;
int main ()
{
int num1 = 10;
int num2 = 20;
int resultado = 0;
{
resultado = num1+num2; // puedo hacer esto sin if y funciona, para una sola sentencia no es necesario pero si la pongo el programa no crachea:D
}
cout << resultado << endl;
return 0;
}
prueba la función con 2 casos:
uno que de mayor que 0 y otro que de menor, veras cual te lo retorna.
Suerte!
otro intento que hice fue este.
si le paso 10 y 20 a la funcion me devuelve la suma pero si paso -10 y -20 me devuelve el 9999 XD
#include <iostream>
int examen (int a, int b)
{
int cuantos = a+b;
if(cuantos < 0)
return 9999;
return cuantos;
}
int main()
{
int num1=-10;
int num2=-20;
int result=0;
result= examen(num1,num2);
std::cout<<result;
}
Un código mas y no vuelvo mas por este hilo
#include <iostream>
int retorno (int condicion)
{
if (condicion < 0)
return -1;
if (condicion > 0)
return 1;
if (condicion == 0)
return 0;
}
int main()
{
int valor;
std::cin >> valor;
std::cout<< retorno(valor);
}