当前位置: 首页>>代码示例>>C++>>正文


C++ DataNode::double_val方法代码示例

本文整理汇总了C++中DataNode::double_val方法的典型用法代码示例。如果您正苦于以下问题:C++ DataNode::double_val方法的具体用法?C++ DataNode::double_val怎么用?C++ DataNode::double_val使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在DataNode的用法示例。


在下文中一共展示了DataNode::double_val方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: compare_DataNode

int compare_DataNode(const void* A,const void* B)
{
   DataNode *x = (DataNode *)A;
   DataNode *y = (DataNode *)B;
   if (x->missing && y->missing) {
       return 0;
   }
   else if (x->missing && !y->missing) {
       return 1;
   }
   else if (!x->missing && y->missing) {
      return -1;
   }
   else {
      if (x->double_val() < y->double_val()) {
         return -1;
      }
      else if (x->double_val() == y->double_val()) {
         return 0;
      }
      else {
         return 1;
      }
   }
}
开发者ID:jianzeng,项目名称:MatvecStaticLib,代码行数:25,代码来源:field.cpp

示例2: covariance

DataNode Field::covariance(const Field *B) const
{
   if (B) throw exception("Field::covariance(B): not yet implemented");
   DataNode retval;
   retval.missing = 1;

   if (col_struct.type() != 'S') {
      unsigned i,k;
      for (k=0,i=0; i<ne; i++) if (!dat_vec[i].missing) k++;
      if (k >= 2) {
         Vector<double> tmp(k);
         for (k=0,i=0; i<ne; i++) {
            if (!dat_vec[i].missing) tmp[k++] = dat_vec[i].double_val();
         }
         retval.double_val(tmp.variance());
         retval.missing = 0;
      }
   }
   return retval;
}
开发者ID:jianzeng,项目名称:MatvecStaticLib,代码行数:20,代码来源:field.cpp

示例3: product

DataNode Field::product(void) const
{
   DataNode retval;
   retval.missing = 1;
   if (col_struct.type() != 'S') {
      unsigned i,k=0;
      double x;
      for (x=1.0,k=0,i=0; i<ne; i++) {
         if (!dat_vec[i].missing) {
            k++;
            x *= dat_vec[i].double_val();
         }
      }
      if (k) {
         retval.missing = 0;
         retval.double_val(x);
      }
   }
   return retval;
}
开发者ID:jianzeng,项目名称:MatvecStaticLib,代码行数:20,代码来源:field.cpp

示例4: sumsq

DataNode Field::sumsq(void) const
{
   DataNode retval;
   retval.missing = 1;
   if (col_struct.type() !='S') {
      unsigned i,k;
      double y,x;
      for (x=0.0, k=0,i=0; i<ne; i++) {
         if (!dat_vec[i].missing) {
            k++;
            y = dat_vec[i].double_val();
            x += y*y;
         }
      }
      if (k) {
         retval.missing = 0;
         retval.double_val(x);
      }
   }
   return retval;
}
开发者ID:jianzeng,项目名称:MatvecStaticLib,代码行数:21,代码来源:field.cpp

示例5: min

DataNode Field::min(void) const
{
   DataNode retval;
   retval.missing = 1;

   if (col_struct.type() != 'S') {
      unsigned i, k=0;
      while (dat_vec[k].missing) k++;
      double y,mx = dat_vec[k].double_val();
      for (i=k; i<ne; i++) {
         if (!dat_vec[i].missing) {
            y = dat_vec[i].double_val();
            if ( y < mx) mx = y;
         }
      }
      if (k < ne) {
         retval.missing = 0;
         retval.double_val(mx);
      }
   }
   return retval;
}
开发者ID:jianzeng,项目名称:MatvecStaticLib,代码行数:22,代码来源:field.cpp


注:本文中的DataNode::double_val方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。