判断0到4000中含数字1的个数

#include<iostream>
using namespace std;

int main(){
	int num=0;
	for(int i=0;i<4000;i++){
		int j=i;
		while(j){
			if(j%10==1)
			{
				num++;
				break;
			}
			else j=j/10;
		}

	}
	cout<<num<<endl;
	return 0;
}

  把每一位取出来判断是不是1

计算方法,位从高到低,1_ _ _共有1000个数

_ 1_ _共有3*1*10*10

_ _1_ 共有3*9*1*10

___1共有3×9×9

总共1000+300+270+243=1813种

考试时犯迷糊把3当成2了,泪

时间: 2024-10-20 05:52:50

判断0到4000中含数字1的个数的相关文章

c语言:找出1到4000中,数字的各位数之和能被4整除的数有多少个?

找出1到4000中,数字的各位数之和能被4整除的数,如:745:7+4+5=16,16可以被4整除:28:2+8=10,10不能被4整除:745就是这样的特殊数字,而28不是,求:这样的数字共有多少个? 解: (1)对于4000,4+0+0+0=4,显然4000是满足条件的数字: (2)对于1到3999,我们把每个数字看成4位[][][][]的形式,第一位[]取0到3,后3位取[0][0][0]到[9][9][9],用sum表示4位数字的和: 2.1:若后3位为一个奇数,则第1位取1或3,必定可

python学习:判断字符串中字母数字空格的个数

'''输入一行字符,分别统计出包含英文字母.空格.数字和其它字符的个数. 统计出英文字母字符的个数 ''' # -*- coding: utf-8 -*- import re #正则表达式匹配 def isMathc(src,pat):     pattern = re.compile(pat)     result = re.match(pattern,src)     if result == None:         return 0     else:         return 1

计算字符串中字母数字空格等个数

本文主要是实现:输入字符串,计算它的字母.数字.空格和其他符号的个数 代码: #!/usr/bin/env python# -*- coding:utf-8 -*-# author by lh r=raw_input("请输入您要计算的字符串:") def func(s): all_alphanum=0 #初始化字母的总数为0 all_othersnum=0 #初始化其他字符总数为0 all_spacenum=0 #初始化空格的总数为0 all_digitnum=0 #初始化数字的总数

课堂练习——找十进制数中数字1的个数

题目要求: 给定一个十进制的正整数,写下从1开始,到N的所有整数,然后数一下其中出现“1”的个数. 要求: 1.写一个函数 f(N) ,返回1 到 N 之间出现的“1”的个数.例如 f(12)  = 5. 2.在32位整数范围内,满足条件的“f(N) =N”的最大的N是多少. 一.解决思路 通过列举几个数进行计算,可以发现函数f(N)规律如下: 1.一位十进制数:当N>=1时,f(N)=1:当N=0时,f(N)= 0; 2.两位十进制数:f(13)=个位出现1的个数+十位出现1的个数=2+4=6

找出十进制数中出现的&#39;&#39;一&#39;&#39;的个数

一.题目要求: 给定一个十进制的正整数,写下从1开始,到N的所有整数,然后数一下其中出现“1”的个数. 要求: 1.写一个函数 f(N) ,返回1 到 N 之间出现的“1”的个数.例如 f(12)  = 5. 2.在32位整数范围内,满足条件的“f(N) =N”的最大的N是多少. 二.解决思路 通过列举几个数进行计算,可以发现函数f(N)规律如下: 1.一位十进制数:当N>=1时,f(N)=1:当N=0时,f(N)= 0; 2.两位十进制数:f(13)=个位出现1的个数+十位出现1的个数=2+4

java中判断一个字符串是否“都为数字”和“是否包含数字”和“截取数字”

在javascript中有一个方法isDigit()使用来判断一个字符串是否都是数字,在java的字符串处理方法中没有这样的方法,觉得常常需要用到,于是上网搜了一下,整理出了两个用正则表达式匹配的判断方法,如下: // 判断一个字符串是否都为数字 public boolean isDigit(String strNum) { return strNum.matches("[0-9]{1,}"); } // 判断一个字符串是否都为数字 public boolean isDigit(Str

java 判断一个字符串中的数字:是否为数字、是否包含数字、截取数字

题外话: JavaScript中判断一个字符是否为数字,用函数:isDigit(); 一.判断一个字符串是否都为数字 package com.cmc.util; import java.util.regex.Matcher; import java.util.regex.Pattern; public class DigitUtil { public static void main(String[] args) { String str="123d"; System.out.prin

Python(66)_判断用户传入的参数str中计算数字,字母,空格,以及其他的个数,并返回结果

#-*-coding:utf-8-*- ''' 写函数,判断用户传入的参数str中计算数字,字母,空格,以及其他的个数,并返回结果 ''' content = input('>>>') def func(s): num = 0 alpha = 0 space = 0 others = 0 dic ={ 'num':0, 'alpha':0, 'space':0, 'other':0 } for i in s: if i.isdigit(): dic['num'] +=1 elif i.i

剑指offer(Java版)第一题:在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。 *请找出数组中任意一个重复的数字。 *例如,如果输入长度为7的数组{2, 3, 1, 0, 2, 5, 3},那么对应的输出是重复的数字2或者3。

/*在一个长度为n的数组里的所有数字都在0到n-1的范围内. * 数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次. * 请找出数组中任意一个重复的数字. * 例如,如果输入长度为7的数组{2, 3, 1, 0, 2, 5, 3},那么对应的输出是重复的数字2或者3.*/ import java.util.*; public class Class1 { static class findRepeatedNumber{ public int findRepeatedN