Example #1
0
/*
	create a vector of 4 elements,
	insert two true values and one false value in it,
	verify that the vector contains two true values
*/
Test(simpl_infoTest,countTrueTest3) {
	pbit_vect v1=BV_create(4);
	BV_set(v1,0,1);
	BV_set(v1,1,1);
	BV_set(v1,2,0);
	cr_expect(countTrue(v1)==2);
}
Example #2
0
bool Sudoku::updateCand(int ii, int jj)
{
  int num = board[ii][jj];
  if(num==0){
    return true;
  }
  int cc[2];
  int ij[2];
  whichCell(ii,jj,cc);
  for(int idx = 0;idx<bsize;idx++){
    //check row
    if(board[ii][idx] == 0 && cand[ii][idx][num]){
      cand[ii][idx][num] = false;
      int cnt = countTrue(cand[ii][idx], bsize+1); 
      if(cnt==0){
        return false;
      }
      if(cnt==1){
      //  board[ii][idx]= firstTrue(cand[ii][idx], bsize+1);
      }
    }
    //check col
    if(board[idx][jj] == 0 &&cand[idx][jj][num]){
      cand[idx][jj][num] = false;
      int cnt = countTrue(cand[idx][jj], bsize+1);
      if(cnt==0){
        return false;
      }
      if(cnt==1){
      //  board[idx][jj] = firstTrue(cand[idx][jj], bsize+1);
      }
    }
    cellIdx(cc,idx,ij);
    if(board[ij[0]][ij[1]] == 0 && cand[ij[0]][ij[1]][num]){
      cand[ij[0]][ij[1]][num]=false;
      int cnt = countTrue( cand[ij[0]][ij[1]], bsize+1);
      if(cnt==0){
        return false;
      }
      if(cnt==1){
      //  board[ij[0]][ij[1]]= firstTrue( cand[ij[0]][ij[1]], bsize+1);
      }
    }
  }
  return true;
}
Example #3
0
  // Return the number of elements in the array for which the
  // somePredicate function returns true.
int countTrue(const double a[], int n)
{
	if (n <= 0)
		return 0;

  int temp = countTrue(a+1, n-1);
	if (somePredicate(a[0]))
		return 1 + temp;
	return temp;
}
Example #4
0
int countTrue(const double a[], int n)
{
    int counter = 0;
    if(n > 0)
    {
        if(somePredicate(a[n-1]))
            counter++;
        counter += countTrue(a, n-1);
    }
    return counter;
    
}
Example #5
0
void psempl_print(psempl p)
{
  DEBUG("fattori certi: %d",countTrue(p->factors_used));
  DEBUG("fattori non utilizzati: %d",countTrue(p->factors_not_used));
  DEBUG("est giĆ  fattorizzati: %d",countTrue(p->ests_ok));
}
Example #6
0
/*
	create a vector of 10 elements,
	insert two true values in arbitrary positions,
	verify that the vector contains two true values
*/
Test(simpl_infoTest,countTrueTest6) {
	pbit_vect v1=BV_create(10);
	BV_set(v1,7,1);
	BV_set(v1,4,1);
	cr_expect(countTrue(v1)==2);
}
Example #7
0
/*
	create a vector of 10 elements,
	verify that the vector contains zero true values
*/
Test(simpl_infoTest,countTrueTest4) {
	pbit_vect v1=BV_create(10);
	cr_expect(countTrue(v1)==0);
}