Java实验报告(一)

实验过程

1. 打印输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其中各位数字立方和等于该数本身。例如,153是一个“水仙花数”。

实验源码:

  1. import java.lang.Math;
  2. class Narcissus{
  3. public static void main(String[] args){
  4. int num1,num2,num3;
  5. int count = 0;
  6. for(int i = 100;i < 1000;i++){
  7. num1 = i / 100;
  8. num2 = (i % 100) / 10;
  9. num3 = i % 10;
  10. if(Math.pow(num1,3)+Math.pow(num2,3)+Math.pow(num3,3) == i){
  11. count = 1;
  12. System.out.println(i+"是水仙花数");
  13. }
  14. }
  15. if(count == 0){
  16. System.out.print("No");
  17. }
  18. System.out.println();
  19. }
  20. }

实验结果:

2. 编写Java程序,求13-23+33-43+…+973-983+993-1003的值。

实验源码:


  1. class Staggered{
  2. public static void main(String[] args){
  3. int num = 13;
  4. int flag = 1;
  5. int sum = 0;
  6. for(int i = 0;i <= 99;i++){
  7. sum += flag * num;
  8. flag = -flag;
  9. num += 10;
  10. }
  11. System.out.println(sum);
  12. }
  13. }

实验结果:

3. 编程求1!+2!+3!+…+20!。

实验源码:

  1. class Factorial{
  2. public static void main(String[] args){
  3. long result = 0;
  4. for(int i = 1;i <= 20;i++){
  5. long product = 1;
  6. for(int j = 1;j <= i;j++){
  7. product *= j;
  8. }
  9. result += product;
  10. }
  11. System.out.println("1!+2!+3!+…+20! = "+result);
  12. }
  13. }

实验结果:

4. 编写Java程序,计算8+88+888+…前10项之和。

实验源码:

  1. class Summation{
  2. public static void main(String[] args){
  3. String num = "";
  4. long sum = 0;
  5. for(int i = 1;i <= 10;i++){//求前N项的和
  6. num +='8';
  7. sum += Long.parseLong(num);
  8. }
  9. System.out.println(sum);
  10. }
  11. }

实验结果:

5. 一个数如果恰好等于它的因子之和,这个数就称为完数。编写程序输出1000以内的所有完数。

实验源码:


  1. class Perfect{
  2. public static void main(String[] args){
  3. for(int i = 1;i < 1000;i++){
  4. if(i == 1){
  5. continue;
  6. }
  7. int sum = 1;
  8. for(int j = 2;j < i;j++){
  9. if(i % j == 0){
  10. sum += j;
  11. }
  12. }
  13. if(sum == i){
  14. System.out.println(i + "是一个完数");
  15. }
  16. }
  17. }
  18. }

实验结果:

6. 编写应用程序,输出满足1+2+3+…+n<8888的最大正整数。

实验源码:


  1. class Simple{
  2. public static void main(String[] args){
  3. int sum = 0;
  4. int i = 1;
  5. while(sum < 8888){
  6. sum += i;
  7. i++;
  8. }
  9. System.out.println("满足1+2+3+…+n<8888的最大正整数为"+i);
  10. }
  11. }

实验结果:

7. 使用for循环打印下面的图形。

实验源码:


  1. import java.util.Scanner;
  2. class Triangle {
  3. public static void main(String[] args) {
  4. Scanner sc = new Scanner(System.in);
  5. int N = sc.nextInt();// 三角形的层数
  6. String op = sc.next();// 三角形的符号
  7. for (int i = 1; i <= N; i++) {
  8. int k = 1;
  9. for (int j = 1; j <= 2 * N; j++) {
  10. if (j == N - i + k) {
  11. System.out.print(op);
  12. k++;
  13. }
  14. if (j == N) {
  15. System.out.println();
  16. break;
  17. } else {
  18. System.out.print(" ");
  19. }
  20. }
  21. }
  22. }
  23. }

实验结果:

总结:

题目较为基础,比较简单

