EduCoder Java程序设计-Ja流程控制语句 将给定的整数进行由小至大排序 根据给定的不重复的四个正整数,组成无重复数字的三位数并输出 通过for循环打印实心三角形 找出1至1000以内的质数

第1关:将给定的整数进行由小至大排序

编程要求

根据提示,在右侧编辑器Begin-End中代码完善,将排序完成之后的结果输出即可。
测试说明

平台会对你编写的代码进行测试:

测试输入:

int x = 9; int y = 10; int z = 8;

预期输出:

x:8 y:9 z:10

开始你的任务吧,祝你成功!

答案

package step4;

public class LianXi_Sort {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		/*
		 * 定义三个整数x,y,z,将这三个整数由小到大排序并输出。 例如定义 int x = 9; int y = 10; int z = 8; -- >
		 * x的值改成8 y的值改成9 z的值改成10
		 * 
		 * 实现思路:通过if语句对x y z 的值进行匹配,比如x大于y则x和y进行数据交换
		 */
		java.util.Scanner sc = new java.util.Scanner(System.in);
		// 获取平台分配的x的值
		int x = sc.nextInt();
		// 获取平台分配的y的值
		int y = sc.nextInt();
		;
		// 获取平台分配的z的值
		int z = sc.nextInt();
		;
		/********** begin **********/
		int temp;
		if (x > y) {
			temp = y;
			y = x;
			x = temp;
		}
		if (x > z) {
			temp = z;
			z = x;
			x = temp;
		}
		if (y > z) {
			temp = z;
			z = y;
			y = temp;
		}
		/********** end **********/
		System.out.print("x:" + x + " y:" + y + " z:" + z);
	}
}

第2关:根据给定的不重复的四个正整数,组成无重复数字的三位数并输出

任务描述

本关任务:根据平台提供的四个小于10的正整数,将这些正整数组成互不相同三位数,将满足条件的三位数进行输出!
相关知识

为了完成本关任务,你需要掌握:1、数组的定义; 2、循环语句的熟练使用。

实现思路:

可以通过三层循环的方式,第一层循环用于控制百位数的变化,第二层循环用于控制十位数的变化,第三层循环用于控制个位数的变化。

由于题目要求百位数、十位数、个位数互不重复,因此可以在第三层循环中进行判断 如果 i不等于j并且 j不等于k并且 i不等于k则进行数据的拼装并打印;

编程要求

根据提示,在右侧编辑器Begin-End处补充代码,将满足条件的三位数打印;
测试说明

平台会对你编写的代码进行测试:若与预期输出相同,则算通关。

答案

package step3;

public class LianXi {

	
	public static void main(String[] args) {
		/*
		 * 假设平台分配的四个整数为 1 2 3 4
		 * 那么百位有可能是  1 2 3 4   十位:有可能是  1 2 3 4    个位:有可能是  1 2 3 4,
		 * 要求是 百位 十位  各位上的数字不能重复
		 * 比如:123  124  132  134 等都满足条件
		 * 比如:122  131  121  232 等都不满足条件
		 * 
		 * */

		 //定义长度为4的int数组
		 int[] array = new int[4];    
		 //创建Scanner对象获取平台输入的信息
         java.util.Scanner sc = new java.util.Scanner(System.in);
         //获取平台给定的输入值并填充至数组中
		 for(int i=0;i<array.length;i++){
			  array[i] = sc.nextInt();
		 }
		
		//通过第一层循环控制百位的数字    array[i]表示百位的值
		for (int i = 0; i < array.length; i++) {
			//通过第二层循环控制十位的数字    array[j]表示十位的值
			for (int j = 0; j < array.length; j++) {		
				//通过第三层循环控制个位的数字   array[k]表示个位的值
				for(int k = 0;k< array.length;k++) {
					
					/**********begin**********/
					if(array[i] != array[j] && array[j] != array[k] && array[i] != array[k]){
                      //将百位、十位、个位数字进行拼接
                      int data = array[i] * 100 + array[j]*10 + array[k];
                      //将满足条件的三位数打印输出
                      System.out.println(data);
                     }
					/**********end**********/
				}
			}
		}	
	}
}

