Implementació problema Rellotge

Disseny previ

Per solucionar el problema del rellotge que ens doni les hores altes varem pensar una possible algoritme.

Primer varem veure que: Cada posició ha d’agafar un valor dels quatre donats, varem quedar que estaven dins una array, per exemple poden ser [1,3,4,2] o [0,0,0,9] o [5,4,3,2]…

posicio1posicio2posicio3posicio4
el major valor entre 0 i 2depen de la posicio1:
si (p1==2){
el major valor entre 0 i 2
}sino{
el major valor entre 0 i 9
}
el major valor entre 0 i 5el major valor entre 0 i 9
TAULA DE VALORS POSSIBLES

Algoritme

Una vegada sabem les condicions determinam el camí de les instrucions.

Els valors són agafats per ordre posicio1 després posicio2, posicio3 i posició4.

“Cada vegada que una posició agafa un valor el borrarà de la llista, així feim que un valor no pugui ser agafat dues vegades.”

l’algoritme principal queda com segueix:

var valorsEntrada=agafamValorsEntrada(); 
var p1= agafaValorMaxim(valorsEntrada,2);
var p2;
if (p1==2){p2=agafaValorMaxim(valorsEntrada,2);}
else {p2=agafaValorMaxim(valorsEntrada,9);}
p3=agafaValorMaxim(valorsEntrada,5);
p4=agafaValorMaxim(valorsEntrada,9);

Ens em de fixar que cream una funció a part anomenada agafaValorMaxim(array,maximPermes) ja que és una tasca repetitiva i ens permet reutilitzar un algoritme que sempre ha de fer el mateix. El definim:

function agafaValorMaxim(array,maximPermes){
//funció que agafarà el valor màxim d'una array on el valor màxim permés és maximPermes.

var valorMaxim=-1;
valorMaxim=cercarValorMaxim;//while de cerca;
return valorMaxim;
}

Què necessitam per implementar?

Una vegada ja tenim pensada l’estructura de dades i recorregut de l’algoritme hem de recercar quins són els elements que ens permetran implementar la solució que ens sigui beneficisosa i comprovable.

Interfície

Per una banda estudiarem l’interficie d’usuari, tant d’entrada com de sortida. Usam HTML com a implementador i usarem els formularis, botons i inputs.

https://www.w3schools.com/html/html_forms.asp

Estructura de dades.

Cada algoritme té una estructura de dades que permet emmagatzemar la informació.

Cada algoritme o funció usarà una estructura addient al seu propòsit.

En el nostre cas:

[a,b,c,d]———->[funcio]———->[p1,p2,p3,p4]

empram una array d’entrada i una array de sortida, dins l’algoritme emprarem variables numèriques i condicionals.

Miram els mètodes de manipulació dels arrays -> aquí

Implementació

See the Pen problema hora by PereAntoni (@pereantoni) on CodePen.

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>