1)Fundamentos de la programacion

26
UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA Departamento de Ciencias de la Computación y Electrónica Sección Tecnologías Avanzadas de la Web y SBC Asesoría virtual: www.utpl.edu.ec Profesor principal: Ing. Jorge A. López Vargas Fundamentos de la Programación Evaluación a distancia 5 Créditos TUTORÍAS: El profesor asignado publicará en el Entorno Virtual de Aprendizaje (EVA) su número telefónico y horario de tutoría, para contactarlo utilice la opción “Contactar al profesor” Más información puede obtener llamando al Call Center 072588730, línea gratuita 1800 88758875 o al correo electrónico [email protected] Abril-Agosto 2013 FUNDAMENTOS DE LA PROGRAMACIÓN

Transcript of 1)Fundamentos de la programacion

Page 1: 1)Fundamentos de la programacion

Titulación Ciclo

y Ingeniero en Informática II

UNIVERSIDAD TÉCNICA PARTICULAR DE LOJALa Universidad Católica de Loja

MODALIDAD ABIERTA Y A DISTANCIA

Departamento de Ciencias de la Computación y ElectrónicaSección Tecnologías Avanzadas de la Web y SBC

Asesoría virtual:www.utpl.edu.ec

Profesor principal:Ing. Jorge A. López Vargas

Fundamentos de la Programación

Evaluación a distancia

5 Créditos

TUTORÍAS: El profesor asignado publicará en el Entorno Virtual de Aprendizaje (EVA) su número telefónico y horario de tutoría, para contactarlo utilice la opción “Contactar al profesor”

Más información puede obtener llamando al Call Center 072588730, línea gratuita1800 88758875 o al correo electrónico [email protected]

Abril-Agosto 2013

FUNDAMENTOS DE LAPROGRAMACIÓN

Page 2: 1)Fundamentos de la programacion
Page 3: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 3

PRUEBA OBJETIVA (2 puntos)

Conteste (V) Verdadero o (F) Falso a cada una de las siguientes a!rmaciones

1. ( ) La declaración de las variables es correcta:

...DeclaracionesVariablesnombre, apellido : Cadena

OS

Le recordamos que a partir del presente ciclo académico usted debe enviar de forma obligatoria su evaluación a distancia a través del Entorno Virtual de Aprendizaje (EVA) en las fechas de!nidas, con carácter de EXCLUSIVAS E IMPOSTERGABLES.

TITULACIONES PRIMER BIMESTREFECHAS DE ENVÍO

* Licenciado en Ciencias de la Educación, Mención:- Educación Básica- Físico Matemáticas- Químico Biológicas- Lengua y Literatura

* Ingeniero en Contabilidad y Auditoría

Del 1 al 14 de mayo de 2013

* Ingeniero en Gestión Ambiental* Economista* Licenciado en Psicología* Licenciado en Ciencias de la Educación, Mención: Inglés* Licenciado en Ciencias de la Educación, Mención: Educación Infantil

Del 1 al 15 de mayo de 2013

* Abogado* Ingeniero en Administración en Gestión Pública* Licenciado en Ciencias de la Educación, Mención: Ciencias Humanas y Religiosas* Ingeniero en Administración de Empresas Turísticas y Hoteleras

Del 1 al 16 de mayo de 2013

* Ingeniero en Administración en Banca y Finanzas* Licenciado en Asistencia Gerencial y Relaciones Públicas* Ingeniero en Informática* Ingeniero en Administración de Empresas* Licenciado en Comunicación Social

Del 1 al 17 de mayo de 2013

Para el envío de las evaluaciones acceda a: www.utpl.edu.ec.

PRIMER BIMESTRE

PRIMERA EVALUACIÓN A DISTANCIA

Estimado estudiante, recuerde la importancia de ingresar e interactuar a través del Entorno Virtual de Aprendizaje (EVA). Las actividades planteadas tienen un valor de 2 puntos, importantes para su calificación.

Pg 49-50 y 155GUÍA,RESPUESTA "V"

Correcto , declaración en psudocódigo para variablesde tipo cadena , la coma de separación , se usa paraestablecer a mas una variable que posee un mismotipo de dato

Page 4: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA4

2. ( ) El ingreso de datos se puede hacer de la siguiente manera (suponga que las variables han sido declaradas previamente).

...Leer nom, ape, edadSolicitar nombre, apellido, edad

3. ( ) La escritura de datos o salida se puede hacer de la siguiente manera (suponga que las variables fueron declaradas previamente).

Print(var1, var2, var3)

4. ( ) Para imprimir datos con letreros (texto descriptivo) se puede hacer de la siguiente manera:

Imprimir (“NOMBRE = “ + nombre, “SUELDO = “ + sueldo)

5. ( ) La representación en pseudocódigo de la siguiente expresión matemática es correcta.

Z = 2 x ( X + Y) / (4 x Y – 1)

6. ( ) El siguiente fragmento de un algoritmo imprime el mensaje “Se ejecutó el IF” (Suponga que edad = 18 y sexo = ‘M’).

