elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema en Algoritmo Basico de Ejercicio en C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema en Algoritmo Basico de Ejercicio en C++  (Leído 2,600 veces)
carlosjazzc1

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Problema en Algoritmo Basico de Ejercicio en C++
« en: 30 Mayo 2016, 19:21 pm »

Citar
Al llegar a la parte de el Nombre del Usuario
Código:
cin.getline(nombre, 30)
se salta este y no me permite ingresar la cadena de texto. Y pasa directamente al calculo de las horas empleadas


Código:
#include<iostream>
#include<string.h>
#include <stdlib.h>
#include <conio.h>
using namespace std;


    //SUJETOPROFESION
int horas_variable,num_empleados[10], z, i, empleo;
float sueldo1;
char obre, arq, limp;
char nombre[30];
string tip_empl;
    //PAGA
int obre_paga40 = 20;
int obre_pagaextra = 25;
int limpiador_paga20 = 15;
int limpiador_pagaextra = 25;
int ing_paga40 = 60;
int ing_pagaextra = 85;

int main(){
cout<<"*Calculo de pago de Trabajador*\n\n";
cout<<"*******************************";
cout<<("\nArea de el Empleado: ");
cout<<("\n 1. Obrero");
cout<<("\n 2 Limpiador");
cout<<("\n 3. Ingenierio\n\t");
cout<<"\tEsperando dato. . .\t";
cin>>empleo;

    switch(empleo)
    { case 1:
    cout<<endl<<"Cantidad de obreros.\t"<<endl;
    cin>>num_empleados[z];
    for(i=0;i<num_empleados[z];i++){
            cout<<endl<<"Usuario del obrero.\t"<<endl;
            cin.getline(nombre,30);
            cout<<endl<<"Usuario: "<<nombre<<endl;
            cout<<endl<<"Cuantas horas empleadas?.\t"<<endl;
            cin>>horas_variable;
            if(horas_variable<=40){
                sueldo1=horas_variable*obre_paga40;
                cout<<"El sueldo relativo es:"<<" "<<sueldo1<<"Bolivares Fuertes"<<endl;}
                if(horas_variable>40){
                    sueldo1=800+(25*(horas_variable-40));
                    cout<<"El sueldo relativo es:"<<" "<<sueldo1<<"Bolivares Fuertes"<<endl;}
                    getch();
                    system("cls" );


                }
    }
}


Me gustaria saber por que pasa esto, que estoy ignorando?


En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: Problema en Algoritmo Basico de Ejercicio en C++
« Respuesta #1 en: 30 Mayo 2016, 19:53 pm »

Te puede quedar el '\n' en el buffer stdin y es lo que recoge getline.


En línea

carlosjazzc1

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Problema en Algoritmo Basico de Ejercicio en C++
« Respuesta #2 en: 3 Junio 2016, 05:00 am »

eso era amigo use cin.ignore()
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ejercicio basico asm, digamos strstr en asm
ASM
neo_from_cs_matrix 0 3,435 Último mensaje 30 Julio 2011, 22:26 pm
por neo_from_cs_matrix
[PYTHON] Ayuda con ejercicio básico
Programación General
K4sS- 1 2,488 Último mensaje 7 Abril 2013, 22:47 pm
por K4sS-
Ayuda en ejercicio basico
.NET (C#, VB.NET, ASP)
The_Saint 2 2,620 Último mensaje 16 Abril 2013, 20:27 pm
por The_Saint
Ejercicio básico Python
Programación General
srg 3 2,921 Último mensaje 30 Octubre 2013, 01:46 am
por Mitsu
Duda Ejercicio básico java
Java
jpmarti91 0 2,859 Último mensaje 2 Octubre 2015, 16:14 pm
por jpmarti91
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines