You are on page 1of 8

TAREA N° 09

1. a) Elabore un diagrama de flujo estructurado, b) seudocódigo utilizando las raíces de


una ecuación cuadrática, ax2 + b x + c, Utilice un procedimiento de subrutina para
calcular las raíces (sean reales o complejas). Ejecute corridas de prueba para los
casos en que a) a = 1, b = 6, c = 2; b) a = 0, b = –4, c = 1.6; c) a = 3, b = 2.5, c = 7

SOLUCIÓN

Hay que tener muy claro qué se quiere hacer y que es lo que deseamos obtener en este caso lo
plantearemos de la siguiente forma:

1. Objetivos: obtención de las raíces reales o imaginarias para la ecuación tipo.

2. Condicionantes: parámetros a, b, c.

3. Datos de partida: parámetros a, b, c.

4. Método o estrategia de resolución: resolución documentada.

5. Resultados a obtener: raíces x1 y x2 de la ecuación.

Documentación:

La solución general viene dada por:

Con las siguientes particularidades en función del radicando: Donde SQR es la Raíz cuadrada de

X1,2 = ( -b ± SQR(b2 - 4ac) ) / 2ª

a) Cuando > 0 existen dos raíces reales:

X1 = ( -b + SQR(b2 - 4ac) ) / 2a              X2= ( -b - SQR(b2 - 4ac) ) / 2a

 b) Cuando = 0 existe una raíz real: X1 = X2 = -b / 2a

 c) Cuando < 0 las dos raíces son imaginarias:

X1 = (-b / 2a) + (SQR(d) / 2a) · i             X1 = (-b / 2a) - (SQR(d) / 2a) · i

 donde d = b2 - 4ac   e i la unidad imaginaria, mientras que SQR indica la operación de raíz cuadrada.
Pseudocódigo:
program EQ2
implicit none

real a, b, c
real discriminante
real parte_real, parte_imag
real x1, x2
write(*,*) "Entrar los coeficientes cuadratica"
read(*,*) a, b, c

discriminante = b**2 - 4 * a * c

if (discriminante > 0) then

x1 = ( -b + sqrt(discriminante) ) / (2 * a )
x2 = ( -b - sqrt(discriminante) ) / ( 2 * a )

write(*,*) "Esta ecuacion tiene dos raices reales:"


write(*,*) "X1:",x1
write(*,*) "X2:",x2

else if (discriminante == 0) then


x1 = ( -b ) / ( 2 * a )
write (*,*) 'Esta ecuacion tiene dos raices reales:'
write (*, *) 'XI = X2 = ', x1

else
parte_real = ( -b ) / ( 2 * a )
parte_imag = sqrt (abs(discriminante)) / (2 * a)

write(*,*) "Esta ecuacion tiene dos raices complejas:"

write (*,*) 'X1 = ', parte_real, ' +i ', parte_imag


write (*,*) 'X2 = ', parte_real, ' -i ', parte_imag
end if
pause
end program
Con el valor de a=0 seria una ecuación BX+C=0 para obtener la raíz la cual la evaluaremos de
otra manera.
3. La función coseno puede evaluarse por medio de la serie infinita siguiente:

Escriba un algoritmo para implementar esta fórmula


de modo que calcule e imprima los valores de cos x conforme se agregue cada
término de la serie. En otras palabras, calcule e imprima la secuencia de valores
para:

Hasta el término de orden n que usted elija. Para cada uno


de los valores anteriores, calcule y haga que se muestre el error porcentual relativo:

10

11

12
clear all;clc;

fprintf('Aproximación Error porcentual\n')

v_verd=cos(pi/4);

x=pi/4;

k=1;

for n=0:5

A(k)=((-1)^n)*((x^(2*n)/factorial(2*n)));

v_aprox=sum(A);

ep=abs(((v_verd-v_aprox)/v_verd))*100;

k=k+1;

fprintf('%0.10f %0.10f %%\n',v_aprox,ep);

end

4. El algoritmo siguiente está diseñado para determinar la calificación de un curso que


consiste en cuestionarios, tareas y un examen final:

Paso 1: Introducir la clave y nombre del curso

Paso 2: Introducir factores de ponderación para los cuestionarios (C), tareas (T) y
examen final (E).
Paso 3: Introducir las calificaciones de las preguntas y determinar su promedio (PC).

Paso 4: Introducir las calificaciones de las tareas y determinar su promedio (PT).

Paso 5: Si el curso tiene una calificación final, continuar con el paso 6. Si no, ir al
paso 9.

Paso 6: Introducir la calificación del examen final, (F).

Paso 7: Determinar la calificación promedio, CP, de acuerdo

Paso 8: Ir al paso 10.

Paso 9: Determinar la calificación promedio, CP, de acuerdo con

Paso 10: Imprimir la clave y nombre del curso, y la calificación

Paso 11: Finalizar el cálculo.

a) Escriba un seudocódigo bien estructurado para implementar este algoritmo.

b) Escriba, depure y documente un programa estructurado de computadora basado


en este algoritmo. Pruébelo con los datos siguientes para calcular una calificación
sin el examen final, y otra con éste. C = 35; T = 30; E = 35; cuestionario = 98, 85,
90, 65 y 99; tareas = 95, 90, 87, 100, 92 y 77; y examen final = 92.

Sugerencia puede usar Fortran , Matlab, Lenguaje C

Proceso Promedio

Escribir "Ingrese la cantidad de datos";

Leer N;

acum<-0;

Para i<-1 Hasta N Hacer

Escribir "Ingrese el dato ",i,":";


Leer dato;

acum<-acum+dato;

FinPara

prom<-acum/N

Escribir "El promedio es: ", prom;

FinProceso

You might also like