...IF edad > 20 AND sexo = ‘M’ THENImprimir “Se ejecutó el IF”ELSEImprimir “Se ejecutó el ELSE”ENDIF

7. ( ) El siguiente fragmento de un algoritmo imprime el mensaje “Número Válido” (Suponga que nro = 18).

...IF (nro > 0 AND nro <= 10) OR (nro > 30 AND nro <45) THEN

Imprimir “Número Válido”ELSE

Imprimir “Número fuera de Rando”ENDIF

ES MATEMÁTICAMENTE INCOMPATIBLE , DEBIDO A QUEASIGNANDO VALORES A " X " , " Y " , las ecuaciones planteadaspara " Z " ,no satisfacen.

(F ) Porque primero va " Solicitar " vease pág42-43 texto

"Falso " ,porque , al asignar a " edad " con 18 ,la condición lógica de " If edad > 20 " ,solo seimprime la expresión lógica de condición "ELSE" (de lo contrario )

La expresíon lógica condicional noexpone ,no incluye directamente a elnúmero "18 " por lo que se imprime lacondición de la expresión lógica "ELSE "

El " Print " , se usa en pseudocódigo lsin parentesis ,y tampocosatisface otro formato como en java " systm.out.printf

Pg 49 y 156GUIA

V1, pregúnta 3ev a presencialF.Programaciónanteriorsemestre

V1, pregúnta 4ev a presencialF.Programaciónanteriorsemestre

FALSO : Porque , en psudocódigo se usa eloperador " * " como multiplicación mas nó " x "

Page 5: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 5

8. ( ) El valor de la variable resto es igual a 2.

...Calcular resto = 5 MOD 2

9. ( ) El siguiente fragmento de pseudocódigo es correcto (Suponga que la variable nomUni es de tipo Cadena).

...SWITCH nomUni

“UTPL” : Imprimir “Sede en Loja”“UTE” : Imprimir “Sede en Quito”“ESPOL”: Imprimir “Sede Guayaquil”

ENDSWITCH

10. ( ) El siguiente fragmento de pseudocódigo imprime “Datos Incorrectos” (Suponga que sexo = 2 y edad = 1.

...SWITCH sexo

0 :IF edad >= 18 THENImprimir “Mujer mayor de edad”ENDIFImprimir “Mujer menor de edad”

1 :IF edad >= 18 THENImprimir “Hombre mayor de edad”ENDIFImprimir “Hombre menor de edad”

DEFAULTImprimir “Datos incorrectos”ENDSWITCH

11. ( ) El siguiente fragmento de pseudocódigo muestra un ciclo repetitivo controlado por un contador.

...Calcular num = 0DO...

num = num + 3WHILE num < 30

e)autoevaluaciónpg 49 Guia ,conrespuesta påg156

F) Pág 50Guía ,conrespuestade

OJO : pese a que en laautoevaluación está el mismo error,podemos inferir q la respuesta es " F" si nos preocupamos por la salidacon " Incorrectos " con mayuscula,hay q ser bien claros ,pero con todoel profesor ha seleccionado estarespuesta como " v " ,por lo tanto hetomado esa inferencia

Es falso ,porque1) No soporta " switch "comparaciones con tipos de dato string

Notar que el contador " num " establece que elcoclo no sea infinito y que num incremente entres unidades en cada ciclo repetitivo

Pág 82Guía,soluciónpág 161

V1, pregúnta 7ev a presencialF.Programaciónanteriorsemestre

Pág 63 , CD ,documento 5 ,Se explica que SWITCH ( nosoporta tipo de datos " cadena" ni decimales ),solo soportatipo de datos entero

Page 6: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA6

12. ( ) El siguiente fragmento de pseudocódigo muestra el mensaje “Salida” una sola vez.

...Calcular nro = 0DO...

nro = nro – 1Imprimir “Salida”

WHILE nro > 0

13. ( ) El siguiente fragmento de pseudocódigo es correcto.

...Calcular nro = 2DO nro < 10

nro = nro + 1...ENDDO

14. ( ) El siguiente fragmento de pseudocódigo es correcto.

...Calcular limite = 4WHILE limite < 12

limite = limite * 3Imprimir “Fuera del ciclo WHILE”

15. ( ) El siguiente fragmento de pseudocódigo es correcto (Suponga que la variable contador ha sido declarada previamente).

...FOR contador = 0; contador ++...ENDFOR

16. ( ) El siguiente fragmento de pseudocódigo es correcto (Suponga que la variable contador ha sido declarada previamente).

...FOR contador = 0; contador < 25; contador = contador + 1.65...ENDFOR

Notar que en primer ciclo la variable nro adquiere elvalor de " - 1 " antes de pasar a imprimir " Salida " , yal pasar por la finalización del bucle " DO - WHILE " ,no se cumple con la expresión lógica " nro > 0 " ,porlo que el ciclo repetitivo no se efectua y se termina laejecución y se dirige a evaluar el siguiente paso....

Análogo e eje pag82 guía ,conrespectivasolución pág 161Guía

Análogo e eje pag82 guía ,conrespectivasolución pág 161Guía Error de formato de estructura " Do -

While "

