统计1~10000000之间只含有数字1和0的数的个数(如1,10,11,等)用pascal rep...
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/23 20:12:29
统计1~10000000之间只含有数字1和0的数的个数(如1,10,11,等)用pascal rep...
统计1~10000000之间只含有数字1和0的数的个数(如11011,等)用pascal rep...
统计1~10000000之间只含有数字1和0的数的个数(如11011,等)用pascal rep...
这题用数学方法,笔算就行.思路:把10000000看做二进制数,就是128,因此一共有128-1+1=128个
证明:我们先把前几个只含有数字1和0的数列出来: 1 10 11 100 101 110 111……发现了吗?它们正好与前几个二进制数一一对应.因此就很好算了.
推广: 如果题目是“统计1~10000000之间只含有数字0、1、2的数的个数”,只要将10000000当做三进制数就行了!
验证: 我们用一个枚举算法来写程序.
var s:string; i,j,sum:longint; flag:boolean;
begin for i:=1 to 10000000 do begin flag:=true; str(i,s); for j:=1 to length(s) do if (s[j]<>'0') and (s[j]<>'1') then begin flag:=false; break; end; if flag then begin inc(sum); writeln(s); end; end; writeln('sum=',sum); readln;end.
自己运行一下吧.结果如下(有一些显示不下)
证明:我们先把前几个只含有数字1和0的数列出来: 1 10 11 100 101 110 111……发现了吗?它们正好与前几个二进制数一一对应.因此就很好算了.
推广: 如果题目是“统计1~10000000之间只含有数字0、1、2的数的个数”,只要将10000000当做三进制数就行了!
验证: 我们用一个枚举算法来写程序.
var s:string; i,j,sum:longint; flag:boolean;
begin for i:=1 to 10000000 do begin flag:=true; str(i,s); for j:=1 to length(s) do if (s[j]<>'0') and (s[j]<>'1') then begin flag:=false; break; end; if flag then begin inc(sum); writeln(s); end; end; writeln('sum=',sum); readln;end.
自己运行一下吧.结果如下(有一些显示不下)
统计1~10000000之间只含有数字1和0的数的个数(如1,10,11,等)用pascal rep...
pascal 编程 1、统计1到200000000之间只含有数字0和1的这些的数的个数,如1,10,11,100等.2、
如何用pascal语言,把一个自然数转换为二进制,并统计1和0的个数
pascal编程求1-10000之间所有质因数的各位数字之和和等于该数各位数字只和的数字
free pascal 程序:打印由1,2,3,4四个数字组成的所有四位数,并统计个数.
用pascal编写程序 输入十个整数,统计大于0的数的个数.
Pascal输入一串字符,结束,分别统计其中数字(0,1,2,.9)出现的次数
统计1-1000之间所有能被3整除且十位数字为5、个位数字为7的数的个数
统计1-100之间整数中含数字3或5的个数
统计100-999之间满足条件“百位数字加十位数字加个位数字的和能被5整除”的数的个数,并输出统计结果.
编写程序,输出1-1000之间能被3和7整除的数,并统计其个数
pascal 读入一串数字,以句号结束,请统计其中‘0’到‘9’的各个数字的个数.