F016B. Sabeu restar?

Feu un programa que llegeixi parells de naturals i que, per a cada
parell, escrigui el valor de la resta del primer menys el segon. Per
exemple, 5 menys 2 fan 3.

Compte: com que els naturals que es consideren en aquest problema poden
ser mooooolt llargs (milers de dígits), cal guardar-los en variables de
tipus @string@.

El programa principal ja se us dóna implementat, no el canvieu:

        int main() {
            string x, y;
            while (cin >> x >> y) cout << resta(x, y) << endl;
        }

Per resoldre aquest problema, implementeu la funció

        string resta(string x, string y);

que, donades dues cadenes de caràcters @x@ i @y@ que representen dos
naturals, amb el valor de @x@ superior o igual al valor de @y@, retorni
una cadena de caràcters que representa @x@ − @y@.

Per simplificar el problema, suposeu que @x@ i @y@ tenen el mateix
nombre de dígits, i que el valor de @x@ és més gran o igual que el valor
de @y@. El nombre de dígits del resultat ha ser igual al nombre de
dígits dels nombres originals, posant, si cal, zeros a l’esquerra.

Observacions

- Recordeu que un string @s@ amb @n@ caràcters @c@ es pot declarar així:
  @string s(n, c);@

- Recordeu també que les operacions dels strings com ara @s += ’0’;@ o
  bé @s1 += s2;@ o bé @s = s1 + s2;@ estan prohibides.

Informació del problema

Autoria: Professorat de P1

Generació: 2026-01-25T10:34:12.985Z

© Jutge.org, 2006–2026.
https://jutge.org
