zoukankan      html  css  js  c++  java
  • 杭电1197

    题意:找出大于或等于2992的所有特殊的四位数,这种数字在十进制形式下的各位之和与八进制和十二进制的各位之和都相等。

     
    Analyse:
    考的明显是进制转换。若有一个整数a=b[n]*10^n+b[n-1]*10^(n-1)+……+b[1]*10+b[0],要转换成十进制,我们可以从它十进制形式的最后一位开始往前取,先对10取余,再整除10,再取余,再整除10……,一直做n次即可。
    View Code
     1 #include<stdio.h>
    2 main()
    3 {
    4 int temp,i,t,sum10,sum12,sum16;
    5 for(i=1000;i<=9999;i++)
    6 {
    7 temp=i;
    8 sum10=0;
    9 for(t=0;t<4;t++)
    10 {
    11 sum10+=temp%10;
    12 temp/=10;
    13 }
    14 temp=i;
    15 sum12=0;
    16 for(t=0;t<4;t++)
    17 {
    18 sum12+=temp%12;
    19 temp/=12;
    20 }
    21 if(sum10==sum12)
    22 {
    23 temp=i;
    24 sum16=0;
    25 for(t=0;t<4;t++)
    26 {
    27 sum16+=temp%16;
    28 temp/=16;
    29 }
    30 if(sum16==sum12)
    31 printf("%d\n",i);
    32 }
    33 }
    34 }
  • 相关阅读:
    取最小未用的账号
    Oracle 同义词
    RMAN备份报 RMAN-06059 错误
    Oracle11g memory_target
    基础记录
    uboot启动流程
    android有关生命周期探讨
    can协议
    java虚拟机
    内存管理机制
  • 原文地址:https://www.cnblogs.com/ZShogg/p/2408925.html
Copyright © 2011-2022 走看看