8
IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 Córdoba. http://www.iesgrancapitan.org http://informatica.iesgrancapitan.org [email protected] IES Gran Capitán Módulo: Programación Ciclo Formativo de Grado Superior “Desarrollo de aplicaciones Web” Listado Básico 1 Fecha entrega: 08-10-2015 Autor: Miguel Ángel López Moyano

Listado Ejercicios Básicos Java1

Embed Size (px)

Citation preview

Page 1: Listado Ejercicios Básicos Java1

IES Gran Capitán. C/. Arcos de la Frontera, S/N. 14014 – Córdoba.

http://www.iesgrancapitan.org http://informatica.iesgrancapitan.org [email protected]

IES Gran Capitán

Módulo: Programación

Ciclo Formativo de Grado Superior “Desarrollo de aplicaciones Web”

Listado Básico 1

Fecha entrega: 08-10-2015

Autor: Miguel Ángel López Moyano

Page 2: Listado Ejercicios Básicos Java1

Listado Básico 1 2

Autor: Miguel Ángel López Moyano

1. Los tipos de datos “primitivos” tienen un tratamiento especial, ya que no son

objetos (no se crean con new) y se usan frecuentemente en los programas. La razón

para el tratamiento especial es que crear un objeto con new -especialmente variables

pequeñas y simples- no es eficiente porque new coloca el objeto en el montículo

(trozo de memoria RAM). Para estos tipos, Java crea una variable "automática"

que no es una referencia. La variable guarda el valor, y se coloca en la pila (otro

trozo de memoria RAM más rápida y eficiente) para que sea más eficiente. Java

determina el tamaño de cada tipo primitivo. Estos tamaños no varían de una

plataforma a otra Indica los bits (no bytes) que ocupan y rango de valores posibles.

Tipo de variable Tamaño en bits Rango de valores

boolean - true, false

byte 8 -128 a 127

short 16 -32.768 a 32.767

int 32 -2.147.483.648 a 2.147.483.649

long 64 -9 · 1018 a 9 · 1018

float 32 -3,4 · 1038 a 3,4 · 1038

double 64 -1,79 · 10308 a 1,79 · 10308

char 16 Caracteres (en Unicode)

2. Crea la clase EjemploListaAnidada que muestre la siguiente salida. Para ello

utiliza el método System.out.print() con los caracteres \n y \t

Código:

Resultado:

Page 3: Listado Ejercicios Básicos Java1

Listado Básico 1 3

Autor: Miguel Ángel López Moyano

3. Crea la clase TablaAbecedarioMinusculas que muestre la siguiente salida. Para

ello utiliza el método System.out.print() con los caracteres \n y \t. Utiliza una

variable char con el código Unicode para mostrar la letra ñ. (no uses \udddd)

Código:

Resultado:

4. Crea la clase CaracteresEspagnoles que muestre la siguiente salida. Para ello

utiliza el método System.out.print() con los caracteres \n y \t. Utiliza el formato de

carácter \udddd

Page 4: Listado Ejercicios Básicos Java1

Listado Básico 1 4

Autor: Miguel Ángel López Moyano

Código:

Resultado:

5. Crea la siguiente clase y justifica los resultados

Código:

Resultado:

El resultado correcto es 10000. Es primer resultado sale de forma incorrecta porque la

operación que se realiza da como resultado un número mayor que 127 y no cabe en un

byte.

6. Crea la siguiente clase y justifica por qué el sufijo float (f ó F) es necesario:

Código:

Page 5: Listado Ejercicios Básicos Java1

Listado Básico 1 5

Autor: Miguel Ángel López Moyano

Resultado:

Es necesario indicar el sufijo float porque de lo contrario java tomaría el valor por defecto

que sería un double.

7. Crea la clase EsconditeConfuso con las siguientes sentencias. Interprétalas y

coméntalas en el código

Código:

Resultado:

8. Indica si es verdadero o falso:

Page 6: Listado Ejercicios Básicos Java1

Listado Básico 1 6

Autor: Miguel Ángel López Moyano

a. El tamaño del tipo boolean no está explícitamente definido; sólo se especifica que

debe ser capaz de tomar los valores true o false.

Verdadero.

b. Todos los tipos numéricos tienen signo, de forma que es inútil tratar de utilizar

tipos sin signo.

Verdadero.

c. El ámbito determina tanto la visibilidad como la vida de los nombres definidos

dentro. Se delimita mediante corchetes []

Falso. Se delimita mediante llaves {}

d. La asignación de una variable dentro de un ámbito se mantiene fuera del ámbito.

Verdadero.

e. Una variable definida dentro de un ámbito está disponible también fuera de su

ámbito.

Falso. Solo está disponible dentro de su ámbito.

f. Java permite convertir (casting) cualquier tipo primitivo en cualquier otro tipo,

excepto boolean, que no permite ninguna conversión.

Verdadero.

g. Java convierte automáticamente un tipo de datos en otro cuando sea adecuado

(de int a float, p.ej.)

Verdadero.

h. Con las conversiones reductoras (de float a int, p.ej.) nunca se corre el riesgo de

perder información.

Falso. En este caso se perderían los decimales.

i. Hay representación literal de números binarios en Java.

Verdadero.

j. Los sufijos de double, float y long pueden aparecer tanto en mayúsculas como en

minúsculas: 0d, 0D, 0f, 0F, 0l, 0L.

Verdadero.

Page 7: Listado Ejercicios Básicos Java1

Listado Básico 1 7

Autor: Miguel Ángel López Moyano

k. El prefijo hexadecimal 0x siempre ha de ir en minúsculas

Verdadero.

9. Si se asigna un valor a una variable fuera de rango (mayor de lo establecido), ¿qué

ocurre? ¿Existe alguna manera de resolverlo? Demuéstralo mediante un ejemplo.

(VariableFueraDeRango)

Se produciría un resultado erróneo ya que no es capaz de representar el valor de dicha

variable.

Código:

Resultado:

10. Crea una clase AsignacionVariables con el siguiente código. Corrígela si es

necesario y coméntala en el mismo código fuente, indicando errores y valores de

variables

Código:

Page 8: Listado Ejercicios Básicos Java1

Listado Básico 1 8

Autor: Miguel Ángel López Moyano

Resultado:

11. Como veremos más adelante, para garantizar que un objeto ha sido inicializado

existen los constructores. ¿Existe algún problema si se intenta acceder al valor de

una variable y ésta no ha sido inicializada?

Sí, debemos inicializar la variable dándole algún valor, de lo contrario el compilador nos

dará un error advirtiéndonos de que no se ha inicializado dicha variable.

12. Qué tipo de problema puede existir con la asignación de variables

No se pueden asignar valores que estén fuera del rango de la variable, de lo contrario

obtendríamos datos erróneos.