fork download
  1. #include <iostream>
  2.  
  3. #include <string>
  4. #include <cstdlib>
  5.  
  6. using namespace std;
  7.  
  8. void clientes(int xop, int xcontador, int menos, string xCliente_DNI[], string xCliente_Nombres[], string xCliente_ApellidoPaterno[], string xCliente_ApellidoMaterno[], string xCliente_Edad[], string xCliente_Direccion[])
  9. {
  10. //En la función se llaman 3 argumentos más pues los contadores se deben traer desde el main, de caso contrario (si es que estuvieran en la funcion) se setearían en el inicio (0) cada vez que se llame la función y los datos se guardarían sólo en el primer espacio del arreglo
  11. string DNI;
  12. switch (xop)
  13. {
  14. case 1:
  15. if (menos>0)
  16. {
  17. for (int w = 0; w < xcontador - 1; w = w + 1)
  18. {
  19. if (xCliente_DNI[w] == "Libre")
  20. {
  21.  
  22. cout << "Ingrese el DNI del cliente: " << endl;
  23. cin >> xCliente_DNI[w];
  24. cout << "Ingrese el nombre del cliente: " << endl;
  25. cin >> xCliente_Nombres[w];
  26. cout << "Ingrese el Apellido paterno del cliente: " << endl;
  27. cin >> xCliente_ApellidoPaterno[w];
  28. cout << "Ingrese el Apellido materno del cliente: " << endl;
  29. cin >> xCliente_ApellidoMaterno[w];
  30. cout << "Ingrese la edad del cliente: " << endl;
  31. cin >> xCliente_Edad[w];
  32. cout << "Ingrese la direccion del cliente: " << endl;
  33. cin >> xCliente_Direccion[w];
  34.  
  35. w = xcontador - 2;
  36. }
  37. }
  38. }
  39. else
  40. {
  41.  
  42.  
  43. cout << "Ingrese el DNI del cliente: " << endl;
  44. cin >> xCliente_DNI[xcontador - 1];
  45. cout << "Ingrese el nombre del cliente: " << endl;
  46. cin >> xCliente_Nombres[xcontador - 1];
  47. cout << "Ingrese el Apellido paterno del cliente: " << endl;
  48. cin >> xCliente_ApellidoPaterno[xcontador - 1];
  49. cout << "Ingrese el Apellido materno del cliente: " << endl;
  50. cin >> xCliente_ApellidoMaterno[xcontador - 1];
  51. cout << "Ingrese la edad del cliente: " << endl;
  52. cin >> xCliente_Edad[xcontador - 1];
  53. cout << "Ingrese la direccion del cliente: " << endl;
  54. cin >> xCliente_Direccion[xcontador - 1];
  55.  
  56. }
  57. break;
  58. case 2:
  59.  
  60. cout << "Ingrese el DNI del cliente: " << endl;
  61. cin >> DNI;
  62. for (int i = 0; i < xcontador - 1; i++)
  63. {
  64. if (DNI == xCliente_DNI[i])
  65. {
  66. cout << "Ingrese el nuevo nombre del cliente: " << endl;
  67. cin >> xCliente_Nombres[i];
  68. cout << "Ingrese el nuevo Apellido paterno del cliente: " << endl;
  69. cin >> xCliente_ApellidoPaterno[i];
  70. cout << "Ingrese el nuevo Apellido materno del cliente: " << endl;
  71. cin >> xCliente_ApellidoMaterno[i];
  72. cout << "Ingrese la nueva edad del cliente: " << endl;
  73. cin >> xCliente_Edad[i];
  74. cout << "Ingrese la nueva direccion del cliente: " << endl;
  75. cin >> xCliente_Direccion[i];
  76. i=101;
  77. }
  78. if(i==101)
  79. {
  80. cout<< "No se encontró cliente con ese DNI \n";
  81. }
  82.  
  83. }
  84. break;
  85. case 3:
  86. cout << "Ingrese el DNI del cliente: " << endl;
  87. cin >> DNI;
  88. for (int p = 0; p < xcontador - 1; p = p + 1)
  89. {
  90. if (DNI == xCliente_DNI[p])
  91. {
  92. xCliente_DNI[p] = "Libre";
  93. xCliente_Nombres[p] = "Libre";
  94. xCliente_ApellidoPaterno[p] = "Libre";
  95. xCliente_ApellidoMaterno[p] = "Libre";
  96. xCliente_Edad[p] = "0";
  97. xCliente_Direccion[p] = "Libre";
  98. p=101;
  99. }
  100. if(p==101)
  101. {
  102. cout<< "No se encontró cliente con ese DNI \n";
  103. }
  104. }
  105. break;
  106. }
  107. }
  108.  
  109. void empleados(int xop, int xcontador, int menos, string xEmpleado_DNI[], string xEmpleado_Nombres[], string xEmpleado_ApellidoPaterno[], string xEmpleado_ApellidoMaterno[], float xEmpleado_Sueldo[], string xEmpleado_Area[])
  110. {
  111. string DNI;
  112. switch (xop)
  113. {
  114. case 1:
  115. if (menos>0)
  116. {
  117. for (int w = 0; w < xcontador - 1; w = w + 1)
  118. {
  119. if (xEmpleado_DNI[w] == "Libre")
  120. {
  121.  
  122. cout << "Ingrese el DNI del empleado: " << endl;
  123. cin >> xEmpleado_DNI[w];
  124. cout << "Ingrese el nombre del empleado: " << endl;
  125. cin >> xEmpleado_Nombres[w];
  126. cout << "Ingrese el Apellido paterno del empleado: " << endl;
  127. cin >> xEmpleado_ApellidoPaterno[w];
  128. cout << "Ingrese el Apellido materno del empleado: " << endl;
  129. cin >> xEmpleado_ApellidoMaterno[w];
  130. cout << "Ingrese la sueldo del empleado: " << endl;
  131. cin >> xEmpleado_Sueldo[w];
  132. cout << "Ingrese la area del empleado: " << endl;
  133. cin >> xEmpleado_Area[w];
  134.  
  135. w = xcontador;
  136. }
  137. }
  138. }
  139. else
  140. {
  141.  
  142.  
  143. cout << "Ingrese el DNI del empleado: " << endl;
  144. cin >> xEmpleado_DNI[xcontador - 1];
  145. cout << "Ingrese el nombre del empleado: " << endl;
  146. cin >> xEmpleado_Nombres[xcontador - 1];
  147. cout << "Ingrese el Apellido paterno del empleado: " << endl;
  148. cin >> xEmpleado_ApellidoPaterno[xcontador - 1];
  149. cout << "Ingrese el Apellido materno del empleado: " << endl;
  150. cin >> xEmpleado_ApellidoMaterno[xcontador - 1];
  151. cout << "Ingrese la sueldo del empleado: " << endl;
  152. cin >> xEmpleado_Sueldo[xcontador - 1];
  153. cout << "Ingrese la Area del empleado: " << endl;
  154. cin >> xEmpleado_Area[xcontador - 1];
  155.  
  156. }
  157. break;
  158. case 2:
  159.  
  160. cout << "Ingrese el DNI del empleado: " << endl;
  161. cin >> DNI;
  162. for (int i = 0; i < 100; i++)
  163. {
  164. if (DNI == xEmpleado_DNI[i])
  165. {
  166. cout << "Ingrese el nuevo nombre del empleado: " << endl;
  167. cin >> xEmpleado_Nombres[i];
  168. cout << "Ingrese el nuevo Apellido paterno del empleado: " << endl;
  169. cin >> xEmpleado_ApellidoPaterno[i];
  170. cout << "Ingrese el nuevo Apellido materno del empleado: " << endl;
  171. cin >> xEmpleado_ApellidoMaterno[i];
  172. cout << "Ingrese la nueva edad del empleado: " << endl;
  173. cin >> xEmpleado_Sueldo[i];
  174. cout << "Ingrese la nueva direccion del empleado: " << endl;
  175. cin >> xEmpleado_Area[i];
  176. i=101;
  177. }
  178. if(i=101)
  179. {
  180. cout<< "No se encontró empleado con ese DNI \n";
  181. }
  182. }
  183. break;
  184. case 3:
  185. cout << "Ingrese el DNI del empleado: " << endl;
  186. cin >> DNI;
  187. for (int p = 0; p < 100; p = p + 1)
  188. {
  189. if (DNI == xEmpleado_DNI[p])
  190. {
  191. xEmpleado_DNI[p] = "Libre";
  192. xEmpleado_Nombres[p] = "Libre";
  193. xEmpleado_ApellidoPaterno[p] = "Libre";
  194. xEmpleado_ApellidoMaterno[p] = "Libre";
  195. xEmpleado_Sueldo[p] = 0;
  196. xEmpleado_Area[p] = "Libre";
  197. p=101;
  198. }
  199. if(p==101)
  200. {
  201. cout<< "No se encontró cliente con ese DNI \n";
  202. }
  203. }
  204. break;
  205. }
  206. }
  207.  
  208. float pago_planillas(string xEmpleado_DNI[], string xEmpleado_Nombres[], string xEmpleado_ApellidoPaterno[], string xEmpleado_ApellidoMaterno[], float xEmpleado_Sueldo[], string xEmpleado_Area[])
  209. {
  210. cout << endl << "3. PAGO DE PLANILLAS " << endl;
  211. float monto = 0;
  212. for (int i = 0; i < 100; i++)
  213. {
  214. if (xEmpleado_Area[i] == "Finanzas")
  215. {
  216. monto = monto + xEmpleado_Sueldo[i] + 150;
  217. }
  218. else
  219. {
  220. if (xEmpleado_Area[i] == "Contabilidad")
  221. {
  222. monto = monto + xEmpleado_Sueldo[i] + 140;
  223. }
  224. else
  225. {
  226. if (xEmpleado_Area[i] == "TI")
  227. {
  228. monto = monto + xEmpleado_Sueldo[i] + 120;
  229. }
  230. else
  231. {
  232. if (xEmpleado_Area[i] == "Seguridad")
  233. {
  234. monto = monto + xEmpleado_Sueldo[i] + 100;
  235. }
  236. else
  237. {
  238. if (xEmpleado_Area[i] == "Ventas")
  239. {
  240. monto = monto + xEmpleado_Sueldo[i] + 90;
  241. }
  242. if (xEmpleado_Area[i] == "Cobranzas")
  243. {
  244. monto = monto + xEmpleado_Sueldo[i] + 80;
  245. }
  246. else
  247. {
  248. monto = monto;
  249. }
  250. }
  251. }
  252. }
  253. }
  254. }
  255. return(monto);
  256. }
  257.  
  258. void servicios(string xservicios[7][5])
  259. {
  260. int fila, columna,opservicio;
  261. string servicio;
  262. do
  263. {
  264. cout << endl << endl << " OPCIONES-Servicios " << endl << endl;
  265. cout << " 1. Ingreso de nuevo servicio" << endl;
  266. cout << " 2. Modificación/Actualizacion de servicio " << endl;
  267. cout << " 3. Eliminar servicio " << endl;
  268. cout << " 4. Salir " << endl;
  269. do {
  270. cout << endl << "Elija una opcion <1...4> : ";
  271. cin >> opservicio;
  272. } while ((opservicio < 1) || (opservicio>4));
  273. switch(opservicio)
  274. {
  275. case 1:
  276. cout<< "Ingrese las coordenadas en donde quiere poner el servicio \n";
  277. cout<<"columna: ";
  278. cin>> columna;
  279. cout<<"Fila: ";
  280. cin>> fila;
  281. cout<<"Servicio: ";
  282. cin>> servicio;
  283. xservicios[columna][fila]=servicio;
  284. break;
  285. case 2:
  286. cout<< "Ingrese las coordenadas en donde se encuentra el servicio a modificar \n";
  287. cout<<"columna: ";
  288. cin>> columna;
  289. cout<<"Fila: ";
  290. cin>> fila;
  291. cout<<"El servicio actual es: "<<xservicios[columna][fila]<<"\n";
  292. cout<<"Ingrese por favor el nuevo servicio: ";
  293. cin>> servicio;
  294. xservicios[columna][fila]=servicio;
  295. break;
  296.  
  297. case 3:
  298. cout<< "Ingrese las coordenadas en donde se encuentra el servicio a eliminar \n";
  299. cout<<"columna: ";
  300. cin>> columna;
  301. cout<<"Fila: ";
  302. cin>> fila;
  303. cout<<"Se ha eliminado el servicio: "<<xservicios[columna][fila]<<"\n";
  304.  
  305. xservicios[columna][fila]="Libre";
  306. break;
  307. break;
  308.  
  309. }
  310. }while(opservicio!=4);
  311. }
  312.  
  313. void reporte_clientes_morosos(string xCliente_Pagos[], string xCliente_DNI[], string xCliente_Nombres[],string xCliente_ApellidoPaterno[], string xCliente_ApellidoMaterno[])
  314. {
  315. xCliente_Pagos[0]="8";
  316. xCliente_Pagos[3]="1";
  317. xCliente_Pagos[6]="5";
  318. xCliente_Pagos[9]="7";
  319. xCliente_Pagos[12]="9";
  320. xCliente_Pagos[15]="3";
  321. xCliente_Pagos[18]="4";
  322. xCliente_Pagos[21]="2";
  323. xCliente_Pagos[24]="6";
  324. xCliente_Pagos[27]="10";
  325.  
  326. xCliente_Pagos[1]="458.69";
  327. xCliente_Pagos[4]="253.89";
  328. xCliente_Pagos[7]=".254.68";
  329. xCliente_Pagos[10]="985.36";
  330. xCliente_Pagos[13]="456.23";
  331. xCliente_Pagos[16]="444.44";
  332. xCliente_Pagos[19]="235.69";
  333. xCliente_Pagos[22]="895.45";
  334. xCliente_Pagos[25]="789.95";
  335. xCliente_Pagos[28]="452.25";
  336.  
  337. xCliente_Pagos[2]="pendiente";
  338. xCliente_Pagos[5]="pendiente";
  339. xCliente_Pagos[8]="pagado";
  340. xCliente_Pagos[11]="pendiente";
  341. xCliente_Pagos[14]="pagado";
  342. xCliente_Pagos[17]="pagado";
  343. xCliente_Pagos[20]="pagado";
  344. xCliente_Pagos[23]="pendiente";
  345. xCliente_Pagos[26]="pagado";
  346. xCliente_Pagos[29]="pendiente";
  347.  
  348. cout<<"Cliente "<<" Deuda \n";
  349. for (int i=0 ; i < 10; i++)
  350. {
  351. if(xCliente_Pagos[3*(i+1)-1]=="pendiente")
  352. {
  353. for(int w=0; w < 100; w=w+1)
  354. {
  355. if(xCliente_DNI[w]==xCliente_Pagos[3*(i+1)-3])
  356. {
  357. cout<<xCliente_Nombres[w]<<" "<<xCliente_ApellidoPaterno[w]<<" "<<xCliente_ApellidoMaterno[w]<<" "<<xCliente_Pagos[3*(i+1)-2]<<"\n";
  358. }
  359. }
  360. }
  361. }
  362.  
  363. }
  364.  
  365.  
  366.  
  367. int main()
  368. {
  369. //----Tipos de datos necesarios para la opción 1
  370. string Cliente_DNI[100];
  371. string Cliente_Nombres[100];
  372. string Cliente_ApellidoPaterno[100];
  373. string Cliente_ApellidoMaterno[100];
  374. string Cliente_Edad[100];
  375. string Cliente_Direccion[100];
  376. //----Tipos de datos necesarios para la opción 2
  377. string Empleado_DNI[100];
  378. string Empleado_Nombres[100];
  379. string Empleado_ApellidoPaterno[100];
  380. string Empleado_ApellidoMaterno[100];
  381. float Empleado_Sueldo[100];
  382. string Empleado_Area[100];
  383. //----Tipos de datos necesarios para la opción 3
  384. float cantidad_total_planillas;
  385. //----Tipos de datos necesarios para la opción 4
  386. string arreglo_Servicios[7][5];
  387. //----Tipos de datos necesarios para la opción 5
  388. string Cliente_Pagos[30];
  389. //----Tipos de datos necesarios para la opción 6
  390. string Stock_Codigo[15];
  391. string Stock_Descripcion[15];
  392. string Stock_Cantidad[15];
  393.  
  394.  
  395. int Op, ContadorArreglo, ContadorArregloE, c, e, ContadorArregloS;
  396. ContadorArreglo = 0;
  397. ContadorArregloE = 0;
  398. c = 0;
  399. e = 0;
  400.  
  401. do {
  402. cout << endl << endl << " SISTEMA DE ATENCION " << endl << endl;
  403. cout << " 1. CLIENTES" << endl;
  404. cout << " 2. EMPLEADOS " << endl;
  405. cout << " 3. PAGO DE PLANILLAS " << endl;
  406. cout << " 4. SERVICIOS " << endl;
  407. cout << " 5. REPORTE DE CLIENTE MOROSOS " << endl;
  408. cout << " 6. STOCK DE ARTICULOS " << endl;
  409. cout << " 7. FIN" << endl;
  410.  
  411. do {
  412. cout << endl << "Elija una opcion <1...7> : ";
  413. cin >> Op;
  414. } while ((Op < 1) || (Op>7));
  415.  
  416. //---- se realiza la eleccion de las subrutinas o funciones a ejecutar
  417.  
  418. switch (Op)
  419. {
  420. case 1:
  421. int opcliente;
  422. do
  423. {
  424.  
  425. cout << endl << endl << " OPCIONES-CLIENTES " << endl << endl;
  426. cout << " 1. Ingreso de nuevo cliente" << endl;
  427. cout << " 2. Modificación/Actualizacion de cliente " << endl;
  428. cout << " 3. Eliminar cliente " << endl;
  429. cout << " 4. Salir " << endl;
  430. do {
  431. cout << endl << "Elija una opcion <1...4> : ";
  432. cin >> opcliente;
  433. } while ((opcliente < 1) || (opcliente>4));
  434.  
  435. switch (opcliente)
  436. {
  437. case 1:
  438. ContadorArreglo = ContadorArreglo + 1;
  439. break;
  440. case 3:
  441. c = c + 1;
  442.  
  443. }
  444. clientes(opcliente, ContadorArreglo, c, Cliente_DNI, Cliente_Nombres, Cliente_ApellidoPaterno, Cliente_ApellidoMaterno, Cliente_Edad, Cliente_Direccion);
  445. } while (opcliente != 4);
  446.  
  447.  
  448.  
  449. //--- Complete aquí esta opcion !
  450. // clientes (Cliente_DNI, Cliente_Nombres, Cliente_ApellidoPaterno, Cliente_ApellidoMaterno, Cliente_Edad, Cliente_Direccion);
  451.  
  452. break;
  453. case 2:
  454. int opempleado;
  455. do
  456. {
  457. cout << endl << endl << " OPCIONES-Empleados " << endl << endl;
  458. cout << " 1. Ingreso de nuevo empleado" << endl;
  459. cout << " 2. Modificación/Actualizacion de empleado " << endl;
  460. cout << " 3. Eliminar empleado " << endl;
  461. cout << " 4. Salir " << endl;
  462. do {
  463. cout << endl << "Elija una opcion <1...4> : ";
  464. cin >> opempleado;
  465. } while ((opempleado < 1) || (opempleado>4));
  466.  
  467. switch (opempleado)
  468. {
  469. case 1:
  470. ContadorArregloE = ContadorArregloE + 1 ;
  471. break;
  472. case 3:
  473. e = e + 1;
  474.  
  475. }
  476. empleados(opempleado, ContadorArregloE, c, Empleado_DNI, Empleado_Nombres, Empleado_ApellidoPaterno, Empleado_ApellidoMaterno, Empleado_Sueldo, Empleado_Area);
  477. } while (opempleado != 4);
  478.  
  479.  
  480.  
  481. break;
  482. //--- Complete aquí esta opcion !
  483. // clientes (Cliente_DNI, Cliente_Nombres, Cliente_ApellidoPaterno, Cliente_ApellidoMaterno, Cliente_Edad, Cliente_Direccion);
  484. case 3:
  485.  
  486. cantidad_total_planillas = pago_planillas(Empleado_DNI, Empleado_Nombres, Empleado_ApellidoPaterno, Empleado_ApellidoMaterno, Empleado_Sueldo, Empleado_Area);
  487. cout << "La cantidad total a pagar es: " << "\n" << cantidad_total_planillas;
  488. break;
  489.  
  490. case 4:
  491. servicios(arreglo_Servicios);
  492. break;
  493.  
  494. case 5:
  495. cout << endl << "5. REPORTE DE CLIENTES MOROSOS " << endl;
  496. reporte_clientes_morosos (Cliente_Pagos, Cliente_DNI, Cliente_Nombres, Cliente_ApellidoPaterno, Cliente_ApellidoMaterno);
  497.  
  498. break;
  499. case 6:
  500. cout << endl << "6. STOCK DE ARTICULOS " << endl;
  501. cout << endl << "OPCION 6 POR REALIZAR " << endl;
  502. cout << endl << "OPCION 6 POR REALIZAR " << endl;
  503. cout << endl << "OPCION 6 POR REALIZAR " << endl;
  504. cout << endl << "OPCION 6 POR REALIZAR " << endl;
  505. //--- Complete aqui esta opcion !
  506. // stock_articulos(Stock_Codigo,Stock_Descripcion,Stock_Cantidad);
  507.  
  508. break;
  509.  
  510. }
  511. } while (Op != 7);
  512.  
  513. cout << endl << endl;
  514. cout << "Gracias por usar el programa" << endl;
  515. cout << "Presione una tecla para terminar ";
  516. _getch();
  517. return(0);
  518. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp:178:8: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
                        if(i=101)
                           ~^~~~
prog.cpp:178:8: note: place parentheses around the assignment to silence this warning
                        if(i=101)
                            ^
                           (    )
prog.cpp:178:8: note: use '==' to turn this assignment into an equality comparison
                        if(i=101)
                            ^
                            ==
prog.cpp:516:2: error: use of undeclared identifier '_getch'
        _getch();
        ^
1 warning and 1 error generated.
stdout
Standard output is empty