Bueno, resulta que soy nuevo en esto del C++, y en la universidad nos han pedido que hagamos el siguiente programa:
Entrar un numero entero y uno natural (-32 y 6) y dividirlos entre si. El cociente de la división puede dar negativo o positivo, pero nos piden que el valor del resto sea positivo. Así pues, el resto tiene que ser un valor absoluto... Como ejemplos de los resultados que se deben obtener:
32 / 6 ---> Cociente 5, Resto 2
-32 / 6 ---> Cociente -6, resto 4
Con lo que realmente tengo problemas es con el segundo ejemplo... El primero no hay problema. No consigo que me den esos valores (-6 y 4) y me han prohibido usar la biblioteca <math.h>.
Mi intento lo he estructurado de la siguiente manera:
Código
#include <iostream> using namespace std; int main(){ int a,b,q,r; cin >> a >> b; q=a/b; r=a%b; if (r < 0) { cout << q << " " << -r << endl; // Aquí creo que esta el error } else { cout << q << " " << r << endl; } }
Alguno/a puede ayudarme a solucionar este problema que viene determinado por el signo del resto?
Muchas gracias!!!