Análogo e ejepag 82 guía ,conrespectivasolución pág161 Guía

La estructura " WHILE " estå incompleta ,por lo queno podemos inferir si la última línea de código es lapenúltima parte de la finalización de la estructura ono , por lo que , viendo q nos pide " SI ESTÁCORRECTA " , lo cual no sucede

contador ,declarado con tipo de datoentero , mas no real ,por lo que laexpresión contador = contador +1.65 produce un valor " Real " acontador ,produciendo un ERROR

V1, pregúnta 11 ev apresencial F.Programaciónanterior semestre,pregunta19 ) anterior ev a distancia

V1 , anterior evpresencial ,literal 10 )

Tomar en cuenta , que al menos en Java , el contadorubicado en la estructura for solo soporta (contador++ 0

contador--) , intentarlo.

Page 7: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 7

17. ( ) El siguiente fragmento de pseudocódigo imprime el mensaje “Salida” 3 veces.

...FOR cont = 0; cont < 7; cont = cont + 3

IF cont MOD 3 == 0 THEN Imprimir “Salida”ENDIF

ENDFOR

18. ( ) El siguiente fragmento de pseudocódigo imprime el mensaje “Salida” 3 veces.

...Calcular cont = 0, salir = falseDO

cont = cont + 3 IF cont MOD 3 == 0 THEN Imprimir “Salida” salir = trueENDIF

WHILE cont < 7 AND salir == false

19. ( ) Para que la variable cociente tenga el valor 2.5 tiene que ser declarada como así:

...Declaraciones

Variables cociente : Real

Calcular cociente = 5 / 2

20. ( ) El siguiente fragmento de código cuenta los divisores que tiene un número, suponga que el número es ingresado por el usuario y almacenado en la variable n.

int contDivi = 0;for(int div = 0; div < n; div ++){

if(n % div == 0) { contDivi = contDivi + 1;

}}

Verdadero , porque el cont ,adquiere en elprimer ciclo el valor de " 0 " ,0 mod 3 = 0imprimiendo " Salida " por 1 era vez ,en el2 do ciclo cont = 3 ,por lo q cont MOD 3 ==0 ,se imprime la 2 da vez " salida " , contermina con cont = 3 + 3 = 6 , por lo que enel tercer ciclo 6 MOD 3 == 0 se imprime "salida " por TERCERA VEZ , termina elciclo.

Análogo e eje pag 82guía ,con respectivasolución pág 161Guía

Falso , porque en el bucle Do - WHILE , salir ,nuncase le asigna false ,por lo que el final de la estructuraDO - WHILE ,la expresión cont < 7 AND salir ==false , la expresión compuesta final , quedará con "Falso "para concluir el bucle " DO - WHILE "!imprimiendose " Salida " (2 veces ) 1) 3 MOD 3== 0 ,y no más debido a que al pasar por laestructura de finalización del " DO - while " , no secumplen ambas expresiones puesto que " V ^ F =falso " por lo tantoel bucle termina con cont= 3.

Variable " div " ,no puede inicializar con "cero " porque ( n mod 0 ) no existe ,recordar q es analogo a n / 0 , esmatemáticamente incorrecta

Recordar q el "cero " es unnumero entero

V2, pregúnta 8ev a presencialF.Programaciónanteriorsemestre

Pág 26 guía , ni 2 , ni 5 sonde tipo de dato " double " porlo tanto la salida de laexpresión 5/2 = 2 RECORDAR QUE ES PSUDOCÓDIGO , NO CÓDIGO DE JAVA , ASÍ Q ESTA

SUJETO AL FORMATO Y LIMITANTES Y SINTAXIS DEL PSUDOCÓDIGO

Pregunta 23anterior ev a

distancia

Page 8: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA8

21. ( ) En Java las siguiente declaraciones son correctas.

int edad;String nombre, apellido;double peso, estatura;

22. ( ) En Java para crear un programa se debe iniciar de la siguiente manera.

