.

Friday, May 24, 2019

Algorithm: Flowchart and Trailer Record

Student Name Syed Haseeb Hashmi Registration FA11-BCS-075 Course Title Design and synopsis of Algorithm Assignment 1 Submitted To Sir Tanveer Ahmed Siddiqui Due Date 19-03-2013 For Odd Role Number Group Q1. How does a flow diagram help a programmer in a program development? Ans. Flowcharts admit the visual representation of a concept and make it clear. A flow chart serves as a draught of the program. Flowcharts helps a programmer organize his/her thoughts in a logical order and their presentation.Program development without graphics may be less effective. In big projects it gets toilsome to keep things together. Flowcharts provide flexibility, so that you can make changes and restructure the project as you move further and, according to requirement. Flowcharts act as a place during the analysis and program development phase. Moreover they are also helpful in debugging process. Q2. Draw a flowchart of the logical steps needed to micturate a scrapeed listing of all students ov er the age of 20 in a class. The input al-Qurans contain the name and age of the students.Assume a sentinel economic rate of 99 for the age field of the monotone record. Sol. Q3. The first 20 records in a data set are to be read and printed. Draw a flowchart for the algorithmic programic programic ruleic program to do this job. Make sure that the processing stops after the twentieth record. Sol. Q4. For the employees problem of Question 40 ( even group Q3), we exigency to count and print the number of only male employees in the age group of 25 to 30. Assume that the input records contain SexCode and Age fields to provide this information. Draw a flowchart for the algorithm to perform this job. Sol. Q5.A set of examination papers, which have been graded with scores form 0 to 100 is to be searched to harness how many of them are above 90. The total has to be printed. Prepare a flowchart to do this job. Assume a suitable sentinel value for the trailer record. Sol. Q6. A shopkeepe r wants to have a general program for his personal computer, which will prepare bills for each customer as and when he sells goods to them. His idea is that as soon as the customer purchases some goods from his shop, he will supply the description, unit price, and the quantity purchased for each item. s input to the computer. He wants that with this information, the computer should print each item along with its unit price, quantity purchased and the total price. Finally the computer should also print the total cost of all the items purchased by the customer. anticipate a sentinel value of zero for the quantity purchased field in the trailer record, draw a flowchart for the logic to do this job. Q7. individually employee bear record includes the hours worked and the pay rate. The gross pay is to be determined as hours worked times pay rate, and is to be printed for each employee.For all hours worked in excess of 40, the overtime rate, which is 1. 5 times the regular rate, is to be paid. Draw a flowchart for the problem logic to do this. Assume a suitable sentinel value for any of the input fields of the trailer record. Q8. The data file of Question 48 (even group Q7) is expanded to include several sets of data, each requiring calculation of its average. Each data set is followed by a trailer record with a value of -1 however the last data is followed by a trailer record with a value of -2.Draw a flowchart for the logic to perform this task. Solution. Q9. Draw a flow chart to add up all the even numbers between 0 and 100. Before ending, print the result of calculation. Solution. Q10. Draw a flowchart for the logic to find out whether a given triangle first rudiment is a right angled triangle. Assume that the sides are supplied as input and data. Print the answer as yes or no. Solution. Q11. Draw a flowchart for the logic to convert a number from base 10 to new base using division remainder technique. Solution. Question 2 ) Determine which characteristics of an algorithm the following procedures have and which they lack. Procedure 1 double(npositive integer)// The purpose of this procedure is to double a positive integer spot n =0 do n 2n Procedure 2 choose(a, b integers)// The purpose of this procedure is to choose a number from two positive numbers x either a or b Procedure 3 sum(npositive integer)// The purpose of this procedure is to find the sum of first 9 digits. sum = 0while i 10 do sum sum + i 1.Procedure 4 divide(npositive integer) // The purpose of this procedure is to find the reciprocal of a positive integer n till 1. while n= 0 do m 1/n n n-1 Solution Procedure Input Output Precision Finiteness Definiteness Correctness generality 1 NO NO YES YES NO YES YES 2 NO YES NO NO YES YES NO 3 YES YES YES YES YES NO YES 4 NO YES NO NO YES YES NO b) Modify above procedure so that they satisfies all the properties Procedure 1 if n = 0 n 2n Procedure 2 if a0 && b0 either a or b Procedure 3 i 0 sum 0 while i 10 do sum sum + i i+ + Procedure 4 While n 0 do m 1/n n n 1 Question 3 a) Find gcd(31415, 14142) by applying Euclids algorithm. Sol. gcd(31415%14142) gcd(14142%3131) gcd(3131%1618) gcd(1618%1513) gcd(1513%105) gcd(105%43) gcd(43%19) gcd(19%5) gcd(5%4) gcd(4%1) gcd(1%0) = 1 Answer. b) Estimate how many times faster it will be to find gcd(31415, 14142) by Euclids algorithm compared with the algorithm based on checking consecutive integers from minm, n down to gcd(m, n). Ans.The algorithm for finding gcd based on checking consecutive integers will take 14142 steps, whereas the Euclids algorithm took just 11 steps. So, 14142/11 we get 1285. We can say that Euclids algorithm is 1285 time faster. Question 4 What does Euclids algorithm do for a pair of numbers in which the first number is smaller than the second one? What is the largest number of times this can happen during the algorithms accomplishment on such an input? Ans. According to Euclids algorithm if the first number is smaller the second one the n we have to swap the two values.We will have to swap only once. Question 5 a) What is the smallest number of divisions made by Euclids algorithm among all inputs 1 ? m, n ? 10? b) Ans. For any possible combination of inputs among 1 ? m, n ? 10, the smallest number of division made by Euclids algorithm is 1. c) What is the largest number of divisions made by Euclids algorithm among all inputs 1 ? m, n ? 10? d) Ans. For any possible combination of inputs among 1 ? m, n ? 10, the largest number of divisions made by Euclids algorithm is 5 for (5,8). Question 6Euclids algorithm, as presented in Euclids treatise, uses subtractions rather than integer divisions. Write a pseudo code for this version of Euclids algorithm. Ans. If a0 X b2-4ac If X 0 print no real roots exits else X1 -b+sqrt(X)/2a X2 -b-sqrt(X)/2a Return X1 and X2.

No comments:

Post a Comment