225XM03B2_EAC4_Enunciat_1314S1

Embed Size (px)

DESCRIPTION

eac ioc java

Citation preview

2251 CFGS Administraci de Sistemes Informtics2252 CFGS Desenvolupament d'Aplicacions MultiplataformaMdul 3 Programaci bsicaUF2 Programaci modularEAC4(Curs 201314 / 1r semestre)

Presentaci i resultats d'aprenentatgeAquest exercici davaluaci continuada (EAC) es correspon amb els continguts treballats a la quarta unitat U4 Programaci modular

Els resultats d'aprenentatge que es plantegen sn:Analitza els conceptes relacionats amb la programaci modular

Analitza els avantatges i la necessitat de la programaci modular

Aplica el concepte d'anlisi descendent en l'elaboraci de programes.

Modularitza correctament els programes realitzats.

Realitza correctament les crides a funcions i la seva parametritzaci.

T en compte l'mbit de les variables en les crides a les funcions.

Criteris davaluaci

La puntuaci mxima assignada a cada activitat sindica a lenunciat.

Els criteris que es tindran en compte per avaluar el treball de lalumnat sn els segents:Que faci el que es demana.

Que la descomposici del problema en mtodes sigui adequada.

Que s'hagin corregit els errors de compilaci i funcioni.

Que sigui codi ordenat i clar: fer servir variables amb nom significatiu.

Tot codi ha de tenir una capalera apropiada.

Tot el codi ha d'estar correctament indentat (tabulaci adequada).

Fer el lliurament en format .zip o .7z (NO s'admet el .rar)

Forma i data de lliurament

Per respondre les qestions haureu de crear fitxers de codi JAVA usant l'IDE Netbeans.

Un cop finalitzat lexercici davaluaci continuada heu denviar els fitxers de codi (no cal enviar tot el projecte, n'hi ha prou enviant els fitxers de codi organitzats en els mateixes carpetes que us hagi generat l'IDE i comprimits en un nic fitxer de format zip o 7z.Haureu de lliurar el fitxer generat a l'apartat M03 Lliurament EAC4 de l'aula, dins del termini establert. Tingueu en compte que el sistema no permetr fer lliuraments desprs de la data i hora indicades.

El nom del fitxer ser el segent: 225XM03B2_EAC4_Cognom1_Inicial del cognom2. Els cognoms sescriuran sense accents. Per exemple, lestudiant Joan Garca Santos posaria el segent nom al seu fitxer de lEAC2: 225XM03B2_EAC4_Garcia_S.

Assegureu-vos que els fitxers de codi compilen i es troben lliures d'errors.

Afegiu el vostre Nom i Cognoms a la capalera dels fitxers de codi.

El termini de lliurament finalitza a les 23:55 h del dia 10/10/2013. La proposta de soluci de lEAC es publicar el dia 14/10/2012 i les qualificacions el dia 18/10/2012.

Enunciat

Pautes generals a seguir en tots els exercicis:

Apliqueu disseny descendent estructurant el codi en diferents mtodes independents que responguin a tasques/objectius concrets.

Intenteu sempre que sigui possible crear mtodes genrics usant parmetres d'entrada i sortida per tal que es puguin reutilitzar ja sigui en el mateix programa o en altres

Descriviu abans de cada mtode la seva funcionalitat. Es tracta d'una descripci breu per precisa de les dades que entren el procs que realitza i el resultat obtingut. Si cal podeu fer tamb els comentaris que cregueu oportuns en el codi.

Intenteu usar noms auto-descriptius per anomenar les variables i als mtodes de manera que la lectura del codi es faci ms comprensible.

Intenteu separar en mtodes diferents i sempre que sigui possible l'entrada de dades, els clculs o procediments requerits i la sortida dels resultats.

Pregunta 1 (2 punts)

Realitzeu un programa que demani una frase a l'usuari i desprs d'analitzar-la mostri per pantalla quantes parules cont la frase. Cal considerar que una paraula s una seqencia de lettres de mida indeterminada delimitada per espais en blanc, signes de puntuaci i d'altres carcters delimitadors.

Per aquest exercici caldr que considereu carcters delimitadors, els smbols: espai, tabulador, salt de lnia, coma, punt i coma, punt, dos punts , interrogants, signes d'admiraci, parntesis, cometa simple i cometa doble. Tingueu en compte tamb l'inici de frase i el final de frase. Aix per exemple, la frase Aquesta frase t, exactament 10 paraules. Conta-les i ho veurs. cont 10 paraules.

Inicialment el programa mostrar un missatge de benvinguda indicant:

EXERCI 1Aquest programa cerca quantes paraules hi ha en una frase.-----------------------------------------A continuaci escriviu una frase qualsevol. El programa us indicar quantes paraules heu escrit.----------------------------------------

Seguidament demar un frase a l'usuari i esperar fins obtenir-la. Un cop entrada la frase caldr analitzar quantes partaules cont i mostrar-la per pantalla amb el resultat obtingut. Segons el resultat caldr mostrar:Si no troba cap paraula:

La frase: "Frase analitzada ...", no cont cap paraula.Si en troba una:

La frase: "Frase analitzada ...", cont 1 paraula.Si en troba ms d'una:

La frase: "Frase analitzada ...", cont X paraules.

Aix per exemple, si l'usuari escriu la frase: Aquesta frase t, exactament 10 paraules. Conta-les i ho veurs, la sortida per pantalla ser:

La frase: "Aquesta frase t, exactament 10 paraules. Conta-les i ho veurs", cont 10 paraules.

la correctesa d'aquest exercici s valorar amb l'exemple anterior i amb les frases:, ..(),,.

una.

Cal que tamb tingueu en compte que:Heu de resoldre l'exercici aplicant disseny descendent. Les solucions monoltiques no es tindran en compte.

En aquest exercici no es penalitzaran l's de variables globals, ni l's de mtodes sense parmetres.

No s necessari que feu cap verificaci de les dades entrades. Podeu suposar que l'usuari sempre entrar les dades correctes.

El fitxer .java que enviareu s'anomenar Eac4_001.java

Podeu estalviar-vos de picar les dades si inicialitzeu l'Scanner amb una cadena contenint la frase de prova. Exemple:

Scanner scanner = new Scanner(" Aquesta frase t, exactament ...\n");inicialitzar la variable scanner, amb la frase introduda des de parmetre sense necessitat d'escriure des de teclat.

Pregunta 2 (3 punts)

Se us demana implementar un programa que demani a l'usuari dues colleccions de nmeros de la mateixa mida i comprovi, si per cada una de les posicions de la primera collecci hi ha una correspondncia a la mateixa posici de la segona que sigui un potncia de seu valor. s a dir, suposant que anomenem C1 a la primera collecci i C2 a la segona, caldr comprovar per cada posici i si es compleix que C2[i] = C1[i]n.

En arrencar el programa es mostrar per pantalla l'objectiu del programa i es demanar a l'usuari la mida de les colleccions que caldr entrar. Seguidament es demanar posici per posici els valors d'ambdues colleccions de forma similar a l'exemple que posem a continuaci.EXERCI 2Aquest programa demana dues colleccions d'enters i comprova si els valors de la segona sn les potencies dels valors de la primera.=============================================================================

De quina mida necessites que siguin les colleccions? 10

Ara haurs d'entara el valor de cada posici de la collecci inicial.Entra el valor de la posici 1: 2Entra el valor de la posici 2: 5

A continuaci cal que entris el valor de la collecci de potncies de la colleccio anteriorEntra el valor de la posici 1: 64Entra el valor de la posici 2: 125

Durant el procs d'entrada de dades caldr comprovar que l'usuari entri realment un valor numric a cada posici. En cas que el valor entrat no sigui numric, se li tornar a demanar el valor de forma que en finalitzar la introducci s'hagin entrat tots el nmeros de la collecci.

Un cop entrats tots els valors, el programa far la comprovaci i sentenciar mostrant el resultat per pantalla de forma similar a:

--------------------------------------------------Els valors [64, 125, 2401, 729, 64, 0, 1, 1000, 144, 6561] sn les potncies de [2, 5, 7, 3, 8, 0, 1, 10, 12, 9]--------------------------------------------------

Cal que tamb tingueu en compte que:Heu de resoldre l'exercici aplicant disseny descendent. Les solucions monoltiques no es tindran en compte.

Eviteu l's de variables globals a excepci del lector Scanner de manera que pugueu inicialitzar-lo amb una cadena tal com s'ha explicat a l'exercici anterior.

Quan us calgui, afegiu als mtodes entrades (parmetres) i sortides (retorns) per evitar l's de variables globals.

El fitxer .java que enviareu amb la soluci de l'exercici s'anomenar Eac4_002.java

Pregunta 3 (5 punts)

Realitzeu un programa que permeti comprovar si una frase segueix un cert patr a l'inici, al final a l'interior de la frase o b coincideix exactament amb el patr. El patr s una seqncia de carcters que caldr comparar amb els carcters de la frase.

Si tenim per exemple la frase una frase a comparar, direm que comena com el patr una fra perqu frase i patr comencen de forma idntica. Tamb podem dir que la frase acaba com el patr arar o que cont el patr se a compa.

Els patrons amb els que cal treballar han d'admetre tamb un conjunt de comodins que passem a descriure a continuaci:? equival a un carcter qualsevol sense cap distinci.

%v. Usarem aquest parell de carcters per indicar que a la frase esperem trobar una vocal qualsevol.

%d. Usarem aquest parell de carcters per indicar que a la frase esperem trobar un dgit. s a dir, un valor numric comprs entre 0 i 9.

% . Usarem la combinaci dels smbols percentatge i espai per indicar que a la frase esperem trobar un carcter blanc. s a dir, un espai, un tabulador o un salt de lnia.

Aix per exemple la frase: El nmero 1 s'ordena abans que el 2 en un ordre ascendent, direm que comena com el patr ??% n?m%vr%v %d s'ord, perqu per cada posici de la frase, des de l'inici fins a la posici 17 coincideix seqencialment amb el mateix carcter del patr o amb un comod del tipus correcte (general, vocal, espai blanc o dgit).

El patrons hauran de suportar tamb altres comodins que permetin expressar un nombre indeterminat de carcters d'un tipus especfic. Concretament:%n. Usarem aquest parell de carcters per indicar que a la frase esperem trobar un nmero amb una quantitat indeterminada de dgits. El comod noms identifica dgits, no pas signes matemtics, ni smbols decimals o de puntuaci numrica. Per tant, noms identificar valors enters sense cap tipus de format.

%_. Usarem la combinaci dels smbols percentatge i gui inferior per indicar que a la frase esperem trobar un nombre indeterminat de carcters blancs.

Com exemple podem dir que la frase: L'adrea IP 192.168.1.5 s la del meu ordinador, comena com el patr ??%vdr%va% IP%_%n.%n.%d.%n

Finalment, per tal que els patrons puguin tamb identificar els carcters % i ?, els patrons reconeixeran la combinaci %% i %? com un nic valor que haur de correspondre's amb el carcters % i ? respectivament. s a dir que el patr %n%%%? hauria d'identificar frases com 25%? .

EL programa mostrar per pantalla el segent men d'opcions:**MEN**a. Comena com patrb. Acaba com patrc. Cont un patrd. Coincideix amb un patrs. Sortir

Escolliu una opci:

El programa espera que l'usuari esculli una opci sense distingir entre majscules o minscules.Si la opci es la a, far el segent:Es mostrar per pantalla que la opci escollida s un programa que comprovar l'inici d'una frase amb un patr

Demanar per teclat a l'usuari que introdueixi una frase qualsevol. Cal verificar que la cadena introduda per l'usuari no estigui buida.

Tamb demanar a l'usuari que introdueixi un patr. No caldr fer cap comprovaci.

El programa comparar l'inici de la frase introduda amb el patr, d'acord amb la seqncia de carcters i comodins i sentenciar si la frase comena o no com el patr.

Es mostrar per pantalla la frase, el patr i s'indicar si comena o no com aquest.

Seguidament, s'indicar a l'usuari que premi la tecla Entrar per tornar al men principal.

Si la opci es la b, far el segent:Es mostrar per pantalla que la opci escollida s un programa que comprovar el final d'una frase amb un patr.

Demanar per teclat a l'usuari que introdueixi una frase qualsevol. Cal verificar que la cadena introduda per l'usuari no estigui buida.

Tamb demanar que l'usuari introdueixi un patr. No caldr fer cap comprovaci.

El programa comparar el final de la frase introduda d'acord amb el patr entrat comprovant si la seqncia de carcters i comodins es corresponen amb el final de la frase.

Es mostrar per pantalla la frase, el patr i s'indicar si acaba o no com aquest.

Seguidament, s'indicar a l'usuari que premi la tecla Entrar per tornar al men principal.

Si la opci es la c, far el segent:Es mostrar per pantalla que la opci escollida s un programa que comprovar el contingut d'una frase amb un patr.

Demanar per teclat a l'usuari que introdueixi una frase qualsevol. Cal verificar que la cadena introduda per l'usuari no estigui buida.

Tamb demanar la introducci d'un patr. No caldr fer cap comprovaci.

El programa verificar si la frase introduda cont a partir d'alguna posici vlida, una seqncia de carcters compatible amb el patr entrat.

Es mostrar per pantalla la frase, el patr i s'indicar si el cont o no.

Seguidament, s'indicar a l'usuari que premi la tecla Entrar per tornar al men principal.

Si la opci es la d, far el segent:Es mostrar per pantalla que la opci escollida s un programa que comprovar la coincidncia exacta d'una frase amb un patr.

Demanar per teclat a l'usuari que introdueixi una frase qualsevol. Cal verificar que la cadena introduda per l'usuari no estigui buida.

Tamb demanar que l'usuari introdueixi un patr. No caldr fer cap comprovaci.

El programa verificar si la frase introduda coincideix exactament, d'inici a fi amb el patr, tenint en compte, com en els casos anteriors, la tipologia dels carcters comod del patr.

Es mostrar per pantalla la frase, el patr i s'indicar si coincideixen o no.

Seguidament, s'indicar a l'usuari que premi la tecla Entrar per tornar al men principal.

Si s'escull la opci s, es demanar a l'usuari que confirmi si desitja realment sortir i en cas afirmatiu se sortir de l'aplicaci. En cas negatiu es tornar de nou al men inicial.

Cal tenir en compte que:Heu de resoldre l'exercici aplicant disseny descendent. Les solucions monoltiques no es tindran en compte.

S'han de realitzar comentaris en els fragments de codi que ho requereixin per motiu de claredat.

Sempre que sigui possible, cal usar parmetres d'entrada i sortida per tractar totes les dades. Cal evitar les variables globals. Podreu fer per, una excepci amb la variable Scanner per aconseguir inicialitzar-la amb seqencies de prova.

Per aquest exercici, el fitxer .java que enviareu, s'anomenar Eac4_003.java

Formaci professionalNom i cognoms

Codi: I71Exercici d'avaluaci contnua 4Pgina de

Versi: 02225XM03B2_EAC4_Enunciat_1314S1Lliurament: 10/10/2013

Generalitat de Catalunya Departament dEnsenyamentInstitut Obert de CatalunyaNom i cognoms

Codi: I71Exercici d'avaluaci contnua 1Pgina de

Versi: 02225XM03B2_EAC4_Enunciat_1213S1

Lliurament: 12/10/2012