Matlab, Fourth Edition: A Practical Introduction to Programming and Problem Solving
Matlab, Fourth Edition: A Practical Introduction to Programming and Problem Solving
4th Edition
ISBN: 9780128045251
Author: Stormy Attaway Ph.D. Boston University
Publisher: Elsevier Science
bartleby

Concept explainers

bartleby

Videos

Question
Book Icon
Chapter 6, Problem 28E
Expert Solution & Answer
Check Mark
To determine

To write:

A menu-driven program to investigate the constant π for the given different given options.

Answer to Problem 28E

Solution:

The script file is,

% MATLAB code to calcualte the value of pi.

%script file.

select = pivalues;

while select ˜= 4

switch select

%select the different options to get the value of pi.

case 1

machinformula

%print the result by usin Machin's formula.

case 2

leibn

%get approximate by using Leibniz.

case 3

leibgood

%approximate pi value using Leibniz untill good approximation.

end

select = pivalues;

end

% end of function

%The script file should be placed in the same folder.

The function file is,

% MATLAB code to calcualte the value of pi by different options.

%function file.

function select = pivalues

select = menu('select a option for pi', 'Machin''s formula', 'Leibniz''s formula:n-terms','Leibniz''s formula:good approximation','Exit');

%select the different options in menu.

while select == 0

disp('not valid! please select one of the options')

select = menu('select a option for pi', 'Machin''s formula', 'Leibniz''s formula:n-terms','Leibniz''s formula:good approximation','Exit');

end

end

% end of function

%The function file should be placed in the same folder.

The function file is,

% MATLAB code to calcualte the value of pi by Machinformula.

%function file.

function machinformula

formula = (4*atan(1/5)-atan(1/239));

%define the variable pivalues.

fprintf('Using the MATLAB constant, pi = %.6f\n', pi)

fprintf('the value of pi using Machin''s formula, pi = %.6f\n', 4*formula)

%print the value of pi.

end

% end of function

%The function file should be placed in the same folder.

The function file is,

% MATLAB code to calcualte the value of pi by leibniz's formula for the specific terms.

%function file.

function leibn

fprintf('Approximate value of pi by using Leibniz'' formula\n')

n = askforn;

approxvaluepi = 0;

denominator = -1;

signterm = -1;

for i = 1:n

denominator = denominator + 2;

signterm = -signterm;

approxvaluepi = approxvaluepi + signterm * (4/denominator);

end

fprintf('An approximation of pi with n = %d is %.2f\n', n, approxvaluepi)

end

function out = askforn

inputnum = input('A positive integer for n is entered: ');

num2 = int32(inputnum);

while num2 ˜= inputnum || num2 < 0

inputnum = input('Not Valid! Enter a positive integer:');

num2 = int32(inputnum);

end

out = inputnum;

end

% end of function

%The function file should be placed in the same folder.

The function file is,

% MATLAB code to calcualte the value of pi by leibniz's formula till the good apprroxiamtion is found..

%script file

function leibgood

error = 0.01;

N = 1;

S = 2;

runsum = 0;

difference = 1;

while error < difference

term = (-1)^S*4/N;

temp = runsum;

runsum = runsum + term;

difference = abs(temp-runsum);

N = N+2;

S = S+1;

end

fprintf('An approximation of pi using Leibniz ''series within %.2f is %.2f\n', error, runsum)

%print the value of pi.

end

% end of function

%The script file should be placed in the same folder.

Explanation of Solution

Machin’s formula is given as,

π4=4arctan(15)arctan(1239)π=3.1416

Leibniz’s formula is given as,

π=4143+4547+49411+...

The approximation till the fourth term is given as,

π=4143+4547=2.8952

MATLAB Code:

% MATLAB code to calcualte the value of pi.

%script file.

select = pivalues;

while select ˜= 4

switch select

%select the different options to get the value of pi.

case 1

machinformula

%print the result by usin Machin's formula.

case 2

leibn

%get approximate by using Leibniz.

case 3

leibgood

%approximate pi value using Leibniz untill good approximation.

end

select = pivalues;

end

% end of function

%The script file should be placed in the same folder.

% MATLAB code to calcualte the value of pi by different options.

%function file.

function select = pivalues

select = menu('select a option for pi', 'Machin''s formula', 'Leibniz''s formula:n-terms','Leibniz''s formula:good approximation','Exit');

%select the different options in menu.

while select == 0

disp('not valid! please select one of the options')

select = menu('select a option for pi', 'Machin''s formula', 'Leibniz''s formula:n-terms','Leibniz''s formula:good approximation','Exit');

end

end

% end of function

%The function file should be placed in the same folder.

% MATLAB code to calcualte the value of pi by Machinformula.

%function file.

function machinformula

formula = (4*atan(1/5)-atan(1/239));

%define the variable pivalues.

fprintf('Using the MATLAB constant, pi = %.6f\n', pi)

fprintf('the value of pi using Machin''s formula, pi = %.6f\n', 4*formula)

%print the value of pi.

end

% end of function

%The function file should be placed in the same folder.

% MATLAB code to calcualte the value of pi by leibniz's formula for the specific terms.

%function file.

function leibn

fprintf('Approximate value of pi by using Leibniz'' formula\n')

n = askforn;

approxvaluepi = 0;

denominator = -1;

signterm = -1;

for i = 1:n

denominator = denominator + 2;

signterm = -signterm;

approxvaluepi = approxvaluepi + signterm * (4/denominator);

end

fprintf('An approximation of pi with n = %d is %.2f\n', n, approxvaluepi)

end

function out = askforn

inputnum = input('A positive integer for n is entered: ');

