Să se rezolve, în mulțimea numerelor naturale, ecuația x2-y2=k, unde k este un număr natural care se introduce de la tastatură. (Indicație: x2-y2=(x+y) x (x-y)==axb-k => x=(a+b)/2 şi y=(b-a)/2; pentru fiecare divizor a al lui k şi b-k/a se calculează x şi y, soluțiile x şi y obținute trebuind să fie numere întregi pozitive.) 3

#include <iostream>

using namespace std;

int main() {

    int k;

    cout << „Introduceti numarul k: „;

    cin >> k;

    for (int a = 1; a <= k; a++) {

        if (k % a == 0) {

            int b = k / a;

            int x = (a + b) / 2;

            int y = (b – a) / 2;

            if (x > 0 && y > 0) {

                cout << „Solutie: (” << x << „, ” << y << „)” << endl;

            }

        }

    }

    return 0;

}

  1. Citim numărul natural k de la tastatură
  2. Pentru fiecare divizor a al lui k, facem:

a) Calculăm b = k / a

b) Calculăm x = (a + b) / 2 și y = (b – a) / 2

c) Verificăm dacă x și y sunt numere întregi pozitive

d) Dacă da, afișăm soluția (x, y)

Similar Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *