• 习题1


    题目如下

    编程实现:设n为1~1500间的所有整数,按照如下要求计算和输出。
        1、判断并输出n中能被3和5和7同时整除的数的个数;
        2、判断并输出n中能被3或5或7整除的数的个数;
        3、判断并输出n中能被3或5或7整除的所有数的累加和;
        4、判断并输出n中能被3或5或7整除的前20个数的累加和;
        5、判断并输出n中能被3或5或7整除的前10个数的累乘积。

    1.判断并输出n中能被3和5和7同时整除的数的个数

    首先定义变量i,范围在1-1500之间,应用for循环,运用“与”符号&&

    public static void main(String args[]){for(int i=1;i<1501;i++){
                if(i%3==0 && i%5==0 && i%7==0){
                    System.out.println(i);
                    
                }
            }
        }

    输出结果

    题目要求求得能被整除数的个数,定义变量num,再进行输出

    public static void main(String args[]){int num=0;
            for(int i=1;i<1501;i++){
                if(i%3==0 && i%5==0 && i%7==0){
                    num++;
                }
            }
            System.out.println(num);
        }

    结果

    2.判断并输出n中能被3或5或7整除的数的个数

    将以上代码中“与”符号&修改为“或”符号|

    public static void main(String args[]){int num=0;
            for(int i=1;i<1501;i++){
                if(i%3==0 || i%5==0 || i%7==0){
                    num++;
                }
            }
            System.out.println(num);
        }

    结果

    3.判断并输出n中能被3或5或7整除的所有数的累加和

    在第二题的基础上,修改num=0为num=num+i

    public static void main(String args[]){int num=0;
            for(int i=1;i<1501;i++){
                if(i%3==0 || i%5==0 || i%7==0){
                    num=num+i;
                }
            }
            System.out.println(num);
        }

    结果

     4.判断并输出n中能被3或5或7整除的前20个数的累加和

    定义num计数,sum求和,运用break当num=20时跳出循环

    public static void main(String args[]){int num=0;
            int sum=0;
            for(int i=1;i<1501;i++){
                if(i%3==0 || i%5==0 || i%7==0){
                    num++;
                    sum=sum+i;
                    if(num==20)break;
                }
            }
            System.out.println(sum);
        }

    结果

    5.判断并输出n中能被3或5或7整除的前10个数的累乘积

    由于此时求和为乘积,所以将int sum应=1;求和sum=sum*i;跳出循环条件更改为num==10

    且此时sum应使用long型,否则数据溢出

    public static void main(String args[]){int num=0;
            long sum=1;
            for(int i=1;i<1501;i++){
                if(i%3==0 || i%5==0 || i%7==0){
                    num++;
                    sum=sum*i;
                    if(num==10)break;
                }
            }
            System.out.println(sum);
        }

    结果

  • 相关阅读:
    angularJs实现星星等级评分
    angular自定义过滤器在页面和控制器中的使用
    字符串单个替换
    angular中的$cookies和$cookieStore设置过期时间
    DOM操作和jQuery实现选项移动操作
    PHP 中英文混排截取字符串
    固定格式时间转换时间戳
    PHP生成唯一订单号的方法汇总
    MySQL优化索引及优化汉字模糊查询语句
    简单封装数据库类
  • 原文地址:https://www.cnblogs.com/FrankLiner/p/7502819.html
Copyright © 2020-2023  润新知