翁恺第三周2题

简介: import java.util.Scanner;public class TestWeng { public static void main(String[] args) { // TODO 自动生成的方法存根 /* 对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值。
import java.util.Scanner;

public class TestWeng {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
    /*    对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值。
        对于一个整数,从个位开始对每一位数字编号,个位是1号,
        十位是2号,以此类推。这个整数在第n位上的数字记作x,
        如果x和n的奇偶性相同,则记下一个1,否则记下一个0。
        按照整数的顺序把对应位的表示奇偶性的0和1都记录下来,
                                                654321       654321
        就形成了一个二进制数字。比如,对于342315,  342315      562123   
        这个二进制数字就是001101。*/              // 001101      001111 
    /*    你的程序要读入一个非负整数,整数的范围是[0,100000],
        然后按照上述算法计算出表示奇偶性的那个二进制数字,
        输出它对应的十进制值。*/
        /*输入格式:
            一个非负整数,整数的范围是[0,1000000]。

            输出格式:
            一个整数,表示计算结果。

            输入样例:
            342315

            输出样例:
            13*/
//        奇偶性相同的两个数的和一定是偶数
//        奇偶性不同的两个数的和一定是奇数
        
        
        Scanner in = new Scanner(System.in);
//        byte a = 0b1010;
//        System.out.println(a);
        int input = in.nextInt();
        int count = 0;
        int a = 0;
        int b = 0;
        int all = 0;
        int all10 = 0;
        int i = 0;
        int no = 0;
        int allAll = 0;
//        String twoT = Integer.toBinaryString(two);
//        String a = (Integer.toBinaryString(two));
        if(input>=0&&input<=1000000){
            
        
        do
        {    
            i = input%10;
            count += 1;
            input = input/10;
            if((i%2)!=0&&(count%2)!=0
                    ||(i%2)==0&&(count%2)==0)
            {
                a = count;
            }else
            {
                b = count;
            }
            
            
            
            
            if(a>b)
            {
                all += (int)Math.pow(2,(a-1));
                all10 += (int)Math.pow(10,(a-1));
            }
        
        
//            all10 += (int)Math.pow(10,(a-1));
            
//            all10 = (int) (all10+Math.pow(10,(a-1)));
////            all__ = 
//            System.out.println("all10"+all10);
//            no += (int) (Math.pow(10,(b-1)));
//            allAll = all10-no;
//            System.out.println("allAll:"+allAll);
//            System.out.println("no"+no);
//            System.out.println("成立a:"+a+" "+"不成立b"+b);
//            System.out.println("input"+input);
//            System.out.println((int)(i%2)+" --- "+(int)(count%2));
//            System.out.println("z1:"+two+" "+"count"+count);
//            System.out.println("twoT"+twoT);
            
        }while(input!=0);
//            System.out.print("twoT"+twoT);
        }
//        System.out.println(a+"--"+b);
        //把数值all转换为10进制 现有位数规则count.
        
        System.out.println("十进制"+all);
        System.out.println("二进制"+all10);
    }

}
public class O {

    public static void main(String[] args) {
        // TODO 自动生成的方法存根
        int sum = 0;
        int number = 999;
        int c;
        int a;
        int b = 0;
        int sum1 =0;
        if (number>=0&&number<=1000000) {
            do {
//                c=number/10; 
                a=number%10;
                b=b+1;  // 第几位
                if(a%2==b%2){
                    sum=(int) (sum+Math.pow(2, b-1));
                    sum1=(int) (sum1+Math.pow(10, b-1));
                }
                number=number/10;       
            } while (number!=0);
        }
        System.out.println("十进制"+sum); 
        System.out.println("二进制"+sum1); 
    }

}

 

import java.util.Scanner;
public class Main {
 
    public static void main(String []args) {
        Scanner in = new Scanner(System.in);
        int x=in.nextInt(),i=0,sum=0;
        do {
            if(((x%10)+i+1)%2==0)sum+=Math.pow(2,i);   //
            x=x/10;
            i++;
        }while(x>0);
        System.out.print(sum);
}
 
}

 

将编程看作是一门艺术,而不单单是个技术。 敲打的英文字符是我的黑白琴键, 思维图纸画出的是我编写的五线谱。 当美妙的华章响起,现实通往二进制的大门即将被打开。
相关文章
|
5月前
|
设计模式 算法 网络协议
【软考备战·五月模考】希赛网五月模考软件设计师上午题
瀑布模型 中各个活动按 线性顺序 连接,它规定了 由前至后、相互衔接的固定次序,如同瀑布流水逐级下落,所以其 前一个阶段工作的结果是后一个阶段工作的输入。
28 0
|
5月前
|
算法 Python
【软考备战·四月模考】希赛网四月模考软件设计师上午题(1)
相联存储器 的工作原理就是根据中央处理单元给出的一个相联关键字,然后据此完成后续的读取工作,所以 相联存储器均是按关键字进行检索的。
28 0
|
5月前
|
网络协议 算法 安全
【软考备战·四月模考】希赛网四月模考软件设计师上午题(2)
实用新型专利权和外观设计专利权的保护期限为10年;发明专利权 的保护期限为 20年。 注册商标 的保护期限为 10年,可以无限地延长。
24 0
江苏大学 离散数学 期末/考研复试 复习题整理
江苏大学 离散数学 期末/考研复试 复习题整理
272 0
江苏大学 离散数学 期末/考研复试 复习题整理
软考高项笔记(三):上午计算题相关概念
本篇博文主要分享在软考高项的上午选择题考试中,曾经出现过的一些题目的概念,本篇博文不包括任何题目,只是一些经典题目的解析,并且是在书上关注度比较少的概念!!
126 1
|
Perl 关系型数据库 RDS
[家里蹲大学数学杂志]第418期南开大学2013年实变函数期末考试试题参考解答
  1. 设 $A$ 为非可数的实数集合. 证明: 存在整数 $n$ 使得 $A\cap [n,n+1]$ 为可数集. ($15'$)   证明: 用反证法. 若 $$\bex A\cap [n,n+1]\mbox{ 可数,}\quad \forall\ n\in\bbZ.
1081 0
|
存储 算法 C语言
【算法编程】小学数学题难倒博士
昨天在科学网上得知这样一个新闻《越南小学数学题难倒博士》,据悉题目来自越南保禄小学三年班,不过报道称该题难倒了上至博士下至家长,未免也太言过其实了。
1240 0
|
Perl 资源调度
[家里蹲大学数学杂志]第392期中山大学2015年泛函分析考博试题回忆版
1. ($12'$) 求 $L^p(\bbR)$, $1\leq p\sigma}f_n(t)\rd t=0,\quad \forall\ \sigma>0. \eex$$ 试证: $$\bex f_n\to \delta,\mbox{ in }\mathcal{D}'(\bbR).
852 0
|
Perl Windows 资源调度
[家里蹲大学数学杂志]第387期一套实变函数期末试题参考解答
  一. (本题 $40'$, 每小题 $8$ 分) 证明以下结论: (1). 设 $\scrA$ 是由 $[0,1]$ 上互不相交的正测度集构成的集族, 则 $\scrA$ 中至多有可数个集.
969 0
|
关系型数据库 RDS Perl
[家里蹲大学数学杂志]第388期一套泛函分析期末试题参考解答
  1. ($20$ 分) 证明非线性积分方程 $$\bex x(t)+\lm \int_a^b K(t,s,x(s))\rd s=y(t),\quad \forall\ t\in [a,b] \eex$$ 在 $|\lm|$ 足够小时有唯一连续解.
1008 0