小程序探索:质数、水仙花数与自幂数的计算及冒泡排序实现

需积分: 25 2 下载量 129 浏览量 更新于2024-09-12 收藏 2KB TXT 举报
该资源包含了四个小程序,分别用于计算质数、判断水仙花数、找到自幂数以及实现冒泡排序。 1. **质数判断** 在Java程序 `zhishu` 中,通过一个循环(从2到1000)检查每个数是否为质数。质数是只有两个正因子(1和自身)的大于1的自然数。代码通过一个嵌套循环(从2到n/2)检查是否有其他因子,如果有,则将布尔变量 `b` 设为 `false` 并跳出循环。如果 `b` 保持为 `true`,则说明 `n` 是质数,将其打印出来。这个程序可以优化,例如通过只检查到 sqrt(n) 来减少计算量。 2. **水仙花数** `shuixianhua` 类中的程序用于找出1到999之间的水仙花数。水仙花数是指一个三位数,其各位数字立方和等于它本身。程序通过三个变量 `i`,`j` 和 `k` 分别存储百位、十位和个位数字,然后检查它们的立方和是否等于原始数字。如果满足条件,就打印出这个数。 3. **自幂数** 第三个程序 `shuixianhuashu` 用于寻找自幂数,也就是一个数等于其所有位数字的幂次之和。程序通过将数字转换为字符串,然后遍历每一位,计算每位数字的三次幂并累加。如果最终的累加和等于原始数字,那么这个数字就是自幂数,并打印出来。 4. **冒泡排序** 最后一个程序 `shuixianhuashu` 实现了冒泡排序,这是一种简单的排序算法。它通过不断交换相邻的未排序元素,使得较大的元素逐渐“冒泡”到数组的末尾。这个程序使用两个嵌套循环,外层循环控制排序的轮数,内层循环负责比较和交换相邻元素。虽然冒泡排序的时间复杂度在最坏情况下是O(n^2),但它在最好情况下(已排序数组)的时间复杂度是O(n)。 这些小程序展示了基础的编程概念,如循环、条件判断、数字处理以及简单的算法实现,对于初学者来说是很好的学习材料。