public algoritmo Primero {...

23. ( ) En Java el método principal tiene la siguiente forma.

public static void main (String [] args) {...

24. ( ) El siguiente código en Java imprime los dos mensajes.

...edad = 18;if ( edad >= 18) {System.out.println(“Mayor de edad”);}System.out.println(“Menor de edad”);

25. ( ) En Java el siguiente fragmento de código es correcto.

...int anio = 2010;System.out.printf(“El año es %f”, anio);...

26. ( ) En Java el siguiente fragmento de código compilaría sin errores.

...int a = 12, b = 24;if (a <> 10 AND b > 12) {...}

Ejemplo ,pág62 guía

Falso ,sería : public class algoritmoPrimero { ,recordar que una " clase " hace llamado a unsubconjunto t total del programa ,dónde se desarrollauna parte o todo el programa

Ejemplo ,pág 62guía

Ejemplo ,pág62 guía

Nota : El código expuesto solo es unfragmento de el programa ,por lo quepensando de esta manera si seimprimen los dos mensajes en tiempode ejecución ,PERO TOMANDO ELFRAGMENTO COMOCORRECTAMENTEESTRUCTURADO

V2, pregúnta 12ev a presencialF.Programaciónanteriorsemestre

V2, pregúnta 13ev a presencialF.Programaciónanteriorsemestre

El signo de diferencia en Java es" ! = "mas no " < > "

Se asigna anio como variable de tipo dedato integer " entero " , después se loimprime con formato float " decimal " ,con loque el formato es incompatible

El especificador deformato " %f " seusa para tipo ddatos ( float ,

Page 9: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 9

27. ( ) El siguiente fragmento de código Java es correcto.

...int edad = 13;if(edad >= 10) System.out.println(“Mayor de edad”);elseSystem.out.println(“Menor de edad”);...

28. ( ) El siguiente fragmento de código Java imprime 5 veces el mensaje “Salida”

29. ( ) El siguiente código Java produce un ciclo repetitivo in!nito.

int a;do{a = 0;a = a + 3;}while(a < 10);

30. ( ) El siguiente código Java es correcto.

int a = 0;while ( a < 10);a = a + 1;}

31. ( ) El siguiente fragmento de código Java muestra una mala práctica de programación:

for(int i = 0; i < 7; i ++){ ... i = i – 2;}

Falta la llave de inicialización " { "

V1 ,pregúnta 15ev a presencialF.Programaciónanteriorsemestre

Verdadero ,porque , si se ejecuta sin error por lo tanto escorrecta debido a que en JAVA cualquier estructura decontrol es opcional omitir las llaves {} siempre y cuando lasiguiente línea de código sea unica, es decir no se puedeaplicar la omisión cuando hay más de dos líneas decódigo despues de una estrustura de control condicional osecuencial

Es " Verdadero " porque debido a la utilización de la estructura "For " , el contador por defecto inemerso en la estructura " i ++ " ,aunmenta a " i " en i = i + 1 , pero que sentido útil tienedecrementar i = i - 2 , no tiene un sentido útil , debido a que elcontador debería ser asignado desde un inicio en la líne de la

Falso ,porque salida solo seimprime 3 veces 1) Para x = 2 ,x = 5 , x =8 , i siempre terminacon " i " independientemente delcontador i = i + 1 , devido a quesiempre q termina el bucle " for ", se prosigue con el bucle "while " y al entra nuevamente albucle " for " , se asignanuevamente a i con " 1 "

Påg 55 - 56 libro Deitel como programar en java 6 ta edicion , la instrucción tal comoestá sería asimilada por el compilador comoint a = 0;while(a < 10 ); // Este " ; " , produce error lógico , en la opción al cumplirse por verdaderoa = a + 1; // en la estructura while , imprimiendo a = a +1 pese a que la condición en} //Aquí está el error , java no interpreta esta " } " como finalización de la//Estructura " while "

donde el punto y comaque aparece por sí solo enuna línea (que se conocecomo instrucción vacía onula) es la instrucción quese va a ejecutar si lacondición en la instrucciónwhile es verdadera.

Falso porque : devido al bucle " DO -while " , la asignación de a = 0 ,siempre producirá un cambio de estado a " a " independientemente delcontador: a = a + 3 , produciendo un bucle infinito al nunca terminar lacondición de } while ( a<10 ) ;porque siempre devolverå " true " laexpresión lógica principal .

Ejer 17 v1anterior evpresencial

Page 10: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA10

32. ( ) Para obtener la raíz 5 de 60, en Java se puede hacer de la siguiente manera.

int raiz;raiz = Math.pow(60, 1/5);

33. ( ) El siguiente código es correcto:

for (int i = 0; i < 10; i = i + 3) { ...

34. ( ) Dentro de Java, las siguientes expresiones son equivalentes:

a ++a += 1

35. ( ) En Java, el valor de la variable c es 2.5.

...double c = 5.0/2;

36. ( ) La siguiente sentencia muestra en la pantalla del valor de la variable a.

System.out.print(“a”);

37. ( ) La siguiente expresión es correcta.

int cont = 0;while (cont < 5)System.out.printf(“%d”, cont++);int b = 10;

38. ( ) La siguiente sentencia muestra en pantalla el valor de la variable a que ha sido declarada como cadena de texto (String).

System.out.printf(a);

39. ( ) La siguiente sentencia muestra en la pantalla el valor de la variable a que ha sido declarada como entera (int).

System.out.printf(a);

40. ( ) El siguiente código calcula el factorial de un número, suponga que el número ha sido ingresado por el usuario y almacenado en la variable n.

int facto = 1;for(int i = n; n > 1; i --){ facto = facto * n;}

37F ,hay mala práctica de programación, se debeacumular o incrementar una variable en una sola línea,y se debe usar una línea diferente para imprimirla, además que no está usando {} sin embargo si compila)

38F (38 es incorrecta porque esta usando printf y deberia ser asiSystem.out.printf("%s", a); si fuese System.out.print(a); seríacorrecto)

39 )debe ser System.out.printf("%d", a)

Falso porque El bucle es infinito pues las variables en laestructura " For " tendrían q ser distintas las asignaciones ycomparaciones , adquiriendo la variable " facto " un valorincompatible con el propósito del factorial de un número

