Stamattina ho fatto un esame di informatica all'università e il testo era questo :
"Letti a1, b1, a2, b2 appartenenti ad R da tastiera, restiruisca al chiamante se [a1, b1] intersecato con [a2, b2] è diverso dall'insieme vuoto.
Sinceramente ho avuto molti dubbi. Ho considerato [a1, b1] e [a2, b2] come due vettori con dimensione 2.
Ora vi posto come l'ho svolto :
#include <iostream>
using namespace std;
const int K = 2;
void Scrivi_vettore (float v [K]);
bool intersezione (float v1 [K], float v2 [K]);
int main()
{
float v1 [K];
float v2 [K];
Scrivi_vettore (v1);
Scrivi_vettore(v2);
intersezione (v1, v2);
return 0;
}
void Scrivi_Vettore (float v [K])
{
cout << "Scrivi elementi da tastiera : ";
for (int i = 0; i < K; i++)
{
cin >> v ;
}
}
bool intersezione (float v1 [K], float v2 [K])
{
bool condizione = true;
if (v1[0] != v2[0] && v1[0] != v2[1])
{
if (v1[1] != v2[0] && v1[1] != v2[1])
{
return false;
}
}
else
return true;
return condizione;
}
So che probabilmente è sbagliato.. Cosa cè che non va ? Come andava fatto secondo voi ?