zoukankan      html  css  js  c++  java
  • 二进制加法

    考虑把两个n位二进制整数加起来的问题,这两个整数分别存储在两个n元数组a和b中。这两个整数的和应按二进制形式存储在一个n+1元数组c中,请给出该问题的形式化描述,并写出代码(见算法导论第三版 习题2.1-4)

     1 #include<iostream>
     2 #include<string>
     3 #include<cstring>
     4 using namespace std;
     5 /**
     6  * @desc binary add
     7  *
     8  */
     9 void binAdd(int a[], int b[], int c[]) {
    10         int key, flag=0;
    11         for(int i=0;i<5;i++) {
    12                 key = a[i] + b[i] + flag;
    13                 c[i] = key % 2;
    14                 if(key > 1)
    15                         flag = 1;
    16                 else
    17                         flag = 0;
    18         }
    19         if(flag == 1)
    20                 c[5] = 1;
    21 }
    22 int main() {
    23         int a[5] = {1, 0, 1, 0, 1};
    24         int b[5] = {1, 1, 1, 0, 1};
    25         int c[6] = {0};
    26         binAdd(a, b ,c);
    27         for(int i = 0; i < 6; i++)
    28                 cout<<c[i]<<endl;
    29 }
  • 相关阅读:
    Windows系统的DOS常用命令
    常用pom
    ssm整合
    pom依赖集合
    json
    软件项目管理笔记-软件项目计划
    CSS
    网络配置
    用户组
    用户管理
  • 原文地址:https://www.cnblogs.com/sanfeng/p/4374196.html
Copyright © 2011-2022 走看看