num2 = int32(inputnum);

while num2 ˜= inputnum || num2 < 0

inputnum = input('Not Valid! Enter a positive integer:');

num2 = int32(inputnum);

end

out = inputnum;

end

% end of function

%The function file should be placed in the same folder.

% MATLAB code to calcualte the value of pi by leibniz's formula till the good apprroxiamtion is found..

%script file

function leibgood

error = 0.01;

N = 1;

S = 2;

runsum = 0;

difference = 1;

while error < difference

term = (-1)^S*4/N;

temp = runsum;

runsum = runsum + term;

difference = abs(temp-runsum);

N = N+2;

S = S+1;

end

fprintf('An approximation of pi using Leibniz ''series within %.2f is %.2f\n', error, runsum)

%print the value of pi.

end

% end of function

%The script file should be placed in the same folder.

Save the MATLAB script with name, main.m, and the function files with names machinformula.m, leibn.m, pivalues.m and leibgood.m in the current folder. Execute the program by typing the script name at the command window to generate result.

Result:

The results is,

Matlab, Fourth Edition: A Practical Introduction to Programming and Problem Solving, Chapter 6, Problem 28E , additional homework tip  1

Matlab, Fourth Edition: A Practical Introduction to Programming and Problem Solving, Chapter 6, Problem 28E , additional homework tip  2

Therefore, the result is stated above.

Want to see more full solutions like this?

Subscribe now to access step-by-step solutions to millions of textbook problems written by subject matter experts!
Students have asked these similar questions
Below provided dataset include some information of a random sample 100 Titanic passengers. Information include; Age, Class traveled: 1st, 2nd or 3rd class, Gender (M/F) and survival status (Yes/No) TitanicData.xlsx We want to see if the average age of the passengers are different across the traveled class (1st, 2nd and 3rd class).  Write down the null and alternative hypothesis that answers this research question. Check any assumptions relevant for the above suggested test. Ignore the validity of the assumptions. From the methods we discuss in this class, carryout an appropriate test at 5% significance level (include any MINITAB outputs). What is your conclusion at 5% significance level? Depending on your decision in part 4, what further information can you incur about the age and the class they traveled? (Include any relevant MINITAB outputs)
or The following three independent random samples are obtained from three normally distributed populations. The (dependent) numerical variable being compared is starting hourly wage, and the groups are the types of position (internship, co-op, work study). Group 1: Internship 11.5 Group 2: Co-op 14.5 Group 3: Work Study 12.75 16 12 9 12.25 16.5 13 13.5 14.25 15 12.5 12 15.75 9 15 12.5 es Click Download CSV to download csv file of data or copy/paste the data into Excel. After downloading the file, you may want to save it as an Excel Workbook. Use Excel to conduct a one-way ANOVA to determine if the group means are equal using a = 0.05. Create a side-by-side boxplot in Excel for these data. Use that and the numerical summary of sample data to answer the following questions. ere to search a. Which group has the highest average? O Group1 O Group 2 O Group 3 b. Which group has the highest variation? O Group1 O Group 2 O Group 3 c. Compute the HighestS tan dardDeviation SmallestS tan dard…
es ces Due Nov 26 by 11:59pm Points 13 Submitting an external tool Homework 11 Score: 0/13 Answered: 0/9 Question 1 Fill in the blanks of the following statements using numbers (NOT words). Two sample t tests are limited to situations in which there are only compared. The Analysis of Variance (ANOVA) is used to tests where being compared in one hypothesis test. Submit Question population means being or more Select an answer are Bi UP T M365 DELL Channel F2 F3 F4 F5 F6 F7 F8 F9 F10 14 ►11 W $ 54 % 5 6 E R T Y J 8 P
Knowledge Booster
Background pattern image
Statistics
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, statistics and related others by exploring similar questions and additional content below.
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
Algebra & Trigonometry with Analytic Geometry
Algebra
ISBN:9781133382119
Author:Swokowski
Publisher:Cengage
Text book image
Mathematics For Machine Technology
Advanced Math
ISBN:9781337798310
Author:Peterson, John.
Publisher:Cengage Learning,
Text book image
Elementary Algebra
Algebra
ISBN:9780998625713
Author:Lynn Marecek, MaryAnne Anthony-Smith
Publisher:OpenStax - Rice University
Text book image
Algebra: Structure And Method, Book 1
Algebra
ISBN:9780395977224
Author:Richard G. Brown, Mary P. Dolciani, Robert H. Sorgenfrey, William L. Cole
Publisher:McDougal Littell
Text book image
Trigonometry (MindTap Course List)
Trigonometry
ISBN:9781305652224
Author:Charles P. McKeague, Mark D. Turner
Publisher:Cengage Learning
Text book image
Glencoe Algebra 1, Student Edition, 9780079039897...
Algebra
ISBN:9780079039897
Author:Carter
Publisher:McGraw Hill
Mod-01 Lec-01 Discrete probability distributions (Part 1); Author: nptelhrd;https://www.youtube.com/watch?v=6x1pL9Yov1k;License: Standard YouTube License, CC-BY
Discrete Probability Distributions; Author: Learn Something;https://www.youtube.com/watch?v=m9U4UelWLFs;License: Standard YouTube License, CC-BY
Probability Distribution Functions (PMF, PDF, CDF); Author: zedstatistics;https://www.youtube.com/watch?v=YXLVjCKVP7U;License: Standard YouTube License, CC-BY
Discrete Distributions: Binomial, Poisson and Hypergeometric | Statistics for Data Science; Author: Dr. Bharatendra Rai;https://www.youtube.com/watch?v=lHhyy4JMigg;License: Standard Youtube License