CC10A-Computación I – Control Nº 1 – jueves 2 de mayo de 2002

 

1.Al dividir dos números enteros positivos se puede obtener un resultado con una cantidad determinada de decimales. Al respecto, escriba un programa que siga el diálogo siguiente:

 

Ingrese el dividendo : 22

Ingrese el divisor : 7

Ingrese la cantidad de decimales del resultado : 20

Resultado = 3,14285714285714285714

 

Nota. Los dígitos de la parte decimal se obtienen sucesivamente del resultado de la división entera entre el resto o residuo anterior (multiplicado por 10) y el divisor. Para el ejemplo:

 

dividendo

22

10

30

20

60

40

50

10

30

20

60

40

50

10

30

20

60

40

50

10

30

cuociente

3

1

4

2

8

5

7

1

4

2

8

5

7

1

4

2

8

5

7

1

4

resto

1

3

2

6

4

5

1

3

2

6

4

5

1

3

2

6

4

5

1

3

2

 

2.A) Escribir la función (método) static public String eliminar(String X,String Y,String Z) que elimine del string X todos los substrings comprendidos entre los delimitadores Y y Z. Por ejemplo, eliminar("a]b[cd]e[f]g[h","[","]") entrega "a]beg[h". En caso que el segundo delimitador sea un string vacío, se deben eliminar todos los caracteres a partir del primer delimitador. Por ejemplo, eliminar("ab--cd","--","") entrega "ab".

B) (Ponderación: 1/3) Utilice la función eliminar en un programa que lea líneas y las escriba eliminando los substrings de la forma <caracteres> y  %caracteres. Por ejemplo,

"ana <maria>rios%gonzalez" debe escribirse "ana rios". El fin de los datos se indica con una línea que contiene sólo </html>.

3. La siguiente tabla muestra los métodos de una clase (Dia) que permite realizar operaciones con los días de una semana:

Encabezamiento

ejemplo

resultado

Dia(int x) // 1 £ x £ 7

Dia a = new Dia(1);

objeto que representa el día lunes

Dia mañana()

a.mañana()

objeto que representa el día de mañana

int comparar(Dia x)

a.comparar(b)

1 si los objetos son iguales (0 si distintos)

String nombre()

a.nombre()

“lunes” o “martes” o ... “domingo”

 

A)Utilice la clase anterior en un programa que muestre el calendario de un mes siguiendo el diálogo:

 

Ingrese cantidad de días del mes (1-31) : 31

Ingrese primer dia del mes (1-7) : 3

mi

ju

vi

sa

DO

lu

ma

mi

ju

vi

sa

DO

...

ju

vi

1

2

3

4

5

6

7

8

9

10

11

12

...

30

31

Nótese que:

-      los nombres de los días aparecen abreviados y separados por un espacio

-      los domingos se muestran en mayúsculas

-      los números de los días aparecen bajo la primera letra del nombre del día

B) Escriba la clase Dia, suponiendo la declaración: class Dia{ private int d; ...}