码迷,mamicode.com
首页 > 其他好文 > 详细

华为在线OJ_找7

时间:2015-08-08 06:27:45      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:

描述

输出7有关数字的个数,包括7的倍数,还有包含7的数字(如17,27,37...70,71,72,73...)的个数

知识点 循环
运行时间限制 0M
内存限制 0
输入

一个正整数N。(N不大于30000)

输出

不大于N的与7有关的数字个数,例如输入20,与7有关的数字包括7,14,17.

样例输入 20
样例输出 3

 

/*
 * ok
 *(1) 将scStr.nextInt()理解,对应的左边也要是int型
 *(2)之前字符串的时候是str.nextLine().左边对应的是String型
 *(3)注意Java中定义整形或者字符型或者字符串型都是用new的
 *    格式是 int sum[]=new int[开辟大小];//开辟一个整形数组
 *          char ch[]=new char[开辟大小];//开辟一个字符型数组
 * (4) 对于位置长度的可以用向量Vector来存储
 *     Vector<String> store=new Vector<String>();   
 *     Vector<Integer> store=new Vector<Integer>();而且整形不是用int,而是Integer
 *    
 */
package t0806;

import java.util.Scanner;
import java.util.Vector;

public class huawei5 {
    static int count;    
    public static void main(String[] args) { 
        
    System.out.println("请输入数字:");  
    Scanner scStr = new Scanner(System.in); //从键盘获取字符串  
    count= scStr.nextInt();              //将Scanner对象中的内容以字符串的形式取出来  
    int count1=count;int count2=0;
    Vector<Integer> store=new Vector<Integer>(); 
    for(int i=1;i<count1;i++){
        if(i%7==0){
            store.addElement(i);  count2++;          
        }
        else{
        //将i拆分成字符串形式  
            int sqy=0;int mxf=0;
            mxf=i;
            while(true){                 
                 sqy=mxf-(mxf/10)*10;
                 if(sqy==7){
                      store.addElement(i);count2++;
                     break;
                    } //一位一位开始break,一旦各位开始就break
                 mxf=(mxf/10);
                 if(mxf==0){ //如果为0跳出循环
                     break;
                    }
          }
     }//else
   }
   System.out.println(count2);   
    
 }
}

 

华为在线OJ_找7

标签:

原文地址:http://www.cnblogs.com/snowwhite/p/4712368.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!