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

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


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

Desconectado Desconectado

Mensajes: 48


xD Joder estoy aprendiendo xD


Ver Perfil WWW
Ayuda programa(Solucionado)
« en: 9 Agosto 2010, 03:16 am »

Hola

Amigos tengo el siguiente problema:
--------------------------------------------------------------------------------
Realizar un algoritmo que me permita obtener la nomina semanal de un empleado de una empresacuyo pago es por horas de la siguiente manera:

Si trabaja igual o menos de 48 horas se liquida el dia a una tarifa determinada que se induce por el usuario(igual el numero de horas)

si el trabaja mas de 48 horas se liquida por el valor del dia mas el 25% adicional en diagrama de flu e implementandolo en el computador.
--------------------------------------------------------------------------------

Y comenze haciendolo en el dev c++

Código:
#include<stdio.h>
#include<iostream>
using namespace std;
#include<conio2.h>
#include<math.h>

int tarifa,horas,nomina,porciento,tarifadeterminada;
main()
{
      cout<<"Ingrese la tarifa que se paga por hora\n";
      cin>>tarifa;
      
      cout<<"Ingrese la cantidad de horas trabajadas\n";
      cin>>horas;
      
      
      
      if(horas<=48){
                   tarifadeterminada=tarifa*horas;
                   cout<<"Su nomina es:   "<<tarifadeterminada;
                   }
                  
                   if(horas>48){
                                tarifadeterminada=tarifa*horas;
                                porciento=tarifadeterminada*25/100;
                                cout<<"Su nomina es:   "<<porciento;
                                }
                                getch();
                                }

Esto el lo poco que llevo... sonara "estupido" pero quisiera que ustedes me digan si voy bien o voy mal, quee me hace falta o si ya termine es que no entiendo bn el problema disculpen mi ignorancia porfavor.

Gracias


« Última modificación: 10 Agosto 2010, 00:56 am por XxRekcahlExX » En línea

emm?
rob1104


Desconectado Desconectado

Mensajes: 340


Usuario común


Ver Perfil WWW
Re: Ayuda programa
« Respuesta #1 en: 9 Agosto 2010, 05:11 am »

Hola, bien te ayudaré en lo que pueda.

Para empezar si no entiendes el problema jamás podrás resolverlo. El desarrollo de un programa no es solo sentarte en frente del IDE y empezar a escribir el código a como va saliendo, no... tienes que analizar el problema, entenderlo, comprenderlo, determinar como lo vas a resolover, hacer un algoritmo, un diagrama de flujo, escribir el codigo, realizar pruebas, y ya al ultimo implementarlo... pero bueno, a casi nadie le importa eso.

Ahora, vamos con el codigo.

Desde mi punto de vista, me parece horrible el mezclar C con C++, y me refiero a los headers, teniendo C++ sus propias funciones es totalmente inutil el utilizar los headers de C (los que terminan en .h).

Usar conio (en este caso conio2 para dev-c++) solo por usar getch() es obsoleto, recomiendo no utilizar ese header ni sus funciones en lo absoluto.

El uso de math.h (o cmath para C++) es innecesario, no utilizas ninguna de sus funciones.

Si deseas calculos mas exactos, recomiendo usar float en vez de int para tus variables, exceptuando la de hora

El estandar ISO C++ requiere que main() sea tipo entero para que devuelva un valor al Sistema Operativo (0 para terminación exitosa, cualquier otro valor para una terminación anormal o inesperada.)

Yo lo haria asi:
Código
  1. #include<iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.    int horas;
  8.    float tarifa,tarifadeterminada;
  9.  
  10.    cout<<"Ingrese la tarifa que se paga por hora\n";
  11.    cin>>tarifa;
  12.  
  13.    cout<<"Ingrese la cantidad de horas trabajadas\n";
  14.    cin>>horas;
  15.  
  16.    tarifadeterminada = tarifa*horas;
  17.  
  18.    if(horas>48)
  19.        tarifadeterminada = tarifadeterminada*25/100;
  20.  
  21.    cout<<"Su nomina es:   "<<tarifadeterminada;
  22.    cin.ignore();
  23.    cin.clear();
  24.    cin.get();
  25.    return 0;
  26. }
  27.  

Y pues si, al parecer ese código es la solución al enunciado.

Saludos



« Última modificación: 9 Agosto 2010, 05:15 am por rob1104 » En línea

Sin análisis de requisitos o sin diseño, programar es el arte de crear errores en un documento de texto vacío.
XxRekcahlExX

Desconectado Desconectado

Mensajes: 48


xD Joder estoy aprendiendo xD


Ver Perfil WWW
Re: Ayuda programa
« Respuesta #2 en: 9 Agosto 2010, 11:52 am »

Hola ^^


Tio muchas gracias me haz hecho caer en cuenta en muchas cosas como la de mesclar C Y C++, tambien debo de dejar de usar conio y de agregar librerias que no utilze, jejeje.

Solo tengo una pregunta porque no se puede incluir hora en float?

Muchas gracias, debo estudiar mas.

Grax sos groso
En línea

emm?
rob1104


Desconectado Desconectado

Mensajes: 340


Usuario común


Ver Perfil WWW
Re: Ayuda programa
« Respuesta #3 en: 9 Agosto 2010, 17:33 pm »

Solo tengo una pregunta porque no se puede incluir hora en float?
Porque tu enunciado indica que el pago es por horas enteras, el tipo float es para datos con precisión decimal, asi que no tiene caso que horas sea float si solo vas a caputar numeros enteros.

Saludos
En línea

Sin análisis de requisitos o sin diseño, programar es el arte de crear errores en un documento de texto vacío.
XxRekcahlExX

Desconectado Desconectado

Mensajes: 48


xD Joder estoy aprendiendo xD


Ver Perfil WWW
Re: Ayuda programa
« Respuesta #4 en: 10 Agosto 2010, 00:55 am »

OK

Muchas gracias ;) sos groso
doy por solucionado ;)

Salu2
En línea

emm?
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[BATCH] Novato ayuda con programa .bat[Solucionado]
Scripting
Iridiel 7 3,913 Último mensaje 13 Enero 2011, 20:19 pm
por Iridiel
Ayuda: programa que se lee asi mismo (SOLUCIONADO)
.NET (C#, VB.NET, ASP)
Maurice_Lupin 1 1,824 Último mensaje 26 Enero 2012, 02:35 am
por Maurice_Lupin
¿Ayuda error copilacion de programa c++? SOLUCIONADO
Programación C/C++
CristianD 0 865 Último mensaje 16 Junio 2015, 01:54 am
por CristianD
Mi programa no responde! (SOLUCIONADO)
Programación C/C++
MJI 2 889 Último mensaje 22 Diciembre 2018, 14:06 pm
por MJI
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines