Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Assume the availability of a function called fact . The function receives an int

ID: 3759102 • Letter: A

Question

Assume the availability of a function called fact. The function receives an int argument and returns an int value . If the argument is one or smaller, it returns the integer  value one. Otherwise it returns the product of all the integers from one to its argument .

So the value of fact(4) is 1*2*3*4 and the value of fact(10) is 1*2*3*4*5*6*7*8*9*10.
Assume further that the variable  k has been declared and initialized to a positive integer .
Assume further that the variable  x has been declared as an integer  type .
Write a statement that assigns  x the value k*(k-1)*(k-2)*...*3*2*1 by calling the fact function and multiplying its return value by k.

Note: your solution must include multiplying fact's return value by k here.

can someone help me write this in c code.

Explanation / Answer

#include <stdio.h>
#include<stdlib.h>

int fact(int x) {
   if(x == 1) {
       return 1;
   }  
   int k=fact(x-1);
   return x*k;
}

int main(void) {
   printf("Factorial of %d is: %d", 5, fact(5));
   return 0;
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote