題目描述
某輛汽車有一個里程錶,該里程錶可以顯示一個整數,爲該車走過的公里數。然而這個里程錶有個毛病:它總是從3變到5,而跳過數字4,里程錶所有位(個位、 十位、百位等)上的數字都是如此。例如,如果里程錶顯示339,汽車走過1公里之後,該里程錶顯示350。
輸入
輸入一個整數num,表示里程錶顯示的數值,1 < num < 1000,且一定不含整數4。
輸出
輸出一個整數,爲該汽車實際行駛的公里數。例如,如果該里程錶顯示55,則實際走過的公里 數是40。
樣例輸入
106
樣例輸出
86
思路:用res記錄實際走的路程,遇見帶4的數字直接跳過,遇見不帶4的對res自增。
AC代碼
#include<stdio.h>
#include<math.h>
int main()
{
int num;
scanf("%d",&num);
int i,res=0;
for(i=1;i<=num;i++)
{
if(i%10==4)continue;
if((i/10)%10==4)continue;
if((i/100)%10==4)continue;
res++;
}
printf("%d",res);
return 0;
}