Translate

sábado, 5 de octubre de 2013

Tablas de multiplicar en java

Un ejercicio que me encontre almacenado


import java.util.Scanner;
public class TablaMultiplicar{
    public static void main(String[]arg){
     /*Confeccionar una clase que permita ingresar valores enteros por teclado y nos muestre la 
     * tabla de multiplicar de dicho valor. Finalizar el programa al ingresar el -1.*/
 TablaMultiplicar ta=new TablaMultiplicar();   
    ta.GetTabla();
   
    
    
    }
    private void GetTabla(){
        Scanner sca=new Scanner(System.in);
         int valor;
        do{
            System.out.println("Ingrese valor: ");
         valor=sca.nextInt();
            if(valor!=-1){
                Mecanismo(valor);
            }
        }while(valor!=-1);
         
    }
    
    private void Mecanismo(int v){
        for(int b=v;b<=v*10;b=b+v){
            System.out.print(b+"-");
        }
    }
    
}

viernes, 4 de octubre de 2013

Cajero automatico en C

Este es un ejercicio propuesto en clase sobre el funcionamiento de un cajero con n clientes 

Actualizado!!!

Para visualizar mejor este codigo clik aqui.

  1. /*EJERCIO PARCIAL(CAJERO AUTOMATICO)
  2. Se debe partir de la existencia de una base de datos de clientes identificados por un login una
  3. contraseña y un sueldo en pesos, por lo tato se deben almacer los datos de al menos 100
  4. clientes(todos los datos son numericos y enteros ).
  5.  
  6. 1.Se debe implementar una funcion que valide login y contraseña. La funcion recibe la base de
  7. datos, el tamaño,el login y la contraseña digitados por el usuario, los verifica contra la base de
  8. datos para luego retornar 1 que indica la validacion exitosa de datos, o un 0 que indica el ingreso
  9. delogin o contraseña incorrectos.
  10.  
  11. 2. Se debe implementar una funcion que permita modificar la contraseña.la funcion recibe la base
  12. de datos, el tamaño, y el login, pide la contraseña nueva realiza la modificacio en la base de
  13. datos.
  14.  
  15. 3.Se debe implementar una funcion que permita realizar una operacion de retiro o consignacion
  16. en la cuenta. La funcion recibe la base de datos, el tamaño el login, el tipo de operacion a realizar
  17. y el valor de la transaccion, realizando la modificacion correspondiente en la base de
  18. datos(sumarle o restarle al sueldo) y retornando para el caso del retiro o la consignacion un 1 si
  19. fue posible de realizar, o para el caso del retiro un 0 si no fue posible.
  20.  
  21. Es necesario contruir el programaprincipal que
  22. -Permita ingresar los datos iniciales,segun la cantidas de clientes indicada por el usario
  23. funcion que recibe la base de datos,el tamaño y la llena)
  24. -Luego, permita el ingreso de un cliente(login y contraseña), validando los datos (llamando a
  25. funcion).
  26.  
  27. -Luego en caso de que los datos sean validados, muestre un menu con las opciones de
  28. *cambio de contraseña,consignacion,retiro,salir)
  29. -luego segun la opcion escogida por el usuario permita capturar los datos, ejecutar las funciones y
  30. presentar los resultados solicitados*/


#include <stdio.h>
#include <stdlib.h>


void IngresarDatos(int t,int m[100][3])
{ int f;

    for(f=0;f<t;f++){

            printf("Ingrese el id para el cliente: %d\n",f+1);
            scanf("%d",&m[f][0]);

            printf("Ingrese la password para el cliente: %d\n",f+1);
            scanf("%d",&m[f][1]);

            printf("Ingrese sueldo para el cliente: %d\n",f+1);
            scanf("%d",&m[f][2]);

    }

}
///_______________________________________________________________________________________________________________________

int ValidarCliente(int t,int idCliente,int password,int m[100][3]){
int f,c,estado,cont=0;

for(f=0;f<t;f++){
    for(c=0;c<3;c++){
        if(m[f][c]==idCliente && m[f][1]== password){
            cont=cont+1;
        }
    }
}
if(cont!=0){
    estado=1;
}
return estado;
}

void ModificarPassword(int t,int idCliente,int m[100][3]){
int f,c,newpass;
for(f=0;f<t;f++){
    for(c=0;c<3;c++){
        if(m[f][c]==idCliente){
            printf("Ingrese nueva contraseña:\n");
            scanf("%d",&newpass);
            m[f][1]=newpass;
            printf("La contraseña ha sido cambiada!!!\n ");
        }
    }
}

}

int RetiroConsignacion(int t,int idCliente,int operacion,int valor,int m[100][3]){
    int estado,f,c,bande;

    switch(operacion){

    case 1:

          for(f=0;f<t;f++){
            for(c=0;c<3;c++){
                if(m[f][c]==idCliente && m[f][2]>valor){
                    m[f][2]=m[f][2]-valor;
                    bande=1;
                }
                }
          }

          if(bande==1){
            estado=1;
          }


        break;


    case 2:
        for(f=0;f<t;f++){
            for(c=0;c<3;c++){
                if(m[f][c]==idCliente ){
                    m[f][2]=m[f][2]+valor;
                    bande=1;
                }
            }
          }
          if(bande==1){
            estado=1;
          }
        break;

    }

    return estado;
}
    ///____________________________________________________________________________________________________________________


int main(){

    int matriz[100][3],numC,idC,password,ope,opc,valor;


    printf("Ingrese el numero de clientes a procesar:\n");
    scanf("%d",&numC);
    IngresarDatos(numC,matriz);
    printf("\n");



    printf("Iniciar sesion\n");
    printf(" ");
    printf("Ingrese id cliente:\n");
    scanf("%d",&idC);
    printf(" ");
    printf("Ingrese id password:\n");
    scanf("%d",&password);

    int login=ValidarCliente(numC,idC,password,matriz);

    printf("%d\n",login);
    if(login==1){
        do{
           printf("1.Cambiar contraseña.\n");
           printf("2.Consignar/Retirar.\n");
           printf("3.Salir.\n");
           scanf("%d",&opc);


           switch(opc){
           case 1:
               ModificarPassword(numC,idC,matriz);

               printf("\n");
            break;

           case 2:
               printf("Que desea hacer?\n");
               printf(" \n");
               printf("1.Para retirar.\n");
               printf("2.Para consignar.\n");
               scanf("%d",&ope);
               printf("ingrese el monto:\n");
               scanf("%d",&valor);
               int estadoRC=RetiroConsignacion(numC,idC,ope,valor,matriz);
               if(estadoRC==1){
                printf("La transaccion ha sido realizada exitosamente\n");


               }///Fin si
               if(estadoRC!=1){
                printf("Error,el monto supera el saldo actual!!!!\n");

               }///Fin si
            break;

           case 3:
               printf("HASTA LUEGO!!!");
            break;
           }///fin segun

        }while(opc!=3);
    }else {printf("id o contraseña incorrectos\n");}
    return 0;
}

martes, 1 de octubre de 2013

Manejo de datos personas en C

Este es un ejercicio de propuesto en clase
Solo tengo un error que no me  devuelve los porcentajes de hombres y mujeres desde la función, si alguien sabe el error me lo hace saber.... 


#include <stdio.h>
#include <stdlib.h>

///Funcion opcion 1___________________________________________________________________________________________________________
void IngresarDatosEstudiantes(int t,int m[150][4]){
int f,c;

printf("Ingrese los datos del estudiante en este orden seguido de la tecla ENTER: \n");
printf("Sexo: Masculino-->0.\n      Femenino--->1.\n\nEstado Civil:Soltero--->0.\n             Casado--->1.\n             Viudo--->2.\n\nTrabaja Si--->0.\n        NO--->1.\n\nSUELDO(sin decimales).\n\n");
for(f=1;f<=t;f++){///Filas
    for(c=1;c<=4;c++){///Columnas

           if(m[f][c]==m[f][1]){
            printf("Ingrese sexo del alumno #%d: \n",f);
            scanf("%d",&m[f][c]);
           }

           if(m[f][c]==m[f][2]){
            printf("Ingrese estado civil del alumno #%d: \n",f);
            scanf("%d",&m[f][c]);
           }

           if(m[f][c]==m[f][3]){
            printf("Ingrese si trabaja el alumno #%d: \n",f);
            scanf("%d",&m[f][c]);
            }///Fin si


            if(m[f][c]==m[f][4] ){
            printf("Ingrese el salario del alumno #%d (sindecimales): \n",f);
            scanf("%d",&m[f][c]);
           }





                    }///Fin columnas
                }///Fin filas
            }///Fin Funcion


///Funcion que devuelve un float opcion 2______________________________________________________________________________________
  float CalcularPor1(int t,int m[150][4]){
  int f,cont=0;
  float p,porce;
  for(f=1;f<=t;f++){

        if(m[f][1]==0){
            cont=cont+1;
        }
  }
  p=cont/t;
  porce=p*100;


  return porce;
  }

///__________________________________________________________________________________________________________________________


float CalcularPor2(int t,int m[150][4]){
  int f,cont=0;
  float p;

  for(f=1;f<=t;f++){

        if(m[f][1]==1){
            cont=cont+1;
        }

  }

  p=(cont/t)*100;


  return p;
  }
///__________________________________________________________________________________________________________________________

 void CantidadHMEC( int t,int e,int m[t][4]){///Calcular cantidad de hombres y mujeres para un estado civil ingresado
 int f,contM=0,contF=0;

 for(f=1;f<=t;f++){
    if(m[f][1]==0 && m[f][2]==e){
        contM=contM+1;
    }else if(m[f][1]==1 && m[f][2]==e){///Abre else
     contF=contF+1;
    }///Fin sino.
 }///Fin for

 printf("La cantidad de hombres para el estado civil ingresado es de: %d \n",contM);
 printf("La cantidad de mujeres para el estado civil ingresado es de: %d \n",contF);

 }///Fin funcion

///__________________________________________________________________________________________________________________________

void SueldoMujeres(int salario,int t,int m[t][4]){///Calcula las mujeres que devengan un sueldo igual o mayor al ingresado.
int f,contF=0;
for(f=1;f<=t;f++){
    if(m[f][1]==1 && m[f][4]>=salario){
        contF=contF+1;
       }///Fin si
      }///Fin for

    if(contF==0){
        printf("No hay mujeres que devengan un sueldo igual o mayor a %d\n",salario);
    }else if(contF!=0){
        printf("el numero de mujeres que trabajan y ganan un salario igual o mayor a %d es de %d\n",salario,contF);
    }///Fin sino



    }///Fin Funcion

///___________________________________________________________________________________________________________________________

void MostrarMatriz(int t,int m[t][4]){
int f,c;

printf(" ");
for(f=1;f<=t;f++){
    for(c=1;c<=4;c++){
        printf("matriz[%d][%d] %d ",f,c,m[f][c]);
    }
    printf("\n");
}
printf(" ");


}


///***************************************************************************************************************************
///_____________________________________________________________________________________________________________________________
int main()
{


     int matriz[150][4],opc=0,numE=0,eCivil=0,sueldoU=0;
     float  p1;
     //int p2=0;



     do{
        printf("\t\t***MANEJO DE LOS DATOS PERSONALESDE LOS ESTUDIANTES DEL PROGRAMA \t\tDE TECNOLOGIA EN SISTEMAS DE LA  UCP.***\n");
        printf("1.Ingrese el numero de estudiantes\n");
        printf("2.Calcular el porcentaje de hombres y mujeres.\n");
        printf("3.Calcular cantidad de hombres y mujeres para un estado civil.\n");
        printf("4.Calcular y mostrar la distribución de mujeres solteras que trabajan\n");
        printf("5.Salir.\n");
        scanf("%d",&opc);

        switch(opc){

    case 1:
        printf("Cuantos estudiantes va a ingresar?\n");
        scanf("%d",&numE);

        IngresarDatosEstudiantes(numE,matriz);
        printf("\n");


        break;

    case 2:

          MostrarMatriz(numE,matriz);
          printf("\n");
          p1=CalcularPor1(numE,matriz);
          printf("El procentage de hombres es de: %.2f",p1);
          printf("\n");
          int p2=CalcularPor2(numE,matriz);
          printf("El procentage de mujeres es de: %d",p2);
          printf("\n");

        break;

    case 3:
        printf("Ingrese estado civil:\nRecuerde Soltero=0,Casado=1,Viudo=2.\n");
        scanf("%d",&eCivil);

        CantidadHMEC(numE,eCivil,matriz);
        printf("\n");
        break;

    case 4:
        printf("Ingrese sueldo:\n");
        scanf("%d",&sueldoU);
        SueldoMujeres(sueldoU,numE,matriz);
        printf("\n");
        MostrarMatriz(numE,matriz);
        printf("\n");
        break;

    case 5:
       printf("HASTA LUEGO!!!!");
       printf("\n");

        break;


        }///Fin segun

     }while(opc!=5);

    return 0;
}