用for循环实现正整数的阶乘,这两个代码都有问题,运行时,输入20直接出现负数,输入450,出现结果为0,请教大神是哪里出错了,
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
已结题
for循环实现正整数的阶乘
用for循环实现正整数的阶乘,这两个代码都有问题,运行时,输入20直接出现负数,输入450,出现结果为0,请教大神是哪里出错了,
收起
- 写回答
- 好问题 0 提建议
- 关注问题
- 微信扫一扫点击复制链接分享
- 邀请回答
- 编辑 收藏 删除
- 收藏 举报
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
qfl_sdu 2021-09-14 10:25关注阶乘结果超出int类型数据范围,改成double或者longlong类型试试
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 1无用举报微信扫一扫点击复制链接分享评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2021-06-26 22:07回答 1 已采纳 public class 循环求阶乘 { public static void main(String[] args) { double result = 1; int d =
- 2021-12-08 15:57回答 2 已采纳 29的阶乘用int型是不够的,long long都不够,用double吧 #include<stdio.h> int main(){ int x,i; double m=1; scanf(
- 2022-04-07 10:42回答 4 已采纳 sum是double类型的,输出用%lf
- 2019-07-20 19:44池中取象的博客 import java.util.Scanner; public class Demo01 { public static void main(String[] args) { System.out.println("请输入一个整数n:"); Scanner scan=new Scanner(System.in); int n=scan.nextInt()....
- 2022-10-25 23:34回答 1 已采纳 #include<stdio.h> int main(){ int i=1,sum=1; while(i<=10){ sum*=i; i++;
- 2021-06-03 18:05回答 2 已采纳 import java.util.Scanner; public class CalcTest { public static void main(String[] args) {
- 2022-10-30 14:18回答 1 已采纳 内循环开始前,需要将x设置为1,否则就就累乘了
- 2021-09-30 23:29Java语言中实现正整数阶乘的两种方法 Java是一种高级语言,广泛应用于安卓开发、Web开发、桌面应用开发等领域。在数学运算中,阶乘是一个非常重要的概念,它是指一个正整数的连续乘积。例如,5的阶乘是5*4*3*2*1=...
- 2022-03-12 22:58回答 4 已采纳 int sum = n*N; 不对 应该是sum = sum*n; 循环中不要用int 重新声明 另外你sum用int类型,数值的范围是:-2147483648 to 2147483647 sum不断
- 2021-09-04 16:59回答 1 已采纳 arr[10]一共10个元素,最后一个元素是arr[9],你越界了
- 2021-10-19 18:42回答 1 已采纳 n<0就不是非负整数了,应该输出"Invalid input" #include <stdio.h> void Print_Factorial ( const int N ); in
- 2023-02-13 08:39算法与编程之美的博客 1 问题如何用for循环求数的阶乘,接收用户输入的数字,计算该数字的阶乘结果。2 方法packagecn.cxy.exec;importjava.util.Scanner;publicclassFactorial{publicstaticvoidmain(String[]args){ System.out.print("输入...
- 2020-08-28 07:58在本文中,我们将介绍一种使用 Java 实现的超大整数阶乘算法代码详解,采用“数组进位”算法来解决超大整数的阶乘问题。 首先,让我们来了解一下什么是阶乘。阶乘是一个数学运算符,表示一个数的所有正整数因子相乘...
- 2019-08-02 19:44栗子勇的博客 import java.util.Scanner; public class Factorial { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("输入数字:"); int n = input.nextInt(); ....
- 2021-05-07 07:28)是所有小于及等于n的正整数的乘积。例如,5! = 5 × 4 × 3 × 2 × 1 = 120。在Java编程中,我们可以用多种方法来实现计算阶乘的功能。 1. **递归实现**: 递归是最直观的实现方式,通过函数调用自身来完成阶乘...
- 2021-03-14 23:47GUlijiwa古力的博客 从键盘输入一个正整数.求出其阶乘并输出。用函数实现#include double fun ( int n ){ double result = 1.0 ;if (n == 0)return 1.0 ;while( n >1 && n < 170 )result *= n--;return result ;}main ( )...
- 2020-03-07 10:17vvuz2的博客 Java实现阶乘(循环与递归) 递归实现 public static void main(String[] args) { System.out.println("输入要计算的值:"); Scanner sc = new Scanner(System.in); String inta = sc.nextLine(); Intege...
- 2022-12-03 19:45java Smile的博客 for循环 求阶乘
- 2021-03-01 08:23逆光时的博客 在网上我看到很多用C、C++和C#写的一些关于大整数阶乘的算法,其中不乏经典但也有很多粗糙的文章。数组越界,一眼就可以看出程序本身无法运行。转载他人文章的时候,代码倒是仔细看看啊。唉,粗糙。过年了,在家闲来...
- 2021-05-22 22:44在本实验中,我们使用for循环语句计算前10个正整数的阶乘。代码如下: ```java public class ForDemo { public static void main(String[] args) { long result = 0; long f = 1; for (int i = 1; i ; i++) { f...
- 没有解决我的问题, 去提问