Ver ejer factorial pág61 Guía

QUE OBJETO , TIENE ESTABLECER UNA ESTRUCTURA FOR , siel contador i -- , esa " n " nunca sufre cambios de estado en tiempode ejecución por lo tanto " n > 1 " produce un bucle infinito , tendríaque ser " i > 0 " y " facto = facto*i "

Falso porque : pese a q la función Math,pow (60 , 1/5 )está correctamente expresada , hay q tomar en cuentael tipo de dato entero de " raiz " ,por lo que la funciónMath.pow no debería producir valores " reales " .

Correctamente expresada la estructura "For " en la línea especificada ,ojo no seconcluye la finalización del " For "

En este caso c ha sido asignada con un tipode dato " double " que permite asignarle a "

Falso ,porque esa " a " , es un caracter , mas nouna variable

Página 60 guía ,igualdad deformato entre contadores deincremento

El " %d " , es un especificador deformato para tipo de dato entero

El " %s " , es un especificador deformato para tipo de dato cadena (string )

El error está presente en que no sefinaliza la estructura " while "

Recordar , q no se especifica el final dela estructura for , , pero vajo eso lapregunta 23) tambien seria cuestionable

Page 11: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 11

PRUEBA DE ENSAYO (4 puntos)

Participe en cada uno de los foros que se encuentran planteados en los capítulos correspondientes al primer bimestre. (2 puntos)

Asignatura: Fundamentos de la programación

Docente: Ing. Jorge López Vargas

Primer Bimestre

1. Foro:

Elabore un programa en Java que permita calcular cuántas horas, minutos y segundos existe en una cantidad de segundos que es ingresada por el usuario. Ejemplo el usuario ingresa 3921 el programa debe devolver: 1 hora, 5 minutos 21 segundos.

2 Foro:

