Cantidades de registros de forma totalmente aleatoria
IMPORT JAVA.UTIL.*;
//PRIMERO CREAMOS UNA CLASE AQUI ESTARA
TODA LA LOGICA DEL PROGRAMA
Public Class MILLION
{
//ARREGLO DE STRING QUE CONTENDRA TODOS LOS CODIGOS DE AREA
Private String[] CODAREA;
//ARREGLO DE STRING QUE CONTENDRA TODAS LAS VOCALES
Private String[] VOCALES;
// ARREGLO DE STRING QUE CONTENDRA TODAS LAS CONSONANTES
Private String[] CONSONANTES;
//OBJETO DE TIPO ARCHIVE QUE ME PERMITIRA LA ESCRITURA DE LOS REGISTROS EN
UN ARCHIVE .DOC
Private ARCHIVO ARCHIVOS;
// UN NOMBRE ESTA CONFORMADO POR
UNA VOCAL SEGUIDA DE UNA CONSONANTE O VISEVERSA ENTONCES QUIERO QUE MI NOMBRE
SEA DE DE LONGITUDE 6 ENTONCES SERAN 3 VOCALES Y 3 CONSONANTES DANDO LA
SIMULACION DE UN NOMBRE
Private RANDOM RVOCALES1;
Private RANDOM RVOCALES2;
Private RANDOM RCONSONANTES1;
Private RANDOM RCONSONANTES2;
Private RANDOM RCONSONANTES3;
Private RANDOM RVOCALES3;
//ESTE RANDOM SE ENCARGARA DE DARME CODIGOS DE AREAS DE MI ARREGLO DE
CODIGOS DE AREAS DE FORMA ALEATORIA CLARO ESTA
Private RANDOM RCODIGOAREA;
//DONDE EL 829 ES EL CÓDIGO DE ÁREA Y
LOS NÚMEROS RESTANTES SI SE FIJAN LÓGICAMENTE HABLANDO SIN LOS SEPARADORES “-” VAN DESDE 1 000 000
HASTA 9 999 999 ÓSEA TIENE UNA LONGITUD DE 7 SIN CONTAR LOS SEPARADORES
Private RANDOM RNUMTEL;
Private RANDOM RMINUTOS;
// EN EL CONSTRUCTOR SE HARAN TODAS LAS
RESPECTIVAS INSTANCIAS E ASIGNACIONES SE HACE ESTO PORQUE RECUERDEN QUE EL
CONSTRUCTOR ES LO PRIMERO QUE SE EJECUTA EN UNA APLICACION..
Public MILLION()
{
// EL ARREGLO DE STRING CONSTARA CON 3 CÓDIGOS DE ÁREA QUE SON LO QUE EXISTEN EN MI PAÍS
REPÚBLICA DOMINICANA
THIS.CODAREA=New STRING[]{"809","829","849"};
// ARREGLO DE VOCALES
THIS.VOCALES=New STRING[]{"A","E","I","O","U"};
// ARREGLO DE CONSONANTES
THIS.CONSONANTES=New STRING[]{"B","C","D","F","G","H","J","K","L","M","N","P","Q","R","S","T","V","W","X", "Y","Z"};
}
//METODO MAESTRO LOL
Public VOID RUN()
{
// INSTANCIAMOS EL OBJETO DE TIPO ARCHIVO
THIS.ARCHIVOS=New ARCHIVO();
// ESTAS SON LAS VOCALS QUE ALOJARAN LOS DETERMINADOS INDICES ALEATORIOS
DE LAS CONSONANTS Y LAS VOCALS DE NUESTRO ARREGLO DE VOCALS Y CONSONANTS DONDE
V=VOCALES
Y C = CONSONANTE COMO EL NOMBRE SERÁ DE
LONGITUD 6 NECESITAMOS 3 DE CADA VARIABLES
INT
V1 = 0, C1 = 0, V2 = 0, C2 = 0, V3 = 0, C3 = 0;
String NOMBRE;
String NUMTEL;
String STRNUM;
String COMPLETETEL;
String SALIDA;
INT CODAREA;
INT TEL;
INT TOTALMIN;
INT MONTO;
Long MONTOTOTAL = 0;
// ESTE ES EL BUCLE
QUE ME ITERARA POR
CANTIDADES DE VECES ESO SIGNIFICARA QUE POR CADA POR CANTIDADES DE
INTERACCIONES ME GENERARA POR CANTIDADES DE REGISTROS
For (Long
X= 0;X<=50;X++)
{
THIS.RCONSONANTES1=New RANDOM();
THIS.RVOCALES1=New RANDOM();
THIS.RCONSONANTES2=New RANDOM();
THIS.RVOCALES2=New RANDOM();
THIS.RCONSONANTES3=New RANDOM();
THIS.RVOCALES3=New RANDOM();
THIS.RNUMTEL=New RANDOM();
THIS.RCODIGOAREA=New RANDOM();
THIS.RMINUTOS=New RANDOM();
C1=THIS.RCONSONANTES1.NEXTINT(20);
V1=THIS.RVOCALES1.NEXTINT(4);
V2=THIS.RVOCALES2.NEXTINT(4);
C2=THIS.RCONSONANTES2.NEXTINT(20);
V3=THIS.RVOCALES3.NEXTINT(4);
C3=THIS.RCONSONANTES3.NEXTINT(20);
CODAREA=THIS.RCODIGOAREA.NEXTINT(3);
TEL =
THIS.RNUMTEL.NEXTINT(9999999-1000000+1)+1000000;
TOTALMIN=THIS.RMINUTOS.NEXTINT(4000);
NOMBRE=THIS.CONSONANTES[C1]+THIS.VOCALES[V1]+THIS.CONSONANTES[C2]+THIS.VOCALES[V2]+THIS.CONSONANTES[C3]+THIS.VOCALES[V3];
MONTO=TOTALMIN*4;
MONTOTOTAL+=MONTO;
STRNUM=STRING.VALUEOF(TEL);
COMPLETETEL="("+THIS.CODAREA[CODAREA]+")"+"-"+STRNUM.SUBSTRING(0,3)+"-"+STRNUM.SUBSTRING(3);
SALIDA=NOMBRE+" "+COMPLETETEL+" "+TOTALMIN+"
"+"$"+MONTO+".00 PESOS";
//SYSTEM.OUT.PRINTLN(SALIDA+"\R\N");
ARCHIVOS.ADD("REGISTROS.DOC", SALIDA+"\T\T\N");
}
ARCHIVOS.ADD("REGISTROS.DOC", "\T TOTAL
GENERADO $"+MONTOTOTAL+".00 PESOS");
}
}
PARA LA CLASE ENCARGADA DE ESCRITURA DE
ARCHIVOS(ARCHIVO)
// IMPORTAMOS LAS CLASES NECESARIAS
PARA LA MANIPULACIÓN DE ARCHIVOS
IMPORT
JAVA.IO.FILE;
IMPORT
JAVA.IO.FILEWRITER;
IMPORT
JAVA.IO.*;
IMPORT
JAVA.IO.IOEXCEPTION;
Public Class ARCHIVO
{
//CREAMOS UN MÉTODO DONDE EL PRIMER PARÁMETRO SERÁ EL NOMBRE Y LA
EXTENSIÓN DEL ARCHIVE Y EL SEGUNDO PARÁMETRO SERA EL DATO QUE ESTARÁ EN EL
ARCHIVO
Public
VOID ADD(String
FILENAME,String
TEXT)
{
//CREAMOS UN OBJETO DE TIPO FILE QUE SERA NUESTRO ARCHIVO
FILE ARCHIVO;
// ESTE OBJETO SE ENCARGA DE ESCRIBIR EN EL ARCHIVO
FILEWRITER
ESCRITOR;
Try
{
ARCHIVO = New FILE(FILENAME);
ESCRITOR = New FILEWRITER(ARCHIVO,TRUE);
//OJO, JAVA ANTES DE DAR DE ARTA A UN ARCHIVE
LO GUARDA EN LA MEMORIA RAM PARA ESO ESTA ESTE MÉTODO OSEA EN ESTE PASO EL
ARCHIVO EXISTE PERO SOLO COMO BYTES DE INFORMACION
JAVA.IO.BUFFEREDWRITER
BUFFER =New
JAVA.IO.BUFFEREDWRITER(ESCRITOR);
// ESTE OBJETO ES EL QUE DIGAMOS VUELVE
FISICO NUESTRO ARCHIVE OSEA LO SACA DE MEMORIA Y LO GUARDA EN EL DISCO DURO
JAVA.IO.PRINTWRITER
SALIDA = New
JAVA.IO.PRINTWRITER(BUFFER);
// YA CON EL ARCHIVE EN EL DISCO DURO
PODEMOS ESCRIBIR SOBRE EL PARA ESO SE USA EL METODO WRITE
SALIDA.WRITE(TEXT+"\N");
//OJO CUANDO SE TERMINE DE USAR LOS
OBJETOS SE DEBEN CERRAR PARA QUE NO SIGAN ESTORBANDO EN MEMORIA
SALIDA.CLOSE();
BUFFER.CLOSE();
}
Catch(IOEXCEPTION EX)
{
SYSTEM.OUT.PRINTLN(EX.GETMESSAGE());
}
}
//
OJO: TODO ESTO DEBE IR EN UN Try Catch YA QUE ES MUY PROPENSO A QUE LANCE
EXCEPCIONES
PARA VER EL
RESULTADO CREAMOS UN MÉTODO MAIN E
INSTANCIAMOS
MILLION X = New MILLION();
X.RUN();
RESULTADO(RECUERDEN QUE EL ARCHIVO
ESTARÁ EN SU CARPETA BIN DEL PROYECTO )
EJEMPLO DE UNA EJECUCIÓN DE 150
REGISTROS ALEATORIOS
DONDE: NOMBRE: TELÉFONO: MINUTOS CONSUMIDOS:Y MONTO A PAGAR DONDE CADA MIN SON 4 PESOS
KARADA
(809)-922-5654 2335 $9340.00 PESOS
TOGOPE
(809)-920-5396 2981 $11924.00 PESOS
FOSINI
(829)-200-8124 2124 $8496.00 PESOS
TIWAQO
(849)-663-4047 3000 $12000.00 PESOS
PODAHI
(809)-820-8683 2121 $8484.00 PESOS
WONORE
(809)-472-6120 202 $808.00 PESOS
BECOXE
(829)-867-8706 3524 $14096.00 PESOS
DOCABA
(809)-819-6933 2382 $9528.00 PESOS
CIVOME
(809)-489-5409 1211 $4844.00 PESOS
HIQILO
(809)-480-5772 1583 $6332.00 PESOS
XIWETA
(809)-945-9393 2630 $10520.00 PESOS
GOBAJO
(849)-299-8389 1273 $5092.00 PESOS
SEXIKE
(809)-952-0334 3704 $14816.00 PESOS
YOJOLI
(809)-703-1681 2798 $11192.00 PESOS
MOXOGI
(849)-615-6160 255 $1020.00 PESOS
HAXAGE
(829)-609-0197 1369 $5476.00 PESOS
LAJERA
(849)-648-1047 3758 $15032.00 PESOS
TARERA
(829)-353-5711 1925 $7700.00 PESOS
ROJONI
(809)-172-4755 590 $2360.00 PESOS
YINOWA
(829)-667-5843 3479 $13916.00 PESOS
HACIFI
(809)-209-8132 2174 $8696.00 PESOS
CITIVO
(809)-401-5597 130 $520.00 PESOS
BEXOLE
(829)-670-4002 2916 $11664.00 PESOS
TOMEWE
(829)-115-4275 1135 $4540.00 PESOS
VEJESI
(809)-508-6023 1873 $7492.00 PESOS
FIFIMI
(809)-525-8756 1976 $7904.00 PESOS
PAPOQE
(829)-670-6937 2545 $10180.00 PESOS
JIMOTE
(829)-143-3462 2448 $9792.00 PESOS
MIHETE
(829)-903-7065 115 $460.00 PESOS
VEWOGA
(849)-634-8952 1046 $4184.00 PESOS
PIHICI
(849)-771-6457 3137 $12548.00 PESOS
HEYEJI
(829)-239-8149 3723 $14892.00 PESOS
PETAGA
(829)-813-9095 1371 $5484.00 PESOS
POQISE
(809)-852-8242 1636 $6544.00 PESOS
SALAXE
(849)-387-1236 3783 $15132.00 PESOS
HESEYO
(809)-580-0379 3067 $12268.00 PESOS
TAMEXA
(809)-371-8548 1339 $5356.00 PESOS
VOVOLA
(829)-654-0091 2008 $8032.00 PESOS
FODEXE
(829)-668-7743 27 $108.00 PESOS
GATIBO
(829)-788-5822 2182 $8728.00 PESOS
YEBIQA
(849)-715-7111 2993 $11972.00 PESOS
PEKOQO
(849)-496-7574 1243 $4972.00 PESOS
XEWAHO
(829)-591-0022 3109 $12436.00 PESOS
HIGAMI
(829)-143-6505 2745 $10980.00 PESOS
TONIKA
(849)-978-5956 3246 $12984.00 PESOS
RAPAJO
(849)-571-9183 2848 $11392.00 PESOS
YONEYO
(829)-205-9376 2199 $8796.00 PESOS
VELALO
(829)-194-0916 1244 $4976.00 PESOS
SIPOVE
(809)-798-4154 2022 $8088.00 PESOS
YEVAHA
(829)-408-5556 2743 $10972.00 PESOS
GEFOQO
(809)-146-3156 943 $3772.00 PESOS
TAHATI
(809)-828-9864 1339 $5356.00 PESOS
KOCEDA
(809)-244-6892 2984 $11936.00 PESOS
POHECA
(829)-168-3066 2319 $9276.00 PESOS
BANOGE
(849)-426-6238 178 $712.00 PESOS
WOHAGE
(809)-397-1773 3481 $13924.00 PESOS
BOBEME
(829)-355-8050 1463 $5852.00 PESOS
YAFEJA
(829)-526-1916 577 $2308.00 PESOS
GIRAQI
(809)-403-8883 2611 $10444.00 PESOS
YIKIYI
(849)-274-6552 3976 $15904.00 PESOS
DIBEDA
(849)-718-3787 2487 $9948.00 PESOS
DOCIDI
(849)-993-2079 1203 $4812.00 PESOS
CITATE
(829)-979-3183 3660 $14640.00 PESOS
PIMIDA
(809)-145-8758 335 $1340.00 PESOS
JIXOQO
(809)-954-5851 712 $2848.00 PESOS
LESAME
(849)-576-0355 999 $3996.00 PESOS
SOJIXO
(809)-213-0809 3861 $15444.00 PESOS
FAQACO
(829)-728-5702 1698 $6792.00 PESOS
MICIME
(829)-486-4178 2956 $11824.00 PESOS
SAQIHI
(829)-480-4377 2244 $8976.00 PESOS
BEJILE
(809)-420-0992 1401 $5604.00 PESOS
QIYEWI
(809)-229-2520 844 $3376.00 PESOS
CABOBO
(849)-340-5318 1708 $6832.00 PESOS
GEYIVI
(829)-107-8284 1555 $6220.00 PESOS
KAQANE
(809)-291-3043 3923 $15692.00 PESOS
GAWIJE
(849)-886-8810 83 $332.00 PESOS
VETOMI
(829)-461-4492 71 $284.00 PESOS
SOFAJE
(849)-951-6404 1192 $4768.00 PESOS
QOVAMO
(809)-872-2390 3915 $15660.00 PESOS
KAPIHA
(829)-725-9732 1297 $5188.00 PESOS
DANAJI
(809)-312-9321 2665 $10660.00 PESOS
GECAGA
(809)-473-1044 2110 $8440.00 PESOS
VAYOCO
(849)-111-9512 1609 $6436.00 PESOS
KIYEKA
(809)-253-8178 475 $1900.00 PESOS
YEWOVA
(829)-270-5978 1043 $4172.00 PESOS
MOKAXO
(829)-164-3592 1389 $5556.00 PESOS
FAFIRA
(849)-742-4914 1950 $7800.00 PESOS
POSOCA
(829)-939-6994 263 $1052.00 PESOS
SOXETA
(809)-219-4415 355 $1420.00 PESOS
MALEFA
(829)-541-0843 152 $608.00 PESOS
QEWOCE
(829)-187-5368 2649 $10596.00 PESOS
JIPANO
(849)-956-9514 822 $3288.00 PESOS
POLEHI
(809)-619-4298 2026 $8104.00 PESOS
TOKATI
(849)-946-5067 2477 $9908.00 PESOS
MILIYE
(809)-990-5854 913 $3652.00 PESOS
BOBEQO
(849)-563-4565 3949 $15796.00 PESOS
KIYARO
(829)-260-0923 2677 $10708.00 PESOS
WORIKI
(809)-472-3549 270 $1080.00 PESOS
JAQAPI
(829)-722-1239 3104 $12416.00 PESOS
PEGIGI
(849)-180-8745 3268 $13072.00 PESOS
REGOYO
(809)-341-0158 2805 $11220.00 PESOS
LOXOBI
(849)-770-1876 3352 $13408.00 PESOS
DOGESE
(809)-614-4683 1673 $6692.00 PESOS
YEVAWO
(829)-417-4637 2053 $8212.00 PESOS
CECADE
(809)-934-4049 3217 $12868.00 PESOS
LIWONE
(829)-188-2098 2078 $8312.00 PESOS
KIRICI
(809)-841-7647 384 $1536.00 PESOS
PAFIRI
(809)-623-3965 2385 $9540.00 PESOS
XOVIRE
(829)-261-7037 1791 $7164.00 PESOS
TEFIJE
(809)-419-0885 2302 $9208.00 PESOS
CAQITA
(829)-876-8598 947 $3788.00 PESOS
LEDOMA
(829)-370-3276 2318 $9272.00 PESOS
KEHEGA
(829)-854-3563 3009 $12036.00 PESOS
KAJAXI
(829)-325-4688 2583 $10332.00 PESOS
YAVEFO
(849)-824-8075 910 $3640.00 PESOS
BOKISO
(829)-900-2528 2823 $11292.00 PESOS
TIHIGE
(829)-933-2801 928 $3712.00 PESOS
QIFIKI
(849)-562-2336 3965 $15860.00 PESOS
RAJIXA
(849)-863-4847 699 $2796.00 PESOS
YIWIBE
(849)-894-5482 1393 $5572.00 PESOS
WADETA
(809)-565-6731 874 $3496.00 PESOS
KOGEBO
(829)-790-0778 69 $276.00 PESOS
JEVAVO
(849)-480-8471 3121 $12484.00 PESOS
GIDIFA
(829)-338-5529 2425 $9700.00 PESOS
DAKOSE
(809)-268-5633 1077 $4308.00 PESOS
GEGENA
(849)-210-1984 2132 $8528.00 PESOS
WIXECE
(849)-875-5282 2414 $9656.00 PESOS
BOPILE
(829)-424-5014 1490 $5960.00 PESOS
TEHOCE
(829)-414-6430 755 $3020.00 PESOS
CEMOCE
(809)-756-4271 1788 $7152.00 PESOS
PAFAJI
(809)-861-4174 2690 $10760.00 PESOS
YOJACE
(809)-165-1122 2143 $8572.00 PESOS
NIBEBA
(849)-394-7602 3501 $14004.00 PESOS
JENALI
(849)-515-6620 1632 $6528.00 PESOS
TEQIJE
(809)-233-0177 1555 $6220.00 PESOS
FOBAKI
(849)-462-1336 2967 $11868.00 PESOS
MIVODO
(829)-466-7318 1067 $4268.00 PESOS
QIREPA
(809)-845-0177 2391 $9564.00 PESOS
CILOXO
(849)-821-5558 634 $2536.00 PESOS
RISEHO
(849)-989-6515 3719 $14876.00 PESOS
FITITA
(829)-701-6037 2798 $11192.00 PESOS
NOCIPI
(809)-664-5127 1254 $5016.00 PESOS
RIBISI
(849)-217-6242 791 $3164.00 PESOS
WIKOSO
(849)-453-8583 2102 $8408.00 PESOS
NIKEYI
(849)-603-1212 29 $116.00 PESOS
TOQAHO
(809)-509-2044 625 $2500.00 PESOS
LADICO
(849)-292-3535 2698 $10792.00 PESOS
WOXOPI
(829)-645-6887 3823 $15292.00 PESOS
JEJEGO
(849)-238-7256 3864 $15456.00 PESOS
SACOWO
(849)-636-0661 2906 $11624.00 PESOS
TONOPE
(829)-980-3877 1622 $6488.00 PESOS
TOTAL GENERADO $1196076.00 PESOS
No hay comentarios:
Publicar un comentario