Activitats
El nom del dia de la setmana
L’objectiu d’aquesta activitat és saber codificar un mètode amb paràmetres d’entrada i sortida perquè realitzi una tasca concreta.
Donat el codi font parcial del programa DiaSetmana
, que es mostra tot seguit, completeu el mètode diaDeLaSetmana
(inicialment buit), de manera que, donat un número de dia de la setmana (1-7), retorni el nom del dia (Dilluns…Diumenge). També ha de tenir en compte el cas que el valor d’entrada no sigui cap dia de la setmana.
//Un programa que diu quin dia de la setmana és public class DiaSetmana { DiaSetmana programa = new DiaSetmana(); programa.inici(); } public void inici() { nom = diaDeLaSetmana(5); nom = diaDeLaSetmana(15); } //Param. entrada: número del dia //Param. sortida: el nom del dia //Poseu el vostre codi //... } }
Si està correctament fet, a la pantalla hauria de veure’s.
El tercer dia de la setmana és dimecres El cinquè dia de la setmana és divendres El quinze dia de la setmana és (No existeix aquest dia)
Nota: Cal aplicar disseny descendent per descompondre el codi en diferents invocacions a mètodes. Sempre que sigui possible, cal usar paràmetres d’entrada i sortida per tractar totes les dades (en qualsevol cas, mai variables globals). El mètode inici
no pot tenir cap estructura de selecció o repetició.
Test de primalitat
L’objectiu d’aquesta activitat és saber usar successives invocacions a mètodes fets per vosaltres per tal de dur a terme una tasca senzilla repetides vegades.
Feu un programa anomenat NumeroPrimer
que inclogui un mètode anomenat esPrimer
. Aquest mètode, donat un número enter, ha de dir si és primer o no. Un número primer és aquell que no pot ser dividit per cap altre número excepte l’1 o ell mateix. Només cal que funcioni amb valors positius, però no es pot usar System.out.println(…)
dins d’aquest mètode. Proveu que funciona fent successives invocacions des del mètode inici
.
A mode d’exemple, si es prova pels valors 18, 13 i 33, aquest programa podria mostrar per pantalla el següent:
El 18 és primer? false El 13 és primer? true El 33 és primer? false
Nota: Cal aplicar disseny descendent per descompondre el codi en diferents invocacions a mètodes. Sempre que sigui possible, cal usar paràmetres d’entrada i sortida per tractar totes les dades (en qualsevol cas, mai variables globals). El mètode inici
no pot tenir cap estructura de selecció o repetició.
Màxim Comú Divisor
L’objectiu d’aquesta activitat és saber codificar un mètode amb paràmetres d’entrada i sortida perquè realitzi una tasca concreta.
Donat el codi font parcial del programa MaximComuDivisor
, que es mostra tot seguit, completeu el mètode mcd
(inicialment buit), de manera que, donats dos valors enters (positius o negatius), calculi el seu Màxim Comú Divisor (MCD) seguit l'algorisme d'Euclides.
import java.util.Scanner; //Un programa que calcula l'MCD de dos números public class MaximComuDivisor { MaximComuDivisor programa = new MaximComuDivisor(); programa.inici(); } public void inici() { int a = llegirEnterTeclat(); int b = llegirEnterTeclat(); //Recordar que un mètode s'avalua com una expressió } public int llegirEnterTeclat() { int enterLlegit = 0; boolean llegit = false; while (!llegit) { llegit = lector.hasNextInt(); if (llegit) { enterLlegit = lector.nextInt(); } else { lector.next(); } } lector.nextLine(); return enterLlegit; } public int mcd(int a, int b) { //Poseu el vostre codi //... } }
Si està correctament fet, a la pantalla hauria de veure’s, per exemple.
Escriu el valor a: 14 Escriu el valor b: 21 L'MCD de 14 i 21 és 7
Nota: Cal aplicar disseny descendent per descompondre el codi en diferents invocacions a mètodes. Sempre que sigui possible, cal usar paràmetres d’entrada i sortida per tractar totes les dades (en qualsevol cas, mai variables globals). El mètode inici
no pot tenir cap estructura de selecció o repetició.
Mitjana de valors màxims
L’objectiu d’aquesta activitat és saber usar invocacions a mètodes per treballar amb valors dins un array.
Feu un programa anomenat MitjanaTresMaxims
que llegeixi una seqüència de 10 valors enters des del teclat, els desi a un array i mostri per pantalla quina és la mitjana aritmètica dels seus tres valors més grans. A mode d’exemple, el comportament del programa podria ser el següent:
Escriu deu enters separats per espais: 10 3 5 8 12 3 5 0 11 1 La mitjana dels tres valors més grans és 11.0
Nota: Cal aplicar disseny descendent per descompondre el codi en diferents invocacions a mètodes. Sempre que sigui possible, cal usar paràmetres d’entrada i sortida per tractar totes les dades (en qualsevol cas, mai variables globals). El mètode inici
no pot tenir cap estructura de selecció o repetició.
Ordenar per número de zeros
L’objectiu d’aquesta activitat és crear un programa basat en invocacions a mètodes amb paràmetres d’entrada i de sortida.
Feu un programa anomenat OrdenarPerZeros
que, donat un array de números enters inicialitzat amb valors concrets, primer el mostri per pantalla i després el mostri ordenat de manera ascendent d’acord al nombre de 0 de cada valor. Declareu l’array com variable dins el mètode inici
. A mode d’exemple, el comportament del programa podria ser el següent:
[ 100 2014 12 30 302 40020 7009 500000 ] [ 500000 40020 7009 100 2014 30 302 12 ]
Nota: Cal aplicar disseny descendent per descompondre el codi en diferents invocacions a mètodes. Sempre que sigui possible, cal usar paràmetres d’entrada i sortida per tractar totes les dades (en qualsevol cas, mai variables globals). El mètode inici
no pot tenir cap estructura de selecció o repetició.
Paraula amb més vocals
L’objectiu d’aquesta activitat és crear un programa basat en invocacions a mètodes amb paràmetres d’entrada i de sortida.
Feu un programa anomenat MesVocals
que llegeixi una frase i, tot seguit, mostri per pantalla quina és la paraula amb més vocals (sense importar majúscules i minúscules). A mode d’exemple, el comportament del programa podria ser el següent:
Escriu una frase: Hi havia una vegada una noia anomenada Caputxeta Vermella La frase amb mes vocals és "anomenada".
Nota: Cal aplicar disseny descendent per descompondre el codi en diferents invocacions a mètodes. Sempre que sigui possible, cal usar paràmetres d’entrada i sortida per tractar totes les dades (en qualsevol cas, mai variables globals). El mètode inici
no pot tenir cap estructura de selecció o repetició.