首页 > 编程语言 >阶乘(C++实现)

阶乘(C++实现)

时间:2024-03-29 16:29:21浏览次数:21  
标签:头文件 实现 C++ int 阶乘 include 卡曼

阶乘是基斯顿·卡曼(Christian Kramp,1760~1826)于 1808 年发明的运算符号,是数学术语

一个正整数的阶乘(factorial)是所有小于及等于该数的正整数,并且0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿·卡曼引进这个表示法。

公式表示为:

0!=1

n!=\prod_{i=1}^{n} i (n \in N*)

阶乘运算在C++语言中的实现,代码如下

#include<iostream>
#include<cstdio>
//可以直接使用<dits/stdc++.h>头文件取代 <iostream> <cstdio> 两个头文件
using namespace std;
int Pro = 1;
//定义阶乘函数
int F(int x) {
	if (x == 0) {
		return 1;
	}//依照数学上的规定,0!=1
	for (int i = 1;i<=x; i++) {
		Pro = Pro * i;
	}
	return Pro;//执行非零数阶乘的算术运算
}
int n;
//主函数
int main() {
	scanf("%d", &n);
	int nJc;
	nJc = F(n);//调用阶乘函数
	cout << n << "!=" << nJc;//输出结果
	return 0;
}

标签:头文件,实现,C++,int,阶乘,include,卡曼
From: https://blog.csdn.net/m0_73635780/article/details/137148983

相关文章

  • 以下是一个简单的C++程序,用于生成斐波那契数列的前n项
    斐波那契数列是一个在自然界中广泛出现的数列,其定义是:第一个和第二个数都是1,从第三个数开始,每一个数都是前两个数之和。斐波那契数列的前几项是:1,1,2,3,5,8,13,21,34,55,…以下是一个简单的C++程序,用于生成斐波那契数列的前n项:#include<iostream>#include<ve......
  • C++从入门到精通——函数重载
    函数重载前言一、函数重载概念二、函数重载的分类参数类型不同的函数重载参数个数不同的函数重载参数类型顺序不同的函数重载三、函数重载的具体代码展示main.cpp四、为什么为什么C++支持函数重载,而C语言不支持函数重载呢前言函数重载是指在同一个作用域内,可以定......
  • C++从入门到精通——缺省参数
    缺省参数前言一、缺省参数概念二、缺省参数分类位置参数的缺省参数全缺省参数半缺省参数关键字参数的缺省参数函数指针的缺省参数`lambda`表达式三、缺省参数的具体代码展示main.cpp前言缺省参数是在函数定义时指定的默认值,当调用函数时未提供该参数的值时,将使......
  • vue原理的实现
    vue的原理主要从三个方面进行说明,分别是响应式原理、虚拟DOM、模板编译和组件化响应式原理一个普通的JavaScript对象传入Vue实例作为data选项,Vue将遍历此对象所有的property,并使用Object.defineProperty把这些property全部转为getter/setter。这些getter/setter......
  • c++基础知识
    deque的用法#include<deque>deque<type>d;//定义一个dequepush_back()//在队列的尾部插入元素。push_front()//在队列的头部插入元素。pop_back()//删除队列尾部的元素。pop_front()//删除队列头部的元素。back()//返回队列尾部元素的引用。front()//返回队列头部元素......
  • C++继承、多态代码备忘录
    HelloWorld#include<iostream>//Basedon64-bitmachines.//1.SizeofABCis16bytes,8bytesforvptr,1byteforchara,7bytes//padding.//2.ThevptrpointtothevtableofABC,thevtablecontainstheaddressof//thevirtualfunct......
  • JAVA版鸿鹄云商B2B2C:解析多商家入驻直播带货商城系统的实现与应用
     一、技术选型java开发语言:java是一种跨平台的编程语言,适用于大型企业级应用开发。使用java开发直播商城可以保证系统的稳定性和可扩展性。springboot框架:springboot是一个快速构建spring应用的框架,简化了开发过程,减少了配置文件,提供了强大的自动化配置功能。使用springb......
  • c++类,汽车信息
    #include<iostream>#include<string>usingnamespacestd;class Car{private:      string brand;   stringmodel;   stringcolor;public:   voidcar(stringbrand,stringmodel,stringcolor)   //voidcar()括号里要有形参,不......
  • 高德地图内网部署,通过拦截请求实现
    一、安装npm库   npm地址:ajax-hook-npm(npmjs.com)NPM引入npminstallajax-hook二、实现代码,放到mainjs里面import{proxy}from"ajax-hook";proxy({//请求发起前进入onRequest:(config,handler)=>{//console.log(config.url)if(......
  • 【附源码】JAVA计算机毕业设计在线考试系统的设计与实现(springboot+mysql+开题+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着信息技术的迅猛发展和互联网的普及,传统的教育模式正面临着深刻的变革。在线考试系统作为教育信息化进程中的重要一环,正逐渐取代传统的纸质考试方......