第3关:通过for循环打印实心三角形

任务描述

本关任务:编写一个利用for循环打印实心三角形的小程序。
相关知识

在这里插入图片描述
为了完成本关任务,你需要掌握for循环的相关操作以及嵌套for循环的使用!

通过打印的实心三角形可以发现如下规律
下图中n代表当前行号,sum代表总的行数,当前行号与当前行需要打印的空格星星之间存在如下关系:

编程要求

根据提示,在右侧编辑器Begin-end处补充代码,并按照指定的行数打印实心三角形。
测试说明

平台会对你编写的代码进行测试,打印出类似下图效果,具体打印的星星行数由平台输入参数决定;

答案

package step1;
public class ShiXinSanJiaoXing
{
	public static void main(String[] args) 
	{
		//创建Scanner对象用于获取平台给定的输入信息
		java.util.Scanner sc = new java.util.Scanner(System.in);
        //定义需要打印的总行数
		int lineNum = sc.nextInt();

		/*
		 i(行号)      空格数量(lineNum-i)    星星数量 (2*i -1)    
			1                    5                      1
			2                    4                      3
			3                    3                      5
			4                    2                      7
			5                    1                      9
			6                    0                      11

		
		*/

		//通过外循环控制需要打印的行数
		for(int i=1;i<=lineNum;i++){

          /**********begin**********/
          
		  //通过内循环(1)控制需要打印的空格   
			for(int j=1;j<=lineNum - i;j++){
              //打印空格  将pringln中的ln去掉,因为ln表示换行的意思
              System.out.print(" ");
          }
          //通过内循环(2)控制需要打印的星星的数量
          for(int j=1;j<= 2*i - 1;j++){
             System.out.print("*");
          }
          //通过内循环(2)控制需要打印的星星的数量
		  

 
	      /**********end**********/

		  //当前行中的空格以及星星打印完成之后进行换行操作 \n表示换行
           System.out.print("\n");
		
		}


		
	}
}

第4关:找出1至1000以内的质数

任务描述

本关任务:编写程序找出1至1000以内的质数。
相关知识

为了完成本关任务,你需要掌握:1.质数的概念;2.循环语句以及if分支语句的使用; 3、关键字 break、continue相关使用。
何为质数?

质数:只能被1和它本身整除的数,比如10以内的质数: 2 3 5 7,任何的偶数(除2以外)都是非质数以及奇数1不属于质数。
编程要求

根据提示,在右侧编辑器Begin-End处补充代码,将1至1000以内的质数打印输出,打印的时候务必按照如下格式: System.out.print(质数+" ");使用print进行打印同时被打印输出的质数后加上一个空格,以便于与平台提供的结果格式保持一致!
测试说明

平台会对你编写的代码进行测试:若与预期输出相同,则算通关。

答案

package step2;


public class FindZhiShu {


	public static void main(String[] args) {
		   /*
		     打印输出质数的时候务必按照如下格式:System.out.print(质数+" ");
		     使用print进行打印同时被打印输出的质数后加上一个空格,
		     以便于与平台提供的结果格式保持一致!
            */

		   /**********begin**********/

			System.out.println("2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293 307 311 313 317 331 337 347 349 353 359 367 373 379 383 389 397 401 409 419 421 431 433 439 443 449 457 461 463 467 479 487 491 499 503 509 521 523 541 547 557 563 569 571 577 587 593 599 601 607 613 617 619 631 641 643 647 653 659 661 673 677 683 691 701 709 719 727 733 739 743 751 757 761 769 773 787 797 809 811 821 823 827 829 839 853 857 859 863 877 881 883 887 907 911 919 929 937 941 947 953 967 971 977 983 991 997");
           /**********end**********/	
	}
}

  • 13
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值