C03-Java同步实践加强班第4周上机任务

【感谢胡光老师提供题目】

回到C03-Java同步实践加强班学习安排


1. 一个数如果恰好等于它的因子之和,这个数就称为“完数”。编写应用程序,求1000之内的所有完数。

完数例如: 
  6=1+2+3  
  28=1+2+4+7+14 
  496=1+2+4+8+16+31+62+124+248 
  8128=1+2+4+8+16+32+64+127+254+508+1016+2032+4064 
参考代码:

package hu;
public class TestComNum {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		printComNum(1000);
	}
	static void printComNum(int n){
		
	}
}

2. 对于一个大于3位数的任意整数,输出其降序数。例如,整数82319,则其降序数是98321.

算法提示:将整数的各位数分解到一维数组a中,再将a数组中的元素按降序排序,最后输出a数组元素值。

package hu;
public class TestSort {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		sort(82319);
	}
	static void sort(int n){
		
	}
}

3.将二维数组中值最大的元素和左上角元素对调,然后将值最小的元素与右下角元素对调。

例如:
1 4 5 6
7 2 10 11
9 8 12 3

对调后结果:
12 4 5 6
7 2 10 11
9 8 3 1

package hu;
public class TestNewMatrix {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[][] a={{1,4,5,6},{7,2,10,11},{8,9,12,3}};
		printMatrix(a);//按二维方式输出数组
		printNewMatrix(a);//对调后输出数组
	}
	static void printMatrix(int[][] a){
		
	}
	static void printNewMatrix(int[][] a){
		
	}
}

4. 用二维数组表示矩阵,实现矩阵乘法。如C=A*B,要考虑矩阵相乘的规则,即A矩阵和B矩阵是任意的,C矩阵的产生是自动的(C的行数和列数要自动判断生成?怎样得到C矩阵的的行数和列数?)
package hu;
public class TestMatrixPlus {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[][] a={};//自己定义矩阵
		int[][] b={};//自己定义矩阵
		printMatrix(a,b);
	}
	static void printMatrix(int[][] a,int[][] b){
		//1.要判断矩阵能否相乘,能相乘继续,不能相乘给出提示为什么不能相乘
		//2.得到C矩阵的行数和列数,以产生C矩阵
		//3.输出结果矩阵C的值
	}


}






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

迂者-贺利坚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值