Java实验报告(一)的更多相关文章

  1. Java实验报告五:Java网络编程及安全

    Java实验报告五:Java网络编程及安全                                                                               ...

  2. Java实验报告二:Java面向对象程序设计

    Java实验报告二:Java面向对象程序设计                                                                               ...

  3. 20145203盖泽双:Java实验报告二

    Java实验报告二:Java面向对象程序设计 实验要求: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验内容 ...

  4. 20135231 JAVA实验报告三:敏捷开发与XP实践

    ---恢复内容开始--- JAVA实验报告三:敏捷开发与XP实践 20135231 何佳 实验内容 1. XP基础 2. XP核心实践 3. 相关工具 实验要求 1.没有Linux基础的同学建议先学习 ...

  5. 20155310第一周JAVA实验报告

    20155310第一周JAVA实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 使用JDK和IDE编译.运行简单 ...

  6. 20145310第一周JAVA实验报告

    20145310第一周JAVA实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 使用JDK和IDE编译.运行简单 ...

  7. 20145322第一次JAVA实验报告

    20145322第一周JAVA实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验名称:Java开发环境的熟悉(Linux + Eclipse) 实验日期:2016.04.08 实 ...

  8. 第三次Java实验报告

    Java实验报告 班级 计科二班 学号20188437 姓名 何磊 完成时间 2019/9/22 评分等级 实验三 String类的应用 实验目的 掌握类String类的使用: 学会使用JDK帮助文档 ...

  9. Java实验报告&&课程报告

    Java实验报告 班级 计算机科学与技术二班 学号 20188450 姓名 李代传 完成时间 2019/9/19 评分等级 实验二 Java简单类与对象 实验目的 掌握类的定义,熟悉属性.构造函数.方 ...

随机推荐

  1. 进程?线程?多线程?同步?异步?守护线程?非守护线程(用户线程)?线程的几种状态?多线程中的方法join()?

    1.进程?线程?多线程? 进程就是正在运行的程序,他是线程的集合. 线程是正在独立运行的一条执行路径. 多线程是为了提高程序的执行效率.2.同步?异步? 同步: 单线程 异步: 多线程 3.守护线程? ...

  2. hexo发布后样式丢失

    修改配置中url路径,和root,问题解决.

  3. 深入理解hadoop之mapreduce

    本文系原创,若有转载需要,请注明出处.https://www.cnblogs.com/bigdata-stone/ 1.mapReduce简介 MapReduce是面向大数据并行处理的计算模型.框架和 ...

  4. JS笛卡尔积算法与多重数组笛卡尔积实现方法示例

    js 笛卡尔积算法的实现代码,据对象或者数组生成笛卡尔积,并介绍了一个javascript多重数组笛卡尔积的例子,以及java实现笛卡尔积的算法与实例代码. 一.javascript笛卡尔积算法代码 ...

  5. 修改小程序checkbox样式

    未选中时的样式 checkbox .wx-checkbox-input { border-radius: 50%; height: 30rpx; width: 30rpx; margin-top: - ...

  6. JS-上下文练习

    /** * 因为JS没有块级作用域,if里面的foo又是以var形式声明的,所以会被提升上去, * 被赋值为undefined,之后undefined代表false,所以会进入if语句块, * foo ...

  7. Webstorm2017.3.3软件的安装使用

    下载 ▶进入jetbrains的官方网站点击download,即下载开始.官方网站链接:http://www.jetbrains.com/webstorm/ 安装 ▶双击刚下载完成的.exe文件开始进 ...

  8. celery最佳体验

    目录 目录 不使用数据库作为 Broker 不要过分关注任务结果 实现优先级任务 应用 Worker 并发池的动态扩展 应用任务预取数 保持任务的幂等性 应用任务超时限制 善用任务工作流 合理应用 a ...

  9. mysql详解常用命令操作,利用SQL语句创建数据表—增删改查

    关系型数据库的核心内容是 关系 即 二维表 MYSQL的启动和连接show variables; [所有的变量] 1服务端启动 查看服务状态 sudo /etc/init.d/mysql status ...

  10. PendSV异常介绍、用于上下文切换

    在这里,非常感谢<cortex-cm3权威指南>的翻译者. PendSV 的典型使用场合是在上下文切换时(在不同任务之间切换). 例如, 一个系统中有两个就绪的任务,上下文切换被触发的场合 ...