Exam (elaborations) TEST BANK FOR Numerical Methods for Engineers By Steven C. Chapra (Solutions manual)
2.1 IF x 10 THEN IF x 5 THEN x = 5 ELSE PRINT x END IF ELSE DO IF x 50 EXIT x = x - 5 END DO END IF 2.2 Step 1: Start Step 2: Initialize sum and count to zero Step 3: Examine top card. Step 4: If it says “end of data” proceed to step 9; otherwise, proceed to next step. Step 5: Add value from top card to sum. Step 6: Increase count by 1. Step 7: Discard top card Step 8: Return to Step 3. Step 9: Is the count greater than zero? If yes, proceed to step 10. If no, proceed to step 11. Step 10: Calculate average = sum/count Step 11: End 2.3 start sum = 0 count = 0 INPUT value value = “end of data” sum = sum + value count = count + 1 T F count 0 average = sum/count end T F 2.4 Students could implement the subprogram in any number of languages. The following Fortran 90 program is one example. It should be noted that the availability of complex variables in Fortran 90, would allow this subroutine to be made even more concise. However, we did not exploit this feature, in order to make the code more compatible with Visual BASIC, MATLAB, etc. PROGRAM Rootfind IMPLICIT NONE INTEGER::ier REAL::a, b, c, r1, i1, r2, i2 DATA a,b,c/1.,5.,2./ CALL Roots(a, b, c, ier, r1, i1, r2, i2) IF (ier .EQ. 0) THEN PRINT *, r1,i1," i" PRINT *, r2,i2," i" ELSE PRINT *, "No roots" END IF END SUBROUTINE Roots(a, b, c, ier, r1, i1, r2, i2) IMPLICIT NONE INTEGER::ier REAL::a, b, c, d, r1, i1, r2, i2 r1=0. r2=0. i1=0. i2=0. IF (a .EQ. 0.) THEN IF (b 0) THEN r1 = -c/b ELSE ier = 1 END IF ELSE d = b**2 - 4.*a*c IF (d = 0) THEN r1 = (-b + SQRT(d))/(2*a) r2 = (-b - SQRT(d))/(2*a) ELSE r1 = -b/(2*a) r2 = r1 i1 = SQRT(ABS(d))/(2*a) i2 = -i1 END IF END IF END The answers for the 3 test cases are: (a) -0.438, -4.56; (b) 0.5; (c) -1.25 + 2.33i; -1.25 - 2.33i. Several features of this subroutine bear mention: · The subroutine does not involve input or output. Rather, information is passed in and out via the arguments. This is often the preferred style, because the I/O is left to the discretion of the programmer within the calling program. · Note that an error code is passed (IER = 1) for the case where no roots are possible. 2.5 The development of the algorithm hinges on recognizing that the series approximation of the sine can be represented concisely by the
Geschreven voor
- Instelling
- Chamberlian School Of Nursing
- Vak
- TEST BANK FOR Numerical Methods for Engineers By Steven C. Chapra
Documentinformatie
- Geüpload op
- 15 november 2021
- Aantal pagina's
- 516
- Geschreven in
- 2021/2022
- Type
- Tentamen (uitwerkingen)
- Bevat
- Onbekend
Onderwerpen
-
exam elaborations
-
test bank for numerical methods for engineers by steven c chapra solutions manual