当前位置: 首页 > news >正文

二、Java方法对应练习

文章目录

      • 1.实现一个函数,检测一个年份是否为闰年
      • 2.实现一个两个整数相加的方法
      • 3.递归求阶乘
      • 4.递归按顺序打印一个数字的每一位(例如1234打印出1 2 3 4)
      • 5. 递归求1+2+3+...+10
      • 6.写一个递归方法,输入一个非负整数,返回组成它的数字之和,例如,输入1729,则应该返回1+7+2+9,它的和是19
      • 7.求斐波那契数列的第N项

1.实现一个函数,检测一个年份是否为闰年

import java.util.Scanner;  
public class ImplementAFunctionThatDetectsIfAYearIsALeapYear {  public static void main(String[] args) {  System.out.println("请输入一个年份");  Scanner scanner = new Scanner(System.in);  int year = scanner.nextInt();  System.out.println(isLeapYear(year));  }  public static boolean isLeapYear(int year) {  return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);  }  
}

2.实现一个两个整数相加的方法

import java.util.Scanner;  
public class ImplementAMethodOfAddingTwoIntegers {  public static void main(String[] args) {  Scanner scanner = new Scanner(System.in);  System.out.println("请输入两个数字");  int a = scanner.nextInt();  int b = scanner.nextInt();  System.out.println(isAdd(a, b));  }  public static int isAdd(int a, int b)  {  return a + b;  }  
}

3.递归求阶乘

import java.util.Scanner;  public class RecursiveSearchForOrders {  public static void main(String[] args) {  Scanner scanner = new Scanner(System.in);  System.out.println("请输入一个数字");  int number = scanner.nextInt();  System.out.println(search(number));  }  public static int search(int n) {  if (n == 1) {  return 1;  } else {  return n * search(n - 1);  }  }  
}

4.递归按顺序打印一个数字的每一位(例如1234打印出1 2 3 4)

import java.util.Scanner;  public class RecursiveOrderPrinting {  public static void main(String[] args) {  Scanner scanner = new Scanner(System.in);  System.out.println("请输入一个数字");  print(scanner.nextInt());  scanner.close();  }  public static void print(int n) {  if(n / 10 < 1)  {  System.out.print(n % 10 + " ");  return;  }  print(n / 10);  System.out.print(n % 10 + " ");  }  
}

5. 递归求1+2+3+…+10

public class RecursiveSum {  public static void main(String[] args) {  System.out.println(recursiveSum(10));  }  public static int recursiveSum(int n) {  if (n == 1) {  return 1;  }  return n + recursiveSum(n - 1);  }  
}

6.写一个递归方法,输入一个非负整数,返回组成它的数字之和,例如,输入1729,则应该返回1+7+2+9,它的和是19

public class RecursionPleaseSumEveryone {  public static void main(String[] args) {  System.out.println(everyoneSum(1729));  }  public static int everyoneSum(int n) {  if (n / 10 < 1) {  return n % 10;  }  return (n%10) + everyoneSum(n/10);  }  
}

7.求斐波那契数列的第N项

import java.util.Scanner;  public class FindTheNthFibonacci {  public static void main(String[] args) {  Scanner scanner = new Scanner(System.in);  System.out.println("请输入一个数字");  System.out.println(fib(scanner.nextInt()));  }  public static int fib(int n) {  if (n <= 1) {  return n;  }  return fib(n - 1) + fib(n - 2);  }  
}
http://www.dtcms.com/a/331985.html

相关文章:

  • 护照监伪的方式
  • 为什么Integer缓存-128 ~ 127
  • Linux常用命令(下)
  • 机器学习知识总结
  • PyTorch 2025全解析:从基础到前沿,深度学习框架的技术演进与实战指南
  • 嵌入式开发学习———Linux环境下网络编程学习(一)
  • 一步到位!经纬度批量转CGCS2000坐标系
  • sql的关键字 limit 和offset
  • 开源数据发现平台:Amundsen 快速上手指南
  • LeetCode 37.解数独:回溯法在二维网格中的应用与剪枝策略
  • AAAI论文速递 | Transformer如何听声辨物,实现像素级分割新突破!
  • Mybatis 源码解读-SqlSession 会话源码和Executor SQL操作执行器源码
  • 明远智睿SSD2351:以技术突破重构嵌入式市场格局
  • AI重构职场:岗位消亡与组织重塑
  • 【MATLAB技巧】已知平面上的一些点,拟合得到一个圆的例程,给出最小二乘与非线性迭代两种解法,附下载链接
  • ROS机器人云实践设计十年-2025-2015-
  • 速通 OpenPI 本地部署(远端推理)简易实现 —— WSL2 + Ubuntu 24.04 环境完整指南
  • 会议系统完整流程简版解析:创建会议、加入会议与消息转发
  • 【框架】跨平台开发框架自用整理
  • HTB Busqueda writeup
  • 经典蓝牙(BR/EDR)配对连接全过程:从 HCI 命令到 Profile 交互
  • C++编程学习(第23天)
  • Mybatis 源码解读-Plugin插件源码
  • 数据结构---关于复杂度的基础解析与梳理
  • 2025年缩水甘油苯基醚市场深度全景调研:投资前景分析及趋势预测
  • 机器学习——TF-IDF算法
  • 捉迷藏(BFS)
  • NY219NY220美光固态闪存NY224NY229
  • 数据结构---链式结构二叉树
  • PostgreSQL——触发器