Elabore un programa en Java, que permita calcular un valor aproximado de la constante e aplicando la siguiente serie. (Ver http://es.wikipedia.org/wiki/Número_e)

Puede tomar cómo límite de n el valor de 20 en lugar del in!nito.

1. Se desea calcular un valor aproximado de la constante PI, para ello se usará la siguiente fórmula:

Y se ha desarrollado un programa escrito en pseudo código. Ordene las siguientes sentencias de tal forma que el programa funcione.

Sentencia(s) Orden

Fin

Variables

Π4

= ∑n= 0

∞ (− 1)n

2n+1

Ver código enjava defactorial en pág61 Guía.

Ojo que es Pi / 4 , para calcular pi,hay que multiplicar 4 * ( expresiónexpuesta equivalente a pi/4 )

Este problemaes facil ,consejo utilizar la división entera ,la misma seemula asignando un tipo de dato integer para que se contabilize deuna división ,las cantidades enteras de horas ,minutos y segundos

Page 12: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA12

Sentencia(s) Orden

Imprimir pi

Algoritmo para Calcular el valor de PI

Solicitar el limite superior

suma = suma + numerador/denominador

Fin Método principal

limite, n : Enterosuma, numerador, denominador, pi : Real

Método principal

FOR(n = 0; n <= limite; n ++)

Fin Clase CalculoPi

Declaraciones

Leer limite

numerador = Potencia(-1, n)denominador = 2 * n + 1

Clase CalculoPI

pi = suma * 4

ENDFOR

2. De las variables(limite, n, suma, numerador, denominador y pi) de la pregunta número 1 cuál o cuáles de ellas se debe inicializar para que el programa funcione [0.25]:

Opción A ( ):

...Calcular n = 0, pi = 0, suma = 1;...

Opción B ( ):

...Calcular suma = 4, denominador = 0 ;...

Opción C ( ):

...Calcular suma = 0...

Es la única opción para que la variable " suma " funcione amanera de acumulador , satisfaciendo en primera instanciasuma = suma + numerador/denominador , si suma = 0 ,suma = 0 + numerador + denominador , debido al bucle dela estructura " For " , se produce una correcta acumulaciónde los valores a manera de " Sumatoria de términos " entiempo de ejecución .

Page 13: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 13

3. De la pregunta número 1 cuáles de las siguientes sentencias Java corresponde a las sentencias escritas en pseudo-código [0.25]:

numerador = Potencia(-1, n)Imprimir pi

Opción A ( ):

numerador = Math.potencia(-1, n);System.print(pi);

Opción B ( ):

numerador = Math.pow(-1, n);System.out.printf(“%f\n”, pi);

Opción C ( ):

numerador = (-1)^n;System.out.printf(“%d\n”, pi);

4. Elabore un programa en Java, que permita calcular la sumatoria de los primeros n términos de la siguiente serie numérica: [1.25 puntos]

5. ¿Participó, a través del EVA, en los foros propuestos en este bimestre? [2 puntos]

Estimado(a) estudiante, una vez resuelta su evaluación a distancia en el documento impreso (borrador), acceda al Entorno Virtual de Aprendizaje (EVA) en www.utpl.edu.ec e ingrese las respuestas respectivas.

SEÑOR ESTUDIANTE:

Le recordamos que para presentarse a rendir las evaluaciones presenciales no está permitido el uso de ningún material auxiliar (calculadora, diccionario, libros, Biblia, formularios, códigos, leyes, etc.)Las pruebas presenciales están diseñadas para desarrollarlas sin la utilización de estos materiales.

Págs 69-70Guía,código y algoritmosde serie de fibonacciy num primos

La función Math.pow (-1 , n ) base " -1 " ,exponente " n " , recordar que en java no haycomo elevar a una potencia con " ^ " , se lo hacecon la función Math.pow

Recordar que en el ejercício cada vez que n mod 2 = 1 , el signo cambia con un factor signo * (-1) , cada vez que n mod2 = 0 , el numerador pasa a ser denominador , el denominador y denominador son los valores individuales de la seriade numprimos y fibonacci , el exponente es ( Si n mod 2 = 0 ) es : exponente = numerador + denominador , ( DE LOCONTRARIO " else " exponente = 1/ ( den - num )x = numeroDeTerminos ;int x,n,signo ;n = x;..signo = -1 //* Para la inicialización del signo // Consejo 2 para el signo : ;.if ((n % 2 == 1 ) && ( signo > 0 ) ) || ( n ! = 1 ) { signo *= -1; // * Pág 47 , documento 4 del CD ( utilización de simplificación de código de contadores )} else { if ( n % 2 == 1 ) && ( signo < 0 ) || ( n == 1 ) { signo * = 1 ; } }

NOTA: Verificar operadorrelacional ( de conjunción ) pág49/ documento 4 del CD , el " || "tiene un significado distintonetamente a " | "

Doc 4 DC , se especifica la utilización de " ^ " ( nopara exponente )

El printf y la utilización de el especificador de formato " %f ",nos permite visualizar a la salida de la variable " pi " ,con elvalor en real con punto decimal

Funcion Math.pow(base,exponente) pag27 guia

Recordar q toda función matemática ,por lo menos una de lasvariables tiene q ser declarada como tipo " double " , porque elresultado de una función matemática es de ese tipo, ver påg 29guía .

Page 14: 1)Fundamentos de la programacion
Page 15: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 15

PRUEBA OBJETIVA (2 puntos)

Conteste (V) Verdadero o (F) Falso a cada una de las siguientes a!rmaciones.

1. ( ) Para recorrer un arreglo se utiliza un ciclo repetitivo FOR, imagínese que se ha declarado un arreglo de enteros de longitud 15, el siguiente fragmento de pseudocódigo es correcto.

...FOR i = 1; i < 15; i++...

OS

Le recordamos que a partir del presente ciclo académico usted debe enviar de forma obligatoria su evaluación a distancia a través del Entorno Virtual de Aprendizaje (EVA) en las fechas de!nidas, con carácter de EXCLUSIVAS E IMPOSTERGABLES.

TITULACIONES SEGUNDO BIMESTREFECHAS DE ENVÍO

* Licenciado en Ciencias de la Educación, Mención:- Educación Básica- Físico Matemáticas- Químico Biológicas- Lengua y Literatura

* Ingeniero en Contabilidad y Auditoría

Del 1 al 12 de julio de 2013

* Ingeniero en Gestión Ambiental* Economista* Licenciado en Psicología* Licenciado en Ciencias de la Educación, Mención: Inglés* Licenciado en Ciencias de la Educación, Mención: Educación Infantil

Del 1 al 11 de julio 2013

* Abogado* Ingeniero en Administración en Gestión Pública* Licenciado en Ciencias de la Educación, Mención: Ciencias Humanas y Religiosas* Ingeniero en Administración de Empresas Turísticas y Hoteleras

Del 1 al 10 de julio 2013

* Ingeniero en Administración en Banca y Finanzas* Licenciado en Asistencia Gerencial y Relaciones Públicas* Ingeniero en Informática* Ingeniero en Administración de Empresas* Licenciado en Comunicación Social

Del 1 al 9 de julio de 2013

Para el envío de las evaluaciones acceda a: www.utpl.edu.ec.

SEGUNDO BIMESTRE

SEGUNDA EVALUACIÓN A DISTANCIA

Estimado estudiante, recuerde la importancia de ingresar e interactuar a través del Entorno Virtual de Aprendizaje (EVA). Las actividades planteadas tienen un valor de 2 puntos, importantes para su calificación.

Page 16: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA16

2. ( ) Suponga que existe un arreglo, denominado notas, cuyo tamaño es igual a 5, la siguiente línea de pseudocódigo es correcta.

notas[6] = 19

3. ( ) En pseudocódigo son correctas las siguientes declaraciones.

...Declaraciones Tipos

ArregloDiezEnteros = Arreglo[10] Entero Variables

arr1 : ArregloDiezEnteros

4. ( ) Un arreglo bidimensional se lo declara de la siguiente manera en pseudocódigo:

...matriz : Arreglo[5][3] Real...

5. ( ) En pseudocódigo, los siguientes ciclos FOR permitirían recorrer un arreglo tridimensional.

...FOR f = 0; f < 3; f ++ FOR c = 0; c < 4; c++

... ENDFORENDFOR

6. ( ) Un método que no devuelve un valor tiene la estructura que se muestra a continuación (en pseudocódigo).

...Método metodoPrueba ... return 0Fin metodoPrueba

Page 17: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 17

7. ( ) En pseudocódigo, el siguiente es un método que tiene una lista de parámetros.

...Método metodoPrueba(a : Entero, b : Real, c : Entero) ...Fin metodoPrueba

8. ( ) En pseudocódigo, el siguiente es un método que tiene dentro de su lista de parámetros parámetros por referencia.

...Método metodoPrueba(Ref a : Entero, Ref b : Real, Ref c : Entero) ...Fin metodoPrueba

9. ( ) En pseudocódigo, un método que retorna un valor tiene la siguiente de!nición.

...Método metodoPrueba (ListaDeParémetros) : Tipo de dato...

10. ( ) El siguiente método (escrito en pseudocódigo) es correcto.

...Método metodoPrueba (x : Real) : Entero ... return xFin metodoPrueba

11. ( ) El siguiente método (escrito en pseudocódigo) es correcto.

...Método metodoPrueba (x : Real) : Entero Declaraciones

Variables res : Entero

...Fin metodoPrueba

Page 18: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA18

12. ( ) El siguiente método es correcto.

...Metodo prueba(a : Entero, b : Real) : Real return metodo2(a, b)Fin pruebaMetodo metodo2(x : Entero, y : Real) : Real Declaraciones

Variables res : Real

... return resFin metodo2

13. ( ) El siguiente método es correcto.

...Metodo prueba(a : Entero, b : Real) : Real return metodo2(a, b)Fin pruebaMetodo metodo2(x : Real, y : Entero) : Entero Declaraciones

Variables res : Entero

... return resFin metodo2

14. ( ) Analice la siguiente clase escrita en pseudocódigo y determine si se trata de una clase que representa al controlador.

...Clase ExecEmpleado Método principal

...

15. ( ) Suponga que existe una clase denominada Estudiante, el siguiente fragmento de pseudocódigo muestra un constructor.

...Método Estudiante() ...Fin Método Estudiante

Page 19: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 19

16. ( ) Suponga que exista una clase denominada Empleado, para crear un objeto es correcta la siguiente línea es correcta.

...Empleado emp = new Empleado();

17. ( ) Según la de!nición de los métodos “establecer”, el siguiente método es correcto.

...Método establecerEdad() return edad;Fin establecerEdad

18. ( ) Se ha de!nido la clase Reloj de la siguiente manera:

...Clase Reloj Declaraciones

Datos hora : Cadena

Método establecerHora(h : Cadena) hora = h

Fin establecerHora Método obtenerHora()

return hora Fin obtenerHoraFin Clase Reloj...

Para invocar al método establecerHora se debe ejecutar la siguiente sentencia:Reloj.obtenerHora()

19. ( ) El siguiente pseudocódigo es correcto.

...Clase EjecutaPrueba Método principal

... Fin Método principal Método probar ()

principal Fin método probarFin Clase

Page 20: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA20

20. ( ) Analice la siguiente clase escrita en pseudocódigo y determine si se trata de una clase que representa al modelo.

...Clase ExecEmpleado Método principal

...

21. ( ) Usando la sintaxis de Java es posible declarar arreglos de la siguiente manera.

int []arr = {3, -9, 5, 0};

22. ( ) En Java es correcta la siguiente sentencia:

int []arr = new double[12];

23. ( ) Se ha declarado un arreglo de la siguiente manera.

int []arr = {1, 5, 8, -1, 0}; El elemento que ocupa la última posición del arreglo tiene el valor

de 0

24. ( ) Se ha declarado un arreglo de la siguiente manera.

int []arr = {1, 5, 8, -1, 0};Es correcta la siguiente sentencia int var = arr[7];

25. ( ) Se ha creado una matriz (cuyo nombre es m) que tiene 3 !las y 5 columnas. La siguiente sentencia Java es correcta:

m[4][5];

26. ( ) Un arreglo bidimensional en Java, se puede declarar así.

int mat = {{1, 2, 3}, {4, 6, 5}};

27. ( ) En Java, para recorrer un arreglo se lo puede hacer usando el siguiente ciclo repetitivo.

for(int i = 0; i < arr.length; i++){ ...

Page 21: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 21

28. ( ) La de!nición de un método Java que no devuelve valor alguno es la siguiente:

public void noRetornar(String msj){ System.out.printf(“Su mensaje: %s”, msj);}

29. ( ) Se ha de!nido un método en Java, de la siguiente manera:public void metProbar(int a, String b, double c){

...}Para invocar al método se debe hacerlo así: metProbar(1; “Abc”; 3.1);

30. ( ) Suponga que se ha creado un método que tiene la siguiente formapublic int obtenerIndice(){

int a; ... return a;}

Y se creado e inicializado un arreglo de enteros que se llama arreg. La siguiente sentencia compilará sin problemas int ele = arreg[obtenerIndice()];

31. ( ) Se ha creado la clase Fecha de la siguiente manera:

public clase Fecha{ private String dia; public Fecha(){}}

¿La clase posee un constructor?

Page 22: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA22

32. ( ) Se ha creado la clase Fecha de la siguiente manera:

public clase Fecha{ private String dia; public void obtenerDia(){

return dia; } public String con!gurarDia(String d){

dia = d; }}

A pesar de que no posee un constructor ¿Es posible crear un objeto de dicha clase?

33. ( ) Suponga que en Java se ha creado la clase Fecha. Es posible realizar la siguiente acción en Java:

Fecha []agenda = new Fecha[4];

34. ( ) Se ha de!nido la clase Fecha. Es posible crear un método que tiene la siguiente forma:

public Fecha obtenerFechaSistema(){ Fecha f; ... return f;}

35. ( ) Existe un método en Java que tiene la siguiente forma:

public int factorial(int nro){ int fac = 1; ... return fac;}

Podemos a!rmar que nro es un parámetro o argumento para el método factorial

36. ( ) La siguiente declaración de un método en Java es correcta:public void presentar(int, edad, nroHijos; double estatura, peso){

...}

Page 23: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 23

37. ( ) En el siguiente método, la variable producto es una variable local.

public void multiplicar (double a, double b){ double producto; ...}

38. ( ) La siguiente de!nición de un método establecer para el atributo nombre (de tipo String) es correcto.

...public String establecerNombre (){ return nombre;}...

39. ( ) La siguiente de!nición de un método obtener para el atributo nombre (de tipo String) es correcto.

...public void establecerNombre (String nom){ nombre = num;}...

40. ( ) Suponga que ha programado una clase Java que se llama Estudiante, para crear una instancia (denominada est) de dicha clase se debe escribir la siguiente sentencia:

est : Estudiante();

Page 24: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA24

PRUEBA DE ENSAYO (4 puntos)

Participe en cada uno de los foros que se encuentran planteados en los capítulos correspondientes al segundo bimestre. (2 puntos)

Segundo Bimestre

1. Foro: Elabore un programa en Java que trabaje con un arreglo de números enteros con longitud mínima de 10, cuyos datos han sido ingresados por el usuario, luego su programa debe determinar, cuántos de los elementos almacenados son números primos.

2. Foro: Construya una clase denominada MensajeChat, con los atributos texto, fecha envío, emisor y receptor. La clase debe tener 3 constructores y los métodos obtener y con!gurar por cada atributo. La fecha puede ser declarada como String.

1. En Java, se han creado un método que permite contar cuántos elementos de un arreglo son mayores a un número. Ordene las siguientes sentencias de tal manera que se forme correctamente el método.

Sentencia Orden

return contador;

if(arr[i] > base){

}//del ciclo repetitivo

int contador = 0;

private static int contar(int []arr, int base){

}//de la setencia de selección

contador = contador + 1;

}//del método

for (int i = 0; i < arr.length; i++) {

Page 25: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPLLa Universidad Católica de LojaMODALIDAD ABIERTA Y A DISTANCIA 25

2. Con el método de la primera pregunta, ¿Cuál de las sentencias declara una variable que recibe el resultado de la ejecución del método y cómo se debería invocar al mismo? (Suponga que se ha declarado e inicializado un arreglo de nombre a y una variable entera con nombre nro)[0.25 puntos]:

Opción A ( ):

int cont;contar(a, cont);

Opción B ( ):

String cont;cont = contar(a, nro);

Opción C ( ):

int cont;cont = contar(a, nro);

3. Determine cuál de los siguientes métodos es un constructor de la clase Cuenta, cuyo atributo es saldo. [0.25 puntos]

Opción A ( ):

public Cuenta(int saldo){ this.saldo = saldo;}

Opción B ( ):

public const Cuenta(){ saldo = 0;}

Opcion C ( ):

public void cuenta(int saldo){ saldo = saldo;}

Page 26: 1)Fundamentos de la programacion

Evaluaciones a distancia: Fundamentos de la Programación

UTPL La Universidad Católica de Loja MODALIDAD ABIERTA Y A DISTANCIA26

4. Elabore una clase en Java con las siguientes características, la clase se llamará Cuenta, tendrá como atributos número (Entero), nombre del cliente (String), fecha de apertura (String) y saldo. La clase deberá tener un constructor que inicialice todos los atributos con valores que son pasados como parámetros. Además la clase deberá tener los métodos set y get para cada atributo, considerando que para el atributo saldo, el método set no debe aceptar valores menores o iguales que cero. [1.25 puntos]

5. ¿Participó, a través del EVA, en los foros propuestos en este bimestre? [2 puntos]

Estimado(a) estudiante, una vez resuelta su evaluación a distancia en el documento impreso (borrador), acceda al Entorno Virtual de Aprendizaje (EVA) en www.utpl.edu.ec e ingrese las respuestas respectivas.

SEÑOR ESTUDIANTE:

Le recordamos que para presentarse a rendir las evaluaciones presenciales no está permitido el uso de ningún material auxiliar (calculadora, diccionario, libros, Biblia, formularios, códigos, leyes, etc.)Las pruebas presenciales están diseñadas para desarrollarlas sin la utilización de estos materiales.