gpt4 book ai didi

计算有序和无序排列 - C

转载 作者:行者123 更新时间:2023-11-30 17:08:53 36 4
gpt4 key购买 nike

尝试计算 C 中数字和选择的有序排列和无序排列。递归阶乘函数正在工作,排列结果给出随机存储位置

./排列
输入项目数量:5
输入要选择的数量:2
有1.#INF00有序排列
1.#INF00无序排列

#include <stdio.h>

double ordered_permutation(double total_items, double selection);
double unordered_permutation(double total_items, double selection);
double factorial( double number);

int main() {

double items;
double selection;
printf("Enter number of items: ");
scanf("%f", &items);
printf("Enter number to select: ");
scanf("%f", &selection);

double ordered_perm;
double unordered_perm;
ordered_perm = ordered_permutation( items, selection );
unordered_perm = unordered_permutation( items , selection );

printf("There are %f ordered permutations\nThere are %f unordered permutations\n", ordered_perm, unordered_perm);

return 0;
}

/* total_items!/ ( total_items! - selection! ) */
double ordered_permutation(double total_items, double selection){
double permutations;

permutations = factorial(total_items)/ ( factorial(total_items) - factorial(selection) );

return permutations;
}

/* total_items!/ ( ( total_items! - selection! ) selection! ) */
double unordered_permutation(double total_items, double selection){
double permutations;

permutations = factorial(total_items)/ ( ( factorial(total_items) - factorial(selection) ) * factorial(selection));

return permutations;
}

double factorial( double number){
if( number <= 1 )
return 1;
else
return number * factorial((number-1));
}

最佳答案

将分母调用更改为:

    factorial(total_items - selection)

    (factorial(total_items- selection) * factorial(selection))

关于计算有序和无序排列 - C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33490207/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com