我是靠谱客的博主 繁荣面包,最近开发中收集的这篇文章主要介绍WZOI-303求补码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目描述:

给出一个16位二进制数的原码,能够得到该数的补码。

输入格式:

一个只包含0和1的16位字符串,表示整数的原码。

输出格式:

输入的整数的补码,用只包含0和1的16位字符串表示。
请注意行尾输出换行。

样例输入:

样例1
1000000000011111
样例2
1000000000000000

样例输出:

样例1
1111111111100001
样例2
0000000000000000

代码如下:

#include<bits/stdc++.h>
using namespace std;
int main(){
char a[17];
cin>>a;
if(a[0]=='1'){
for(int i=1;i<16;i++){
if(a[i]=='1'){
a[i]='0';
}else if(a[i]=='0'){
a[i]='1';
}
}
a[15]++;
for(int i=15;i>=0;i--){
if(a[i]=='2'){
a[i]='0';
a[i-1]++;
}
}
}
cout<<a;
return 0;
}

最后

以上就是繁荣面包为你收集整理的WZOI-303求补码的全部内容,希望文章能够帮你解决WZOI-303求补码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部