Powtarza się gdyż w instrukcji sprawdzającej
if((cards[i].type == t)||(cards[i].value == v)||(cards[i].yours == y))
ostatni człon
cards[i].yours == y
jest zawsze prawdziwy. Każda karta ma wartość yours równą false, oraz za każdym razem do funkcji testCards jest przesyłana zmienna y mająca także wartość false.