From 2e5f74ef35338d0b48e76e86bd159aae819c58a8 Mon Sep 17 00:00:00 2001 From: Jennifercarmen Date: Tue, 7 Nov 2017 12:57:35 -0500 Subject: [PATCH 1/2] =?UTF-8?q?Subiendo=20Soluc=C3=B3n=20valid-credit-card?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .eslintrc | 29 +++++++++++++++ README.md | 62 +++++++++++++-------------------- assets/docs/diagrama_flujo.jpg | Bin 0 -> 88664 bytes index.html | 8 +++++ js/app.js | 26 ++++++++++++++ 5 files changed, 87 insertions(+), 38 deletions(-) create mode 100644 .eslintrc create mode 100644 assets/docs/diagrama_flujo.jpg create mode 100644 index.html create mode 100644 js/app.js diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..fbb5dc3 --- /dev/null +++ b/.eslintrc @@ -0,0 +1,29 @@ +{ + "parserOptions": { + "ecmaVersion": 6 + }, + "rules": { + "keyword-spacing": 1, + "space-before-function-paren": [1, "never"], + "eqeqeq": 1, + "space-infix-ops": 1, + "comma-spacing": 1, + "brace-style": 1, + "no-multiple-empty-lines": 1, + "camelcase": 1, + "func-call-spacing": 1, + "key-spacing": 1, + "semi": 1, + "no-floating-decimal": 1, + "no-multi-spaces": 1, + "object-property-newline": 1, + "padded-blocks": [1, "never"], + "space-before-blocks": 1, + "space-in-parens": 1, + "spaced-comment": 1, + "quotes": [1, "single"], + "id-length": [1, { "exceptions": ["i", "j", "x"] }], + "indent": [1, 2], + "no-array-constructor": 1 + } +} diff --git a/README.md b/README.md index b5bbef1..6469d12 100644 --- a/README.md +++ b/README.md @@ -1,38 +1,24 @@ -# Tarjeta de crédito válida - -Crea una web que pida, por medio de un `prompt()`, el número de una tarjeta de -crédito y confirme su validez según el [algoritmo de Luhn](https://es.wikipedia.org/wiki/Algoritmo_de_Luhn). -Lee este blog que explica [cómo funciona el algoritmo de Luhn](http://www.quobit.mx/asi-funciona-el-algoritmo-de-luhn-para-generar-numeros-de-tarjetas-de-credito.html). - -## Entregables - -Para cada producto debes entregar **un repositorio de GitHub** que -contenga: -1. Archivo `README.md` que explique el **pseudocódigo** de tu solución y su -**diagrama de flujo** -2. Archivo `app.js` con el **código** de tu solución -3. Archivo `index.html` vinculado con tu `app.js` - -## Tips - -A continuación un video de Michelle que te lleva a través del algoritmo de -Luhn y te da tips para completar este proyecto: - -[![tips credit card](https://img.youtube.com/vi/f0zL6Ot9y_w/0.jpg)](https://www.youtube.com/watch?v=f0zL6Ot9y_w) - -## Consideraciones específicas - -1. Tu código debe estar compuesto por 1 función: `isValidCard` -2. El usuario no debe poder ingresar un campo vacío - -## Criterios de evaluación - -Se tomarán en cuenta las siguientes consideraciones a la hora de evaluar tu solución: - -1. Nombramiento de variables -2. Indentación -3. Validación de input: el usuario no debe poder ingresar un campo vacío o de tipo que no corresponda -4. Estructura de tus archivos -5. Archivo `README.md` correctamente redactado -6. Uso de comentarios para hacer tu código más legible -7. Que el programa cumpla con el propósito requerido +* # Pseudocodigo isValidCard +* function isValidCard(cardNumber) + * Repetir + * mensajecardNumber = 'Ingrese el número de la tarjeta de crédito a validar'; + * hasta ((cardNumber.length) <= 0); + * reverseCardNumber = cardNumber.split('').reverse().map(Number); + * Leer sumArrayElements = '' + * Leer message = ''; + * Para ( i = 1; i < reverseCardNumber.length; i = i + 2) + * reverseCardNumber[i] = reverseCardNumber[i] * 2; + * if (reverseCardNumber[i] >= 10) entonces + * separatedDigits = reverseCardNumber[i].toString().split('').map(Number); + * reverseCardNumber[i] = (separatedDigits[0] + * separatedDigits[1]); + * fin si + Leer sumArrayElements += reverseCardNumber[i]; + * Fin para + * si (sumArrayElements % 10 === 0) entonces + * escribir message = 'valido' + * si no + * escribir message = 'invalido'; + * mostrar message; +* Fin funcion +# Diagrama de Flujo +![diagrama_flujo](assets/docs/diagrama_flujo.jpg) diff --git a/assets/docs/diagrama_flujo.jpg b/assets/docs/diagrama_flujo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..82999e492a2002e1e7f7d8a4f1742887167a9081 GIT binary patch literal 88664 zcmdSB2UL^Iw>KID1VlQ5(xMa@Z%B!utrJ?A_3tn+%-{hxd9dcSp_Fl%KE$z=A-o?U)>@7WyQ zq(a0`n_HPfczAdqSHTx#lLk>XL;GBZKx}Lv2OtoLAoxE?2ru}K2YmhYY>q-qAzOHO ze*gXZ!^_Y6``OCJ$ICCURY2f(6BH5_5)|AfC?K#+WZO33?cgIIBq}DdUG(?+--G=A z`tNUnf7=BG1b=_xfA(yCgh&YTJ=tQw%cBh0BEiEe!Lvz%K*724gB1NH>faxpExdgE zTfr%969zv}B@RxXmv;*|S$;k~@YCVo{~>%5{E~ZgPi&Pse@#I7ru3nEDY=3wC(9al zTGjj_|tJ4=RUA|&x@8Ia};d$N5 z+s8LBDEM{=IyCHlRCG*iTzo=m+N1Q0%*Ri%UgYH$6c)WKepOykSyf&0?tN`jGpVJu z?Nj^b-oE~U!J*+1GL1g*eR67g=Ep2^X?f)rYZX{q|4kPUg!kXb`VY$f3tbW*U0c9C z;1l>w7tfXuu<=Up@$b>yDtY3(z_puF%7^X=N}o*0Eo&4~IedY!!|hhjHW^htni}&r zX@61nuMrmc|A?~xAngC5iwxP$%L8s6uLJ}R+2FiL*bn(v8zCK|!DwycZd04U?Ltz- zP5NGObQnc(zo0@uV3YEceU$R94SCzSO~@uBX4P^N@;wafB>tz)<-a=DwGV0I8?G z!7e32$xhsMy9D@3PcY*6IUY0Vf3_jun~+95a9hVP7Ml=HJ35?OxIQ1w^XGm@_+Jye z9PG5x8`P2bo>%X7ncf@OVu;7Y((B9F^h5`J==NC|M(K}It%79TrvYyHJe?3UrKt

rK-8i#yLKM%_EE#AH;k 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 literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 0000000..ccde47f --- /dev/null +++ b/index.html @@ -0,0 +1,8 @@ + + + Validando Tarjeta de credito + + + + + diff --git a/js/app.js b/js/app.js new file mode 100644 index 0000000..ae29544 --- /dev/null +++ b/js/app.js @@ -0,0 +1,26 @@ +// valida tarjeta de credito +function isValidCard(cardNumber) { + // validar que el usuario ingrese el numero de tarjeta + do { + var cardNumber = prompt('Ingrese el número de la tarjeta de crédito a validar'); + // Agregamos los numeros de la tarjeta a un array en orden inverso y convertimos a cada elemento en tipo numerico + } while ((cardNumber.length) <= 0);var reverseCardNumber = cardNumber.split('').reverse().map(Number); + var sumArrayElements = '' + var message = ''; + // buscar cada elemento par del array y multiplicar por 2 + for (var i = 1; i < reverseCardNumber.length; i = i + 2) { + reverseCardNumber[i] = reverseCardNumber[i] * 2; + if (reverseCardNumber[i] >= 10) { + // convierte el numero en string, se separa los digitos del numero y convierte en numericos + var separatedDigits = reverseCardNumber[i].toString().split('').map(Number); + // suma los dos digitos del elemento separado en dos cifras + reverseCardNumber[i] = (separatedDigits[0] + separatedDigits[1]); + } + // obtiene la suma total del array + sumArrayElements += reverseCardNumber[i]; + } + // devuelve mensaje al usuario + (sumArrayElements % 10 === 0) ? message = 'valido' : message = 'invalido'; + return message; +} +isValidCard(); From 91128d36c74a287a9fabc7cd5d5004be65b29b2f Mon Sep 17 00:00:00 2001 From: Jennifercarmen Date: Mon, 13 Nov 2017 12:15:45 -0500 Subject: [PATCH 2/2] =?UTF-8?q?corrigiendo=20identaci=C3=B3n,readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 +++- js/app.js | 13 +++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 6469d12..9496e2b 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -* # Pseudocodigo isValidCard + # Pseudocodigo isValidCard * function isValidCard(cardNumber) * Repetir * mensajecardNumber = 'Ingrese el número de la tarjeta de crédito a validar'; @@ -22,3 +22,5 @@ * Fin funcion # Diagrama de Flujo ![diagrama_flujo](assets/docs/diagrama_flujo.jpg) +## webSite +* Puede ver el [Proyecto en vivo](https://jennifercarmen.github.io/valid-credit-card/) \ No newline at end of file diff --git a/js/app.js b/js/app.js index ae29544..1732c09 100644 --- a/js/app.js +++ b/js/app.js @@ -1,11 +1,11 @@ -// valida tarjeta de credito +// Funcion valida tarjeta de credito function isValidCard(cardNumber) { // validar que el usuario ingrese el numero de tarjeta do { - var cardNumber = prompt('Ingrese el número de la tarjeta de crédito a validar'); + var cardNumber = prompt('Ingrese el numero de la tarjeta de credito a validar(13Digitos)'); // Agregamos los numeros de la tarjeta a un array en orden inverso y convertimos a cada elemento en tipo numerico - } while ((cardNumber.length) <= 0);var reverseCardNumber = cardNumber.split('').reverse().map(Number); - var sumArrayElements = '' + } while ((cardNumber.length <= 12 || cardNumber.length >= 14));var reverseCardNumber = cardNumber.split('').reverse().map(Number); + var sumArrayElements = ''; var message = ''; // buscar cada elemento par del array y multiplicar por 2 for (var i = 1; i < reverseCardNumber.length; i = i + 2) { @@ -20,7 +20,8 @@ function isValidCard(cardNumber) { sumArrayElements += reverseCardNumber[i]; } // devuelve mensaje al usuario - (sumArrayElements % 10 === 0) ? message = 'valido' : message = 'invalido'; - return message; + (sumArrayElements % 10 === 0) ? message = 'El numero de tarjeta es valido' : message = 'El numero de tarjeta es invalido'; + return alert(message); } +// llama a la funcion isValidCard();