Per il primo problema questo codice dovrebbe risolverlo:
codice:
int arrotonda(int x, int y) {
int rapporto = (int) x / y;
return ((rapporto * y) < x) ? rapporto + 1 : rapporto;
}
Per il secondo la funzione da te definita dovrebbe andare bene (attenzione, però, che facendo tornare un int otterrai sempre 0 come valore di ritorno: se, infatti, x/y è maggiore di 0, y/x sarà sicuramente compreso fra 0 e 1, ma non ammettendo i decimali verrà restituoto 0).
In alternativa si può scrivere tutta in una istruzione:
codice:
float minore(int x, int y) {
return ((x/y) < (y/x)) ? (x/y) : (y/x);
}
Ciao.