c++ - 循环和数组

标签 c++ arrays loops

您好,我正在尝试构造一个循环来执行 (C++) 中 8 4 2 1 代码的 16 种状态

   while( condition)
   {
   double Bubble[16], Bubble1[16];
        Bubble[0] = ( a-2 - (b-2) ) + ( c-2 - (d-2)); // represents 0000
        Bubble[1] = ( a-2 - (b-2) ) + ( c-2 - (d+2)); // represents 0001
        Bubble[2] = ( a-2 - (b-2) ) + ( c+2 - (d-2)); // represents 0010
        Bubble[3] = ( a-2 - (b-2) ) + ( c+2 - (d+2)); //represents 0011
    .......
        Bubble[15] =(a+2 - (b+2) ) + ( c+2 - (d+2)); //represents 1111
  }

是否有使用 for 循环进行编码的简单方法?而不是每次都写 bubble[]?
0代表-2,1代表+2。所以我有 4 个变量,每个变量都需要递增和/或递减。这可以使用 for 循环完成吗?

感谢您的帮助

最佳答案

我不完全确定你的代码在做什么,但你可以按如下方式重写它:

for (int i = 0; i < 16; i++) {
  double a_value = (i & 0x8) ? a+2 : a-2;
  double b_value = (i & 0x4) ? b+2 : b-2;
  double c_value = (i & 0x2) ? c+2 : c-2;
  double d_value = (i & 0x1) ? d+2 : d-2;
  Bubble[i] = (a_value - b_value) + (c_value - d_value);
}

关于c++ - 循环和数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13767530/

相关文章:

css "vertical for-loop"- css 网格的助手 - 字符串重复/构建

python - 强制从可能可迭代对象的列表/数组中创建一维 numpy 数组

c++ - qt 应用程序未运行

c++ - 即使密码/用户无效,程序仍会继续

python - 在二维数组内追加/连接数组

c# - Dictionary<int [], bool> - 比较数组中的值,而不是引用?

html - ngFor - 按索引打印数组项

c++ - 用于验证类型的动态转换

c++ - 没有 GL_COLOR_INDEX 的 glBitmap()

php - 显示 1 行内的多行数据 MySQL PHP