answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
professor190
2 months ago
10

The factorial of a nonnegative integer n is written n ! (pronounced "n factorial") and is defined as follows: n ! = n · (n - 1)

· (n - 2) · … · 1 (for values of n greater than or equal to 1) and n ! = 1 (for n = 0). For example, 5! = 5 · 4 · 3 · 2 · 1, which is 120.
a) Write a program that reads a nonnegative integer and computes and prints its factorial.
b) Write a program that estimates the value of the mathematical constant e by using the formula:
e = 1 + 1/1! +1/2! + 1/3! +.......
c) Write a program that computes the value of by using the formula
e^x = 1 + x/1! + x^2/2! + x^3/3! +.......
Computers and Technology
1 answer:
Harlamova29_29 [1K]2 months ago
8 0
Here are the programs. I have written C++ and Python scripts:

a)

C++

#include<iostream>  

using namespace std;  

int factorial(int num)  {  

   if (num == 0)  

       return 1;  

   return num * factorial(num - 1);  }    

int main()  {  

   int integer;

   cout<<"Enter a non negative integer: ";

   cin>>integer;

   cout<< "Factorial of "<< integer<<" is "<< factorial(integer)<< endl;  }

Python:

def factorial(num):  

   if num == 0:  

       return 1

   return num * factorial(num-1)  

integer = int(input("Enter a non negative integer: "))  

print("Factorial of", integer, "is", factorial(integer))

b)

C++

#include <iostream>  

using namespace std;

double factorial(int number) {  

if (number == 0)  

 return 1;  

return number * factorial(number - 1); }  

 

double estimate_e(int num){

    double e = 1;

    for(int i = 1; i < num; i++)

     e = e + 1/factorial(i);

     cout<<"e: "<< e; }  

 

int main(){

int term;

cout<<"Enter a term to evaluate: ";

cin>>term;

estimate_e(term);}

Python:

def factorial(number):  

   if number == 0:  

       return 1

   return number * factorial(number-1)  

def estimate_e(term):

   if not term:

       return 0

   else:

       return (1 / factorial(term-1)) + estimate_e(term-1)

number = int(input("Enter how many terms to evaluate "))

print("e: ", estimate_e(number))

c)

C++

#include <iostream>

using namespace std;

int main(){

   float terms, sumSeries, series;

   int i, number;

   cout << " Input the value of x: ";

   cin >> number;

   cout << " Input number of terms: ";

   cin >> terms;

   sumSeries = 1;

   series = 1;

   for (i = 1; i < terms; i++)      {

       series = series * number / (float)i;

       sumSeries = sumSeries + series;     }

   cout << " The sum  is: " << sumSeries << endl;  }  

Python    

def ePowerx(number,terms):

   sumSeries = 1

   series =1

   for x in range(1,terms):

       series = series * number / x;

       sumSeries = sumSeries + series;

   return sumSeries    

num = int(input("Enter a number: "))

term=int(input("Enter a number: "))

print("e^x: ",ePowerx(num,term))

Explanation:

a)

The program includes a factorial method that takes a number as an argument and calculates its factorial using recursion. For instance, if number = 3

The base case occurs at  if (number == 0)

and the recursion is handled with return number * factorial(number - 1);  

With number = 3 not equaling zero, the function calls itself recursively to get the factorial of 3

return 3* factorial(3- 1);

3 * factorial(2)

3* [2* factorial(2- 1) ]

3 * 2* [ factorial(1)]

3 * 2 * [1* factorial(1- 1) ]

3 * 2 * 1* [factorial(0)]

At this point at factorial(0), the base condition is satisfied as number==0, so factorial(0) returns 1

The resulting output is:

3 * 2 * 1* 1

yielding 6

So, the final program output will be

Factorial of 3 is 6

b)

The estimate_e method takes a number, termed as num, which signifies the term to estimate the mathematical constant e

The for loop extends through each term. For example, if num is set to 3

Then the core statement:

e = e + 1/factorial(i);  

The preceding calculation works as:

e = 1 + 1/1! +1/2!

Since the term count is 3

Initially, e is set to 1

i is initialized at 1

Inserting this into the calculation gives us:

e = 1 + 1/factorial(1)

The factorial function computes and returns 1, as the factorial of 1 is 1. Thus,

e = 1 + 1/1

This results in e = 2

Proceeding to the next iteration, where i = 2 and e = 2, we calculate e = 2 + 1/factorial(2)

Thus, e = 2 + 1/2 results in e = 2.5

Following to the next iteration with i = 3, we have e = 3 + 1/factorial(3)

This yields e = 3 + 1/6 resulting in approximately e = 3.16666

Therefore, the output is:

e: 3.16666

c)

This program calculates the sum of a series based on the formula:

e^x = 1 + x/1! + x^2/2! + x^3/3! +...

The for loop iterates according to the number set for terms. Assuming x is 2, and the number of terms is set to 3, the series would read:

e^2 = 1 + 2/1! + 2^2/2!

In this setup: number = 2 and terms = 3

Initial values for series and sumSeries are both 1

Starting with i equal to 1, the update statement series = series * number / (float)i; applies as follows:series = 1 * 2 /1 results in series = 2

Then, for sumSeries, we have sumSeries = sumSeries + series; Outputs sumSeries as 1 + 2, yielding 3

