Verifica condizione somma elementi tra due array
L'esercizio dice di verificare se ogni elemento di a è somma di almeno due elementi di b
io ho provato a svolgere l'esercizio ma riesco solo a fare quello che mi verifica se ogni elemento di a è pari alla somma di due elementi di b e basta.
non riesco ad andare oltre
io ho provato a svolgere l'esercizio ma riesco solo a fare quello che mi verifica se ogni elemento di a è pari alla somma di due elementi di b e basta.
non riesco ad andare oltre
#include<iostream> using namespace std; bool funzione(int [],int ,int [],int ); bool funz(int ,int [],int ); int main() { int da=4; int db=5; int a[]={8,8,5,309}; int b[]={2,6,3,1,2}; if(!(funzione(a,da,b,db))) cout<<"NON "; cout<<" E' VERIFICATA LA CONDIZIONE DELL'ESERCIZIO"<<endl; return 0; } bool funz(int v,int b[],int db) { bool test=false; for(int i=0;i<db && !test;i++) { for(int j=0;j<db && !test;j++) { if(b[i]+b[j]==v) test=true; } } return test; } bool funzione(int a[],int da,int b[],int db) { bool condizione=true; int k=0; while(k<da && condizione) { if((funz(a[k],b,db))) k++; else return false; } return condizione; }
Risposte
Salve maschulillo,
se hai verificato, solamente, che ogni elemento di a è uguale alla somma di due elementi b, allora la condizione che ogni elemento di a è almeno la somma di due elementi di b è verificata, logicamente parlando. A meno che tu vuoi sapere tutti i casi possibili in cui un elemento di a è almeno la somma di due elementi di b, giusto? Ma per quanto riguarda la verifica dell'esercizio, e per ciò che dici, esso è concluso.
Cordiali saluti
se hai verificato, solamente, che ogni elemento di a è uguale alla somma di due elementi b, allora la condizione che ogni elemento di a è almeno la somma di due elementi di b è verificata, logicamente parlando. A meno che tu vuoi sapere tutti i casi possibili in cui un elemento di a è almeno la somma di due elementi di b, giusto? Ma per quanto riguarda la verifica dell'esercizio, e per ciò che dici, esso è concluso.
Cordiali saluti