Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Hakim en 9 Agosto 2017, 17:44 pm



Título: No llama la funcion Cin
Publicado por: Hakim en 9 Agosto 2017, 17:44 pm
Saludos amigos, estoy haciendo una tarea para la universidad y por alguna razón no puedo llamar el segundo y el tercero "cin>>"

No se que estoy haciendo mal. Aquí el código.

Código
  1. // Tarea1.cpp
  2. // V.3.2
  3. // ***************** SOLO SE USA CODIGOS DE LAS PRIMERAS UNIDADES *****************
  4.  
  5. #include "stdafx.h"
  6. #include <iostream>
  7.  
  8. using namespace std;
  9.  
  10. void anuncio() // Anuncio para la clase y otras funciones.
  11. {
  12. cout << "Info:" << endl;
  13. cout << " Nombre: ...." << endl;
  14. cout << " Asignacion: Tarea 1." << endl;
  15. cout << " Clase: Programacion de objetos." << endl;
  16. cout << " Universidad: ..." << endl;
  17. cout << " Profesora: ...." << endl << endl;
  18. cout << "Programa ficticio:" << endl;
  19. cout << " Amira Bank - Programa de ahorros para clientes." << endl << endl;
  20.  
  21.  
  22.  
  23. system("pause");
  24.  
  25.  
  26. }
  27.  
  28.  
  29.  
  30. int main()
  31. {
  32. anuncio();
  33.  
  34. int cliente1;
  35. int cliente2;
  36. int cliente3;
  37.  
  38. cout << " \n\nBienvenidos a Amira Bank.\n\n";
  39. cout << " El programa ayudara a calcular los ahorros de 3 clientes editables. \n";
  40. cout << " Las cantidades bancarias de cada cliente estan preterminados por el programa. \n" << endl;
  41. // terminamos la introduccion del programa.
  42.  
  43. cout << "Ingresamos los nombres de los clientes\n";
  44. cout << "Primer cliente: ";
  45. cin >> cliente1;
  46. cout << "Segundo cliente: \n";
  47. cin >> cliente2;
  48. cout << "Tercer cliente: \n";
  49. cin >> cliente3;
  50.  
  51.  
  52.  
  53.  
  54.  
  55. system("pause");
  56.  
  57.    return 0;
  58.  
  59.  
  60.  
  61.  
  62. }
  63.  
  64.  

Cuando estoy intentando correr el programa simplemente me deja introducir el "Cliente1" y luego finaliza con los dos últimos anunciados.


Título: Re: No llama la funcion Cin
Publicado por: ivancea96 en 9 Agosto 2017, 20:00 pm
En primer lugar, cliente1, cliente2 y cliente3 son int, son números. No puedes guardar una cadena en un número. Tendrás que usar una string.

Ten en cuenta que si usas "cin >> string", solo lee 1 palabra, no una frase. Si quieres leer todo hasta que el usuario pulse ENTER, sería:
Código
  1. getline(cin, string);


Título: Re: No llama la funcion Cin
Publicado por: ianmorar03 en 9 Agosto 2017, 22:07 pm
cliente 1, cliente 2 y cliente 3
los estas guardando como un entero (int), y si lo que quieres son nombres debes usar una cadena de caracteres (string), para evitar inconvenientes y leer nombre y apellido con espacios, te recomiendo getline:
Código
  1. string cliente1;
  2. cout<<"Nombre del cliente 1 \n>";
  3. getline(cin, cliente1);
  4.  
  5. cout<<"Nombre del cliente 1: "<<cliente1;
  6.  


Título: Re: No llama la funcion Cin
Publicado por: Hakim en 10 Agosto 2017, 05:13 am
Gracias a ambos, ya pude seguir al siguiente nivel.