-
Notifications
You must be signed in to change notification settings - Fork 17
/
tarjetaCredito.h
104 lines (77 loc) · 2.68 KB
/
tarjetaCredito.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
/*
* ----------------------------------
* Autor: Ruben Rodriguez Esteban ---
* Fecha: 1-4-19 --------------------
* ----------------------------------
*/
#ifndef TARJETACREDITO_H
#define TARJETACREDITO_H
#include <iostream>
#include <cstring>
#include <iomanip>
#include <cstdlib>
#include <ctime>
#include <fstream>
#include <iterator>
#include <conio.h>
#include "operaciones.h"
#include "Arbol.h"
/*
* Fichero de implemetacion del modulo Tarjeta credito
*/
using namespace std;
// constantes del modulo
const int BASE = 10;
const int MAX_DIGITOS_TARJETA = 16;
/*
* Pre: <<tarjeta>> es una cadena de caracteres que identifica una
* posible tarjeta de credito autentica
* Post: Ha devuelto <<true>> si y solo si la tarjeta de credito <<tarjeta>> es
* una tarjeta de credito valida. En caso contrario ha devuelto <<false>>
*/
bool esTarjetaValida(string tarjeta);
/*
* Pre: <<codTarjeta>> es el codigo de una tarjeta
* Post: Ha devuelto una tarjeta de credito valida de acuerdo
* con el codigo de tarjeta <<codTarjeta>>
*/
string generarTarjeta(int codTarjeta);
/*
* Pre: ----
* Post: Ha guardadado en <<tarjeta>> una secuencia de MAX_DIGITOS_TARJETA
* caracteres para crear una tarjeta de credito
*/
void introducirTarjetaCredito(string& tarjeta);
/*
* Pre: <<tarjeta>> es una secuencia de caracteres que conforma una
* tarjeta de credito
* Post: Ha mostrado por pantalla la tarjeta de credito <<tarjeta>>
*/
void mostrarTarjetaCredito(string tarjeta);
/*
* Pre: <<fichero>> es un fichero de texto que alamcena a razon de una por linea
* una secuencia de tarjetas de credito
* Post: Ha escrito en pantalla un listado con todas las tarjetas de credito almacenadas
* en el fichero <<fichero>> de acuerdo con el formato que se muestra en el
* siguiente ejemplo
*
* LISTADO DE TARJETAS DE CREDITO
*
* Posicion Tarjeta Resultado
* --------- ---------------- -----------
* 1 1066654591158236 valida
* 2 1527614232216853 valida
* 3 1740948824551710 invalida
* 4 4113874277931980 invalida
* 5 4575826696910186 valida
* 6 7618927954312339 valida
* 7 7974791042538695 valida
*/
void analizarTarjetasFichero(const char fichero[]);
/*
* Pre: <<n>> es un entero positivo que indica el numero de tarjetas a generar yç
* <<tipo>> indica el tipo de tarjeta que se va a crear
* Post: Ha almacenado en el arbol binario <<a>> todas las tarjetas generadas
*/
void generarTarjetasValidas(const int n, const int tipo, Arbol& a);
#endif