Advertisement
Guest User

Untitled

a guest
Dec 14th, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.72 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <string.h>
  4. #include <windows.h>
  5. #include <math.h>
  6. #include <stdlib.h>
  7. #include <time.h>
  8. #define in "Inicio 1"
  9.  
  10. // Estructura para los Vehiculos
  11. struct vehiculo {
  12. int aho;
  13. char color[10];
  14. char marca[20];
  15. char matricula[30];
  16. char modelo[10];
  17. char combus[10];
  18. int precio;
  19. } // Datos de los Vehiculos
  20. vehiculo1 ={2013,"Blanco","Honda","G379280","CR-V","Gasolina",1500},
  21. vehiculo2 ={2016,"Negro","Audi","A796489","A3","Gasolina",3500},
  22. vehiculo3 ={2015,"Naranja","Hyundai","OP18569","K5","Gas",1200},
  23. vehiculo4 ={2018,"Negro","Lexus","LS59687","RX350","Gasolina",4200},
  24. vehiculo5 ={2016,"Rojo","Toyota","TY18968","RAV4","Gas",1900},
  25. vehiculo6 ={2000,"Gris","Toyota","TA47638","Glanza","Gasolina",1200},
  26. vehiculo7 ={2013,"Negro","Hyundai","HD12548","M16","Gas",1300},
  27. vehiculo8 ={2015,"Naranja","Hyundai","BU12587","N20","Gas",1000},
  28. vehiculo9 ={2005,"Gris","Lexus","MTB1586","Sport","Gasolina",1500},
  29. vehiculo10 ={2010,"Rojo","Volvo","VV15868","V40","Gas",1300};
  30.  
  31. int i;
  32. int conteo;
  33. //Estructura Para los Clientes
  34. struct cliente {
  35. char cedula[15];
  36. char nombre[20];
  37. char direccion[30];
  38. char telefono[10];
  39. int tiempo;
  40. } clientes[1];
  41.  
  42. //Funcion Para llenar Datos del Cliente
  43. void fcliente() {
  44. system("cls");
  45. cuadro();
  46. color(11);gotoxy (52,10); printf(" ::: MODULO REGISTRO CLIENTES :::");
  47.  
  48.  
  49.  
  50.  
  51. for(i=0; i<1;i++) {
  52. fflush(stdin);
  53. gotoxy(37,15); printf("Digite su Cedula: ",i+1, 164);
  54. scanf("%s",&clientes[i].cedula);
  55. gotoxy(37,16); printf("Digite su Nombre: ",i+1);
  56. scanf("%s",&clientes[i].nombre);
  57. gotoxy(37,17); printf("Digite su Direccion: ",i+1);
  58. scanf("%s",&clientes[i].direccion);
  59. gotoxy(37,18);printf("Digite su Telefono: ",i+1);
  60. scanf("%s",&clientes[i].telefono);
  61. gotoxy(37,19);printf("Digite el Tiempo a Durar con el Vehiculo: ",i+1);
  62. scanf("%i",&clientes[i].tiempo);
  63. printf("\n");
  64. gotoxy(37,21);printf("CLIENTE REGISTRADO CON EXITO....");
  65. conteo = i;
  66. Sleep(500);
  67. system("cls");
  68. cuadro();
  69. }
  70. }
  71. void mostrarclientes(){
  72. system("cls");
  73. for (i = 0 ; i < conteo ; i++ )
  74. {
  75. printf("\n| %s | %s |",clientes[i].cedula,clientes[i].nombre);
  76. printf("\n-------------------------------");
  77. }
  78. }
  79.  
  80. void mostrarcarros(){
  81.  
  82. system("cls");
  83. cuadro();
  84. gotoxy(37,13);printf("ANO - COLOR - MARCA - PLACA - MODELO - COMBUSTI - P/D ");
  85. gotoxy(37,15); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo1.aho,vehiculo1.color,vehiculo1.marca,vehiculo1.matricula,vehiculo1.modelo,vehiculo1.combus,vehiculo1.precio);
  86. gotoxy(37,16); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo2.aho,vehiculo2.color,vehiculo2.marca,vehiculo2.matricula,vehiculo2.modelo,vehiculo2.combus,vehiculo2.precio);
  87. gotoxy(37,17); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo3.aho,vehiculo3.color,vehiculo3.marca,vehiculo3.matricula,vehiculo3.modelo,vehiculo3.combus,vehiculo3.precio);
  88. gotoxy(37,18); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo4.aho,vehiculo4.color,vehiculo4.marca,vehiculo4.matricula,vehiculo4.modelo,vehiculo4.combus,vehiculo4.precio);
  89. gotoxy(37,19); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo5.aho,vehiculo5.color,vehiculo5.marca,vehiculo5.matricula,vehiculo5.modelo,vehiculo5.combus,vehiculo5.precio);
  90. gotoxy(37,20); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo6.aho,vehiculo6.color,vehiculo6.marca,vehiculo6.matricula,vehiculo6.modelo,vehiculo6.combus,vehiculo6.precio);
  91. gotoxy(37,21); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo7.aho,vehiculo7.color,vehiculo7.marca,vehiculo7.matricula,vehiculo7.modelo,vehiculo7.combus,vehiculo7.precio);
  92. gotoxy(37,22); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo8.aho,vehiculo8.color,vehiculo8.marca,vehiculo8.matricula,vehiculo8.modelo,vehiculo8.combus,vehiculo8.precio);
  93. gotoxy(37,23); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo9.aho,vehiculo9.color,vehiculo9.marca,vehiculo9.matricula,vehiculo9.modelo,vehiculo9.combus,vehiculo9.precio);
  94. gotoxy(37,24); printf("%i - %s - %s - %s - %s - %s - %i", vehiculo10.aho,vehiculo10.color,vehiculo10.marca,vehiculo10.matricula,vehiculo10.modelo,vehiculo10.combus,vehiculo10.precio);
  95.  
  96.  
  97.  
  98. }
  99.  
  100. void gotoxy(int x,int y)
  101. {
  102. HANDLE hcon;
  103. hcon=GetStdHandle(STD_OUTPUT_HANDLE);
  104. COORD dwPos;
  105. dwPos.X =x;
  106. dwPos.Y= y;
  107. SetConsoleCursorPosition(hcon,dwPos);
  108. }
  109.  
  110. int main() {
  111. int correct, conteo = 3;
  112. correct = ingresar(conteo);
  113. if (correct == 1)
  114. {
  115. login();
  116. volverprin();
  117. }
  118. ocultacursor(); sleep(3); system("cls");
  119. return 0;
  120. }
  121.  
  122. int ingresar(int conteo){
  123. int pass, x, i;
  124. char user[7];
  125. if(conteo > 0){
  126. int i;
  127. cuadro();
  128. color(11);gotoxy (52,10); printf(" ::: SISTEMA DE INICIO DE SESION :::");
  129. color(11);gotoxy (49,13); printf("Ingresar Ususario: ");
  130. color(8); gets(user);
  131. x = userver(user);
  132. if(x == 1){
  133. char contra[4];
  134. color(11);gotoxy (49,14); printf("Ingresar Contrase%ca: ",164);
  135. color(8);
  136. for(i=0; i <= 3; i++)
  137. {
  138. contra[i] = getch(); printf("*");
  139. }
  140. pass = contraver(contra);
  141. if(pass == 1){
  142. system("cls");
  143. return 1;
  144. }
  145. else{
  146. system("cls");
  147. color(11);gotoxy(45,23); printf("Usuario y/o Contrase%ca incorrectos.\n",164);
  148. color(11);gotoxy(45,24); printf("%d intentos restantes.", conteo-1);
  149. ingresar(conteo-1);
  150. }
  151. }
  152. else{
  153. system("cls");
  154. color(11);gotoxy(45,23); printf("Usuario y/o Contrase%ca incorrectos.\n",164);
  155. color(11);gotoxy(45,24); printf("%d intentos restantes.", conteo-1);
  156. ingresar(conteo-1);
  157. }
  158. }
  159. else{
  160. int i = 0, a = 15;
  161. system("cls");
  162. cuadro(); system("color 4F");
  163. gotoxy(45,12); printf("Ha introducido datos incorrectos un total");
  164. gotoxy(45,13); printf("de tres veces, ......saliendo del sistema.");
  165. ocultacursor(); sleep(8);
  166. system("cls");
  167. return 0;
  168. }
  169. }
  170.  
  171. void color(int n)
  172. {
  173. SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), n);
  174. }
  175.  
  176. int userver(char user[7]){
  177. int conteo = 6, bien = 0, i;
  178. for(i = 0; i < 7; i++){
  179. if(user[i] <= 122 && user[i] >= 97){
  180. user[i] -= 32;
  181. }
  182. }
  183. char user2[7] = {'U','C','A','T','E','C','I'};
  184. do{
  185. if(user[conteo] == user2[conteo]){
  186. conteo --;
  187. bien++;
  188. }
  189. else{
  190. conteo--;
  191. }
  192. }
  193. while (conteo >= 0);
  194.  
  195. if(bien == 7){
  196. return 1;
  197. }
  198. else{
  199. return 3;
  200. }
  201. }
  202.  
  203. int contraver(char contra[4]){
  204. int conteo = 3, bien = 0;
  205. char contra2[4] = {'1','1','0','0'};
  206. do{
  207. if(contra[conteo] == contra2[conteo]){
  208. conteo --;
  209. bien++;
  210. }
  211. else{
  212. conteo--;
  213. }
  214. }
  215. while (conteo >= 0);
  216.  
  217. if(bien == 4){
  218. return 1;
  219. }
  220. else{
  221. return 3;
  222. }
  223. }
  224.  
  225. void cuadro()
  226. {
  227. int x, y;
  228. for (x=1; x<=110; x++)// raya de arribas y abajo
  229. {
  230. color (6);gotoxy(x,1); printf ("%c",205 );
  231. gotoxy(x,30); printf ("%c",205);
  232. }
  233. for (x=1; x<=110; x++)// raya en X de dividir titutlo
  234. {
  235. color (6);gotoxy(x,7); printf ("%c",205 );
  236. }
  237. for (x=1; x<=110; x++)// raya en X de dividir fecha y hora del sistema
  238. {
  239. color (6);gotoxy(x,9); printf ("%c",205 );
  240. }
  241.  
  242. for (y=10; y<=30; y++) // palo del medio
  243. {
  244. gotoxy(30,y); printf ("%c",186);
  245.  
  246. }
  247. for (y=1; y<=30; y++) // palo difivicion final
  248. {
  249. gotoxy(1,y); printf ("%c",186);
  250. gotoxy(110,y); printf ("%c",186);
  251. }
  252. // Disena para titulo de las paginas
  253. for (x=40; x<=100; x++)
  254. {
  255. color (6);gotoxy(x,11); printf ("%c",205 );
  256. }
  257.  
  258. gotoxy (40,10); printf ("%c", 186);
  259. gotoxy (100,10); printf ("%c", 186);
  260. gotoxy (40,11); printf ("%c", 200);
  261. gotoxy (100,11); printf ("%c", 188);
  262. gotoxy (40,9); printf ("%c", 203);
  263. gotoxy (100,9); printf ("%c", 203);
  264. gotoxy (1,7); printf ("%c", 204);
  265. gotoxy (1,9); printf ("%c", 204);
  266. gotoxy (1,1); printf ("%c", 201);
  267. gotoxy (110,7); printf ("%c", 185);
  268. gotoxy (110,9); printf ("%c", 185);
  269. gotoxy (110,1); printf ("%c", 187);
  270. gotoxy (30,9); printf ("%c", 203);
  271. gotoxy (30,30); printf ("%c", 202);
  272. gotoxy (1,30); printf ("%c", 200);
  273. gotoxy (110,30); printf ("%c", 188);
  274.  
  275. color(11);gotoxy ((110-strlen("Universidad Catolica Tecnologica del Cibao"))/2,2); printf ("Universidad Catolica Tecnologica del Cibao");
  276. color(11);gotoxy ((110-strlen("U C A T E C I"))/2,3); printf ("U C A T E C I");
  277. color(11);gotoxy ((110-strlen("Estructura de Datos"))/2,4); printf ("Estructura de Datos");
  278. color(11);gotoxy ((110-strlen("Juan Carlos Vargas Medrano 2014-1100"))/2,5); printf ("Juan Carlos Vargas Medrano 2014-1100");
  279. color(11);gotoxy ((110-strlen("Estaban Cabrera 2015-0551"))/2,6); printf ("Estaban Cabrera 2015-0551");
  280. color(11);gotoxy (30,8); printf (" M E D R A N O Y C A B R E R A R E N T ");
  281.  
  282. // fecha y hora
  283. time_t tiempo = time(0);
  284. struct tm *tlocal = localtime(&tiempo);
  285. char hora[12];
  286. char fecha[15];
  287. strftime(hora, 12, "%H:%M", tlocal);
  288. strftime(fecha, 15, "%d/%m/%y", tlocal);
  289. color(11);gotoxy (3,8);printf("Hora del Sistema: ");printf(hora);
  290. color(11);gotoxy (82,8);printf("Fecha del Sistema: ");printf(fecha);
  291. color(6);gotoxy (27,8); printf ("%c", 186);
  292. color(6);gotoxy (80,8); printf ("%c", 186);
  293. color(6);gotoxy (27,9); printf ("%c", 202);
  294. color(6);gotoxy (80,9); printf ("%c", 202);
  295. color(6);gotoxy (27,7); printf ("%c", 203);
  296. color(6);gotoxy (80,7); printf ("%c", 203);
  297. }
  298.  
  299. void ocultacursor() {
  300. CONSOLE_CURSOR_INFO cci = {100, FALSE};
  301. SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cci);
  302. }
  303.  
  304. void mostracursor(){
  305. CONSOLE_CURSOR_INFO cci = {10, TRUE};
  306. SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cci);
  307. }
  308.  
  309. void mantenimientos(){
  310. color(11);gotoxy (52,10); printf("::: MODULO DE MANTENIMIENTO :::");
  311. color(11);gotoxy (43,20); printf("EL MANTENIMIENTO DEL SISTEMA EMPIEZA EN 3 SEGUNDOS");
  312. Sleep(3000);
  313. system("cls");
  314. login();
  315. system("cls");
  316. cuadro();
  317. }
  318.  
  319. int volverprin(){
  320. cuadro();
  321. system("cls");
  322. cuadro();
  323. int Opcion = 3, Tecla;
  324. int Posicion = 5;
  325. do
  326. {
  327. do
  328. {
  329. ocultacursor();
  330. color(11);gotoxy (52,10); printf(" ::: MODULO PRINCIPAL ::: ");
  331. color(11);gotoxy(3, 10); printf(" -- MENU PRINCIPAL -- ");
  332. color(11);gotoxy(4, 12); printf("Realizar Consulta");
  333. color(11);gotoxy(4, 13); printf("Realizar Reserva");
  334. color(11);gotoxy(4, 14); printf("Registrar Cliente");
  335. color(11); gotoxy(4, 15); printf("Realizar Mantenimiento");
  336. color(11);gotoxy(4, 16); printf("Cerrar Sistema");
  337.  
  338. switch(Opcion)
  339. {
  340. case 1:
  341. color(5); color(9); gotoxy(4, 12); printf("Realizar Consulta");
  342. color(6); color(3);
  343. break;
  344. case 2:
  345. color(5); color(9); gotoxy(4, 13); printf("Realizar Reserva");
  346. color(6); color(3);
  347. break;
  348. case 3:
  349. color(5); color(9); gotoxy(4, 14); printf("Registrar Cliente");
  350. color(6); color(3);
  351. break;
  352. case 4:
  353. color(5); color(9); gotoxy(4, 15); printf("Realizar Mantenimiento");
  354. color(6); color(3);
  355. break;
  356. case 5:
  357. color(5); color(9); gotoxy(4, 16); printf("Cerrar Sistema");
  358. color(6); color(3);
  359. break;
  360. }
  361.  
  362. do
  363. Tecla = getch();
  364. while(Tecla != 13 && Tecla != 72 && Tecla != 80);
  365.  
  366. if(Tecla == 72)
  367. {
  368. if(Opcion == 1)
  369. Opcion = 5;
  370. else
  371. if(Opcion > 1)
  372. Opcion--;
  373. }
  374. else
  375. if(Tecla == 80)
  376. if(Opcion == 5)
  377. Opcion = 1;
  378. else
  379. if(Opcion < 5)
  380. Opcion++;
  381. }while(Tecla != 13);
  382.  
  383. switch(Opcion)
  384. {
  385. case 1:
  386. menuestu();
  387. break;
  388. case 2:
  389. mostrarclientes();
  390. break;
  391. case 3:
  392. fcliente();
  393. break;
  394. case 4:
  395. mantenimientos();
  396. break;
  397. }
  398. }while(Opcion != 5);
  399. system("cls");
  400. cuadro();
  401. gotoxy(35,16); printf("Gracias por utilizar nuestro sistema.");
  402. ocultacursor(); sleep(30000); system("cls");
  403. return 0;
  404. }
  405.  
  406. void menuestu(){
  407. system("cls");
  408. cuadro(); gotoxy(48,23);
  409. int Opcion = 1, Tecla;
  410. int Posicion = 5;
  411. do
  412. {
  413. do
  414. {
  415. ocultacursor();
  416. color(11);gotoxy (52,10); printf(" ::: MODULO DE CONSULTAS ::: ");
  417. gotoxy(4, 10); printf("-- MENU DE CONSULTAS --");
  418. gotoxy(4, 12); printf("Consultar Vehiculos");
  419. gotoxy(4, 13); printf("Consultar Clientes");
  420. gotoxy(4, 14); printf("Consultar Reservas");
  421. gotoxy(4, 15); printf("Volver al Menu Principal");
  422.  
  423. switch(Opcion)
  424. {
  425. case 1:
  426. color(5); color(9); gotoxy(4, 12); printf("Consultar Vehiculos");
  427. color(6); color(3);
  428. break;
  429. case 2:
  430. color(5); color(9); gotoxy(4, 13); printf("Consultar Clientes");
  431. color(6); color(3);
  432. break;
  433. case 3:
  434. color(5); color(9); gotoxy(4, 14); printf("Consultar Reservas");
  435. color(6); color(3);
  436. break;
  437. case 4:
  438. color(5); color(4); gotoxy(4, 15); printf("Volver al Menu Principal");
  439. color(6); color(3);
  440. break;
  441. }
  442.  
  443. do
  444. Tecla = getch();
  445. while(Tecla != 13 && Tecla != 72 && Tecla != 80);
  446.  
  447. if(Tecla == 72)
  448. {
  449. if(Opcion == 1)
  450. Opcion = 4;
  451. else
  452. if(Opcion > 1)
  453. Opcion--;
  454. }
  455. else
  456. if(Tecla == 80)
  457. if(Opcion == 4)
  458. Opcion = 1;
  459. else
  460. if(Opcion < 4)
  461. Opcion++;
  462. }while(Tecla != 13);
  463.  
  464. switch(Opcion)
  465. {
  466. case 1:
  467. mostrarcarros();
  468. break;
  469. case 2:
  470. volverprin();
  471. break;
  472. case 3:
  473. volverprin();
  474. break;
  475. case 4:
  476. volverprin();
  477. break;
  478. }
  479. }while(Opcion != 5);
  480.  
  481. }
  482.  
  483. void login()// funcion de la barra de carga
  484. {
  485. int x, y, coz;
  486. cuadro();
  487. for (x=42; x<=100; x++)
  488. {
  489. color (2);gotoxy(x,13); printf ("%c",205);
  490. color (2);gotoxy(x,15); printf ("%c",205);
  491. }
  492. gotoxy (41,14); printf ("%c", 186);
  493. gotoxy (100,14); printf ("%c", 186);
  494. gotoxy (41,13); printf ("%c", 201);
  495. gotoxy (41,15); printf ("%c", 200);
  496. gotoxy (100,13); printf ("%c", 187);
  497. gotoxy (100,15); printf ("%c", 188);
  498. for (coz = 42; coz <= 99; coz++)
  499. {
  500. color (8);gotoxy(coz,14); printf ("%c",219);
  501. Sleep(50);
  502. }
  503. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement