Ho dovuto scrivere questo programma sulla briscola per il mio esame di informatica.
Ho scritto varie funzioni e vanno bene, tranne alcune che non sono prese in considerazione (scusate il linguaggio non da esperta). Ovvero, le condizioni ci sono, le variabili si aggiornano (ho provato a stamparle e sono quelle che dovrebbero essere) però esce dal ciclo anche in circostanze in cui non dovrebbe!
Questa è la funzione;
void asso ()
{
if (manoC[0].v == 1 && manoC[0].s == manoU[N-1].s)
n = 0;
else if (manoC[1].v == 1 && manoC[1].s == manoU[N-1].s)
n = 1;
else if (manoC[2].v == 1 && manoC[2].s == manoU[N-1].s)
n = 2;
else cout << "no";
}
anche quando le condizioni ci sono, cioè N-1 è del valore che dovrebbe essere e il valore di manoC[] è giusto, non sceglie il valore n dell'istruzione. Spero di essermi spiegata. Vorrei sapere, a prima vista, c'è qualcosa di scritto male? Cose che entrano in conflitto che non ho considerato? Potreste dirmi cosa posso modificare? Ho fatto tutte le altre funzioni così e vanno bene, solo quelle di questo tipo mi da problemi; spero possiate capire quello che intendo e aiutarmi, grazie in anticipo a tutti.