隐藏页面特效

基本操作之try-catch

简单介绍一下try-catch:

异常捕获语法:

try{

  可能出错的代码

}catch{

  如果出错,如何处理的代码

}

 

蓝桥杯算法题:n的阶乘

问题描述
  输入一个正整数n,输出n!的值。
  其中n!=1*2*3*…*n。
算法描述
  n!可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法。使用一个数组A来表示一个大整数a,A[0]表示a的个位,A[1]表示a的十位,依次类推。
  将a乘以一个整数k变为将数组A的每一个元素都乘以k,请注意处理相应的进位。
  首先将a设为1,然后乘2,乘3,当乘到n时,即得到了n!的值。
输入格式
  输入包含一个正整数n,n<=1000。
输出格式
  输出n!的准确值。
样例输入
10
样例输出
3628800

 1 import java.util.ArrayList;
 2 import java.util.Scanner;
 3 
 4 public class Main {
 5     public static void main(String args[]){
 6         Scanner sc = new Scanner(System.in);
 7         int n = sc.nextInt();
 8         f(n);
 9     }
10     
11     private static void f(int n){
12         ArrayList<Integer> A = new ArrayList<Integer>();
13         A.add(1);
14         for(int i=2;i<n+1;i++){
15             int book = 0;
16             for(int j=0;j<A.size();j++){
17                 int temp = A.get(j)*i+book;
18                 A.set(j, temp%10);
19                 book = temp/10;
20                 if(book>0){
21                     try{
22                         A.get(j+1);
23                     }catch (Exception e) {
24                         A.add(j+1,0);
25                     }
26                 }
27             }
28         }
29         for(int i=A.size()-1;i>=0;i--){
30             System.out.print(A.get(i));
31         }
32     }
33 }

 


__EOF__

本文作者techgy
本文链接https://www.cnblogs.com/techgy/p/12490903.html
关于博主:I am a good person
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   AI未来10Y  阅读(440)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示