首页 > 其他分享 >3416:【例72.1】 二进制转化为十进制

3416:【例72.1】 二进制转化为十进制

时间:2024-03-10 13:47:38浏览次数:29  
标签:二进制 3416 int 72.1 str 十进制

3416:【例72.1】 二进制转化为十进制

时间限制: 1000 ms 内存限制: 65536 KB
提交数: 544 通过数: 318
【题目描述】
把一个二进制数转化为十进制数。
【输入】
第一行一个正整数n(1≤n≤30),表示二进制数的长度。
第二行一个二进制数。
【输出】
输出一个整数,表示对应的十进制数。
【输入样例】
5
10101
【输出样例】
21

#include<bits/stdc++.h>
using namespace std;
//字符串解题方式 
int main(){
	long long n,ans=0;
	string str;
	cin>>n>>str;
	for(int i=n-1,j=0;i>=0;i--,j++){
		ans += (str[j]-'0')*pow(2,i);
	} 
	cout<<ans;
	return 0;
}
#include<bits/stdc++.h>
using namespace std;
int n,x;
string s;
//借用bitset实现将"01" 字符串变成内存中无符号的整数补码 
int main(){
	cin>>n>>s;
	bitset<32>b(s);
	x=b.to_ulong();
	cout<<x;
	return 0;
}

标签:二进制,3416,int,72.1,str,十进制
From: https://www.cnblogs.com/Andre/p/18064055

相关文章

  • 【已解决】[图文步骤] message from server: “Host ‘172.17.0.1‘ is not allowed t
    写于2024.03.07北京.朝阳@目录报错信息环境现场解决方案步骤:成功最后报错信息先看看和你的报错一样不一样null,messagefromserver:"Host'172.17.0.1'isnotallowedtoconnecttothisMySQLserver"环境现场mac电脑使用docker部署了一个mysql。docker......
  • C# 的浮点类型 float double 和十进制类型 decimal
    //浮点型数据floatdouble(双精度)//floatf=1.1;//ps:写小数的时候只要后面没有加上f/F默认是double类型//正确的定义doubled=1.1;floatf=1.1F;floatf1=1f;//f=d;//ps......
  • 所有十进制数位中不含2的正整数的倒数和
    \(x\ge1\),首先证明个简单的引理:\[\frac1x>\frac9{10}(\sum_{i=0}^9\frac1{10x+i}-\frac1{10x+2})\]不妨设\[f(x)=\frac1x((\sum\limits_{i=0}^9\frac1{10x+i})-\frac1{10x+2})\\f(x)=\frac{4536+211284x+2812995x^2+17430700x^3+59386250x^4+11......
  • ASCII 编码表----字符与对应十进制值的参考表
    字符十进制值-----------------NUL0SOH1STX2ETX3EOT4ENQ5ACK6BEL7BS8TAB9LF10VT11FF12CR13SO14SI15DLE16DC117DC218DC319DC420NA......
  • 关于十进制转二进制
    除2取余法:不断将十进制数除以2,每次记录余数,直到商数为0为止。将所有余数从下往上排列,即可得到对应的二进制数。短除法:不断将十进制数除以2,每次记录商数的整数部分,直到商数为0为止。将所有商数的整数部分从下往上排列,即可得到对应的二进制数。递归法:1.如果十进制数为0或1,则直接......
  • 关于十进制转二进制
    首先介绍了十进制和二进制的基本概念,然后详细阐述了将十进制数转换为二进制数的两种常用方法:除2取余法和递归法。通过比较两种方法的优缺点,得出结论:除2取余法更适合手动转换,而递归法更适合编程实现。最后,我们通过实验数据验证了这两种方法的正确性和有效性。关键词:十进制,二进制,除......
  • 对于十进制与二进制转换
    十进制转化为二进制是计算机科学中的一个基本概念,也是我们日常生活中经常遇到的问题。在计算机中,所有的数据都以二进制的形式存储和处理。因此,了解如何将十进制转化为二进制是非常重要的。在进行十进制转化为二进制的过程中,我们需要遵循一定的规则和步骤。下面,我将为大家详细介绍......
  • 二进制详解 —— 从十进制入手,学习了解二进制
    目录二进制与整数之间的转换二进制转化为十进制十进制转化为二进制与浮点数之间的转换二进制小数➡️十进制小数十进制小数➡️二进制小数二进制我认为想要降低对新事物的恐惧,快速学会新知识,最重要的是学会类比旧事物、推理和举一反三。二进制也不例外,所以再学习二进制之前,我们先......
  • [转][Java] 二进制、八进制、十进制、十六进制
    //二进制7System.out.println(0b111);//八进制73System.out.println(0111);//十进制111System.out.println(111);//十六进制273System.out.println(0x111);基本数据类型整数byte、short、int、long浮点数float、double字符  char布尔 boolean......
  • 十进制与二进制转换,有大佬能教教我更巧妙的方法吗
    include<stdio.h>include<string.h>include<math.h>intmain(){printf("请输入要转换的数,且十转二输入1,二转十输入0\n");inta;scanf("%d",&a);if(a1){printf("请输入十进制数:\n");intb;scanf("%d",&b);intsz[20......