Continuing to the next iteration: i=2, with series = 2 and sumSeries = 3, we recalculate as series = 2 * 2/2 imposing series = 2 again. Thus, we find: sumSeries = 3 + 2 giving a final sumSeries value of 5

After the loop concludes, the result shows the value of sumSeries, leading finally to the output value of 5
You might be interested in
Define a function UpdateTimeWindow() with parameters timeStart, timeEnd, and offsetAmount. Each parameter is of type int. The fu
oksian1 [950]
The UpdateTimeWindow() function takes timeStart, timeEnd, and offsetAmount as parameters. Both timeEnd and timeStart are pointers. Within this function, the syntax to modify these parameters is as follows: *timeStart += offsetAmount, incrementing the start time by offsetAmount, and similarly, *timeEnd += offsetAmount increments the end time by the same amount.
8 0
1 month ago
Access-lists pose a logical problem which often has more than one solution. Can you think of a different set of rules or placeme
maria [1035]
The question is incomplete, as it lacks a diagram of the topology and Router R1's table. I assume the user has access to both the topology and routing information. The configuration below will assist in resolving the ACL issue: Hosts within the 172.16.0.0/16 network should have unrestricted access to Server1, Server2, and Server3, which is currently not the case since L1 is unable to connect to Server2 or Server3. The suggested configuration on Cisco Router R1 will rectify the ACL issues.
6 0
1 month ago
Your employer, yPlum Corporation is manufacturing two types of products: Mirabelle smartphone, and Blackamber laptop. The compan
Natasha_Volkova [1026]

Answer:

Refer to the explanation

Explanation:

Number of Mobiles=x1

Number of Workstations=x2

Constraints:

50x1 + 70x2 <= 1,60,000

250x1 + 700x2 <= 12,000,000

x1 >= 0 x2 >= 0

Objective function N(x1, x2) = 7800000000 x1 + 7200000000 x2

Excel formulae:

G17 = D9 * E7 + F9 * G7

G18= D10 * E7 * F10 * G7

G19= E7

G20= G7

G21= I17 * E7 + I18 * G7 (This will yield the Maximum)

And E7 and G7 will be the solution.

Set up your sheet as shown in the diagram and apply the formulas.

Access the tool and select solver. Upon opening the Solver dialog, confirm ‘Assume Linear model’ and ‘assume non-negative’. Click to solve the model and keep the solution.

7 0
1 month ago
Sushant is a new manager and he wants to share his ideas and working protocol with his team.Compare the advantages and disadvant
oksian1 [950]

Answer:

Benefits of Oral Communication

  1. Utilizing visual aids such as PowerPoint during discussions can enhance his team's understanding of his concepts and procedures.
  2. Staff responses tend to be more immediate and sincere compared to written replies.

Drawbacks of Oral Communication

  1. If Sushant struggles with stage fright or lacks strong communication skills, it may negatively impact the team's perception of him.
  2. There is a risk that staff may forget portions of Sushant's spoken communication, as written information is generally more reliable for retention.

Benefits of Written Communication

  1. A well-crafted memo articulates Sushant's ideas and procedures clearly to the staff.
  2. A feedback questionnaire could be included for staff input.
  3. Clearly stated goals and objectives.

Drawbacks of Written Communication

  1. Excessively lengthy written material may pose challenges for comprehension or retention.

It is advisable for Sushant to prioritize written communication to share his ideas and protocols effectively.

3 0
3 months ago
A file concordance tracks the unique words in a file and their frequencies. Write a program that displays a concordance for a fi
oksian1 [950]

Answer:

Below is the Python code with suitable comments.

Explanation:

#Input file name acquisition

filename=input('Enter the input file name: ')

#Opening the input file

inputFile = open(filename,"r+")

#Dictionary definition.

list={}

#Read and split file content using a loop

for word in inputFile.read().split():

#Check if the word exists in the file.

if word not in list:

list[word] = 1

#Increment count by 1

else:

list[word] += 1

#Closing the file.

inputFile.close();

#Output a blank line

print();

#Sorting words according to their ASCII values.

for i in sorted(list):

#Display unique words along with their

#frequencies in alphabetical order.

print("{0} {1} ".format(i, list[i]));

3 0
2 months ago
Other questions:
  • Accenture is helping a large retailer transform their online sales and services. The Data Analyst audits the client’s customer j
    12·1 answer
  • . Electricians will sometimes call ______ "disconnects" or a "disconnecting means."
    12·1 answer
  • Which of the following is true of how computers represent numbers?
    9·2 answers
  • Knowledge flows from the information that has been generated. Which of the following does not necessarily flow from information
    15·1 answer
  • Su now wants to highlight several inventors in her presentation, so she decides to use the underline color option.
    11·1 answer
  • To finish creating a design for the webpage, use one shape to cut away part of the other. Create a 700 pixel by 700 pixel square
    10·1 answer
  • Discussion Question 10: A bank in California has 13 branches spread throughout northern California , each with its own minicompu
    13·1 answer
  • What are the set of rules to move data from one computer to another?
    11·1 answer
  • When adopting and implementing a Software as a Service (SaaS) platform such as Salesforce for your business, which responsibilit
    7·1 answer
  • hard disk drive has 16 platters, 8192 cylinders, and 256 4KB sectors per track. The storage capacity of this disk drive is at mo
    13·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!