Translate

jueves, 19 de septiembre de 2013

Ordenar una matriz en C

Metodo para ordenar una matriz


#include <stdio.h>


int main()
{
     int f=3,c=4,mayor=0;
     int matriz[f][c],i,j,x,y;
     //lleno la matriz
    for(i=0; i<f; i++)
    {
        for( j=0; j<c; j++)
        {
             printf("introducir datos:");
             scanf("%d",&matriz[i][j]);
        }
    }
    //imprimo la matriz como se lleno
     printf("\nLos Datos De La Matriz Fuero Introducidos Asi\n");
    for(i=0; i<f; i++)
    {
        for( j=0; j<c; j++)
        {
            printf("matriz[%d][%d] %d \n",i,j,matriz[i][j]);
        }
        printf(" ");
    }

     //ordeno la matriz de mayor a menor
     for( i=0; i<f; i++)
     {
        for( j=0; j<c; j++)
        {
            for( x=0; x<f;x++)
            {
                for( y=0; y<c; y++)
                {
                    if(matriz[i][j]>matriz[x][y])
                    {
                        mayor=matriz[i][j];
                        matriz[i][j]=matriz[x][y];
                        matriz[x][y]=mayor;
                    }

                }
            }
         }
    }

    //imprimo la matriz como ordenada
    printf("\nLos Datos De La Matriz Fueron Ordenados de Mayor a Menor\n");
    for( i=0; i<f; i++)
    {
        for( j=0; j<c; j++)
        {
            printf("matriz[%d][%d] %d \n",i,j,matriz[i][j]);
        }
        printf(" ");
    }

    return 0;
}

Manejo de vectores en C

Ordenar el vector (mayor a menor y viceversa), hallar el mayor y menor, buscar un valor indicar si se encuentra en el vector,buscar valor y cambiarlo.


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

///Funcion mostrar
void mostrar( int ta,int ve[ta]){
    int i;
for(i=0;i<ta;i++){
    printf("vector[%d] %d\n",i,ve[i]);
}
}
 int main(){
 ///Llenar un vector de n posiciones, ordenar de menor a mayor, y viceversa,
 ///obtener el numero mayor y menor, buscar un numero, pedir un numero y cambiarlo por el que se desee.
 int num=0;
 int pos=0;
 int b=0;
 int t=0;
 int bande=0;
 int i=0;
 int j=0;

 printf("Ingrese el tamaño del vector: ");
 scanf("%d",&t);


 int v[t];

printf("\ningrese los %d numeros:\n",t);
for(i=0;i<t;i++){
scanf("%d",&v[i]);
 }


 mostrar(t,v);

///Ordenar de menor a mayor
 int aux;
for(i=0;i<t;i++){
   for(j=0;j<t;j++){
   if(v[i]<v[j]){
      aux=v[i];
      v[i]=v[j];
      v[j]=aux;
    }
    }
}
 printf("\nVector ordenado de menor a mayor: \n");
 mostrar(t,v);

///Ordenar de menor a mayor

for(i=0;i<t;i++){
   for(j=0;j<t;j++){
   if(v[i]>v[j]){
      aux=v[i];
      v[i]=v[j];
      v[j]=aux;
    }
    }
}

printf("\nVector ordenado de mayor a menor: \n");
mostrar(t,v);

///Numero mayor
int mayor=v[0];
for(i=0;i<t;i++){
for(j=0;j<t;j++){
if(mayor<v[j]){
    mayor=v[j];
}
}
}
printf("El numero mayor es: %d ",mayor);



///Numero menor
mayor=v[0];
for(i=0;i<t;i++){
for(j=0;j<t;j++){
if(mayor>v[j]){
    mayor=v[j];
}
}
}
printf("El numero menor es: %d \n",mayor);




///Buscar un numero
printf("Buscar un valor en el arreglo.\n");
printf("Ingrese un numero\n");
scanf("%d",&b);

for(i=0;i<t;i++){
    if(v[i]==b){
        bande=1;
    }
}
if(bande==1){
    printf("El numero se encuentra en el vector.\n");
}else{
printf("El numero %d no se encuentra en el vector.\n",b);
}

///Buscar un numero y reemplazarlo.
printf("Buscar un valor en el arreglo y reemplazarlo.\n");
printf("Ingrese un numero\n");
scanf("%d",&b);

for(i=0;i<t;i++){
    if(v[i]==b){
        pos=i;
        bande=1;
    }
}

 if(bande==1){
    printf("Ingrese el nuevo numero:\n");
    scanf("%d",&num);
    v[pos]=num;
    printf("Numero cambiado\n");
 }

 mostrar(t,v);

 return 0;
 }

domingo, 15 de septiembre de 2013

Calculadora básica en Java

Clase principal

import javax.swing.JOptionPane;

public class CalculadoraPrincipal { //iniciacion de la clase
    public static void main (String[] args){ //metodo principal
        int op=0, n1=0, n2=0; //op variables para el menu, n1 y n2 variables de los numeros
        String ax; //variable que recibe los numeros
        CalculadoraOperaciones trin = new CalculadoraOperaciones(); //objeto llamado trin de la clase operaciones para usar los metodos
        do{//comienzo del ciclo
            op = JOptionPane.showConfirmDialog(null,"Desea ingresar dos numeros y mostrar el resultado "
                    + "\nde las 4 operaciones basicas?");//cuadro de dialogo de tipo entrada
            if(op == JOptionPane.YES_OPTION){//si se selecciona SI hara lo que hay en el bloque
                ax = JOptionPane.showInputDialog(null, "Digite el primer numero: ");
                if(trin.isNum(ax)){//primera validacion
                    n1 = Integer.parseInt(ax);//n1 toma el valor convertido del anterior cuadro de dialogo
                    ax = JOptionPane.showInputDialog(null, "Digite el segundo numero: ");
                    if(trin.isNum(ax)){//segunda validacion
                        n2 = Integer.parseInt(ax);//n2 toma le valor convertido del anterior cuadro de dialogo
                        JOptionPane.showMessageDialog(null, "El resultado de la suma es: "+trin.suma(n1, n2)//se usa el metodo de suma de la clase operacioes
                                                   +"\nEl resultado de la resta es: "+trin.resta(n1, n2)//se usa el metodo de resta de la clase operaciones
                                                   +"\nEl resultado de la multiplicacion es: "+trin.multiplicacion(n1, n2)//se usa el metodo de multiplicacion de la clase operaciones
                                                   +"\nEl resultado de la division es: "+trin.division(n1, n2));//se usa el metodo de division de la clase operaciones
                    }//final segunda validacion
                    else{
                        JOptionPane.showMessageDialog(null, "Ingrese un numero","Advertencia !!!", JOptionPane.WARNING_MESSAGE);
                    }
                }  //final primera validacion
                else{//se muestra un mensaje y no se realiza las operaciones ya que el primer valor no es un numero
                    JOptionPane.showMessageDialog(null, "Ingrese un numero","Advertencia !!!", JOptionPane.WARNING_MESSAGE);
                }                     
            }//finaliza bloque
            else if(op == JOptionPane.NO_OPTION){//si se selecciona NO hara lo que hay en el bloque
                JOptionPane.showMessageDialog(null, "Si desea terminar la aplicacion elige Cancelar.","Advertencia !!!" ,JOptionPane.WARNING_MESSAGE);//mensaje de advertencia
            }//finaliza bloque
        }while(op!= JOptionPane.CANCEL_OPTION);//el ciclo finaliza cuando se da cancelar
        System.exit(0);//linea para asegurar la finalizacion del programa     
    }  //fin metodo principal  
}//final de la clase


Clase secundaria la cual contiene los metodos

public class CalculadoraOperaciones { //comienzo clase operaciones
 
    public int suma(int n1, int n2){//metodo para sumar, recibe dos numeros
        int op; //variable que almacena la respuesta
        op = n1 + n2; //operacion
        return op; //devuelve el valor de la operacion
    } //fin metodo suma
    public int resta (int n1, int n2){ //metodo para restar, recibe dos numeros
        int op; //variable que almacena la respuesta
        op = n1 - n2; //operacion
        return op; //devuelve el valor de la operacion
    }// fin metodo resta
    public int multiplicacion(int n1, int n2){ //metodo para multiplicar, recibe dos numeros
        int op; //variable que almacena la respuesta
        op = n1 * n2; //operacion
        return op; //devuelve el valor de la operacion
    } //fin metodo multiplicacion 
    public int division(int n1, int n2){ //metodo para division, recibe dos numeros
        int op; //variable que almacena la respuesta
        op = n1 / n2; //operacion
        return op; //devuelve el valor de la operacion
    }//fin metodo division
    public boolean isNum(String n){//metodo para validar si se ha ingresado un numero, recibe una cadena de texto
        int a;//variable que almacena la cadena a convertir
        try{  
            a = Integer.parseInt(n); //se convierte la cadena      
            return true; //si se ha convertido a entero devuelve verdadero
        } 
        catch(NumberFormatException e){ 
            return false; //si no se ha convertido a entero devuelve falso
        }
    }//fin metodo validar
}//fin clase operaciones




Ordenar un arreglo unidimensional de menor a mayor en C



int main()
{
     //ordenar un vector de menor a mayor
     int v[10];


     int i,j;
     int aux=0;
     for(i=0;i<10;i++){
        printf("Ingrese numero: ");
        scanf("%d",&v[i]);
     }

     for(i=0;i<10-1;i++){
        for(j=i+1;j<10;j++){
            if(v[i]>v[j]){

                aux=v[i];
                v[i]=v[j];
                v[j]=aux;
            }
            }
        }
     printf("VECTOR ORDENADO DE MENOR A MAYOR!!\n");
    for(i=0;i<10;i++){
        printf("\t\tVECTOR[%d]%d\n",i,v[i]);
    }
    return 0;
}

Cargar una matriz en Java

import java.util.Scanner;

public class OrdenarMatriz02 {


public static void main(String[] args) {
            Scanner teclado=new Scanner(System.in);

System.out.println("introduce las filas");
int n=teclado.nextInt();//pide las filas
System.out.println("introduce las columnas");
int m=teclado.nextInt();//pide las columnas
int j=0,i=0,t=0;
int mat[][]=new int [n][m];
for ( i=0;i<n;i++){
for(  j=0;j<m;j++){
System.out.println("introduce el numero en la pocision  "+i+"  "+j);
mat[i][j]=teclado.nextInt();//pide el nnumero
}
}
for ( i=0;i<n;i++){//imprime la matriz como ingresaste los datos
for(  j=0;j<m;j++){
System.out.print(mat[i][j]+" ");
}
System.out.println("");
}
}
}