Este blog fue creado con la intencion de aportar a los alumnos una ayuda con los ejercicios de la carrera de ingenieria de sistemas LEVI VELASQUEZ PAZ

Blogroll

sábado, 16 de diciembre de 2017

Programa para convertir un numero de base 10 a base b (entre 2 y 9)


import java.util.*;

class recursividad06 {

    public static void conversionBase(int n, int b) {
        if (n < b) {
            System.out.print(n);
        } else {
            conversionBase(n / b, b);
            System.out.print(n % b);
        }
    }

    public static void main(String args[]) throws IOException {
        Scanner in = new Scanner(System.in);
        int num, b;
        do {
            System.out.print("Ingrese numero :");
            num = Integer.parseInt(br.readLine());
        } while (num <= 0);
        do {
            System.out.print("Base a la que quiere convertir : ");
            b = Integer.parseInt(br.readLine());
        } while (b < 2 || b > 9);
        System.out.print("El numero " + num + " en base " + b + " es : ");
        conversionBase(num, b);
        System.out.println();
    }
}

Share:

Programa para reportar un numero al reves


import java.util.Scanner;

class recursividad05 {

    public static void reves(int n) {
        System.out.print(n % 10);
        if (n / 10 != 0) {
            reves(n / 10);
        }
    }

    public static void main(String args[]) throws IOException {
        Scanner in = new Scanner(System.in);
        int num;

        do {
            System.out.print("Ingrese numero :");
            num = in.nextInt();
        } while (num <= 0);
        System.out.print("Numero al reves :");
        reves(num);
        System.out.println();
    }
}

Share:

Programa para calcular el máximo común divisor de dos números.


import java.util.Scanner;

class Recursividad04 {

    public static int mcd(int a, int b) {
        if (a % b == 0) {
            return b;
        } else {
            return mcd(b, a % b);
        }
    }

    public static void main(String args[]) {
        Scanner in = new Scanner(System.in);
        int x, y;
        do {
            System.out.print("Ingrese primer numero :");
            x = in.nextInt();
        } while (x <= 0);
        do {
            System.out.print("Ingrese segundo numero :");
            y = in.nextInt();
        } while (y <= 0);
        System.out.println("El mcd de " + x + " y " + y + " es : " + mcd(x, y));
    }
}

Share:

Hacer un programa para que reporte los n términos de la serie de Fibonacci


import java.util.Scanner;

class Recursividad03 {

    public static int fibonacci(int n) {
        if (n == 1) {
            return 1;
        } else if (n == 2) {
            return 1;
        } else {
            return fibonacci(n - 1) + fibonacci(n - 2);
        }
    }

    public static void main(String args[]) {
        Scanner in = new Scanner(System.in);
        int n, i;
        do {
            System.out.print("Número de terminos de la serie : ");
            n = in.nextInt();
        } while (n <= 0);
        for (i = 1; i <= n; i++) {
            System.out.print(fibonacci(i) + " ");
        }
        System.out.println();
    }
}

Share:

Calcular la potencia de x elevado a la n en forma recursiva. x real y n entero positivo


import java.util.Scanner;

class Recursividad02 {

    public static double potencia(double x, double n) {
        if (n == 0) {
            return 1;
        } else {
            return x * potencia(x, n - 1);
        }
    }

    public static void main(String args[]) {
        Scanner in = new Scanner(System.in);
        int n;
        double x;
        System.out.print("Valor de x :");
        x = in.nextDouble();
        do {
            System.out.print("valor de n : ");
            n = in.nextInt();
        } while (n <= 0);
        System.out.println(x + " elevado a la " + n + " es igual a " + potencia(x, n));
    }
}

Share:

Hacer un programa para calcular el factorial de un número en netbeans

import java.util.Scanner;

class Recursividad01 {

    public static int factorial(int n) {
        if (n == 0) {
            return 1;
        } else {
            return n * factorial(n - 1);
        }
    }

    public static void main(String args[]) {
        Scanner in = new Scanner(System.in);
        int num;
        do {
            System.out.print("Ingrese numero :");
            num = in.nextInt();
        } while (num <= 0);
        System.out.println("El factorial es : " + factorial(num));
    }
}

Share:

Crear una lista enlazada donde se pueda ingresar , mostrar, ingresar al final, borrar , mayor de la lista y menor


package proyectolistasenlazadas;

import java.util.Scanner;

public class ProyectoListasEnlazadas {

    public static Scanner sc = new Scanner(System.in);
    public static ListaEnLazada miLista = new ListaEnLazada();

    public static void main(String[] args) {

        int op = 0;

        do {
            System.out.println("menu de opciones");
            System.out.println("[1] Ingresar elementos a las lista");
            System.out.println("[2] Mostrar lista");
            System.out.println("[3] Ingrese Elemento Al final");
            System.out.println("[4] Borrar numero del inicio");
            System.out.println("[5] Mayor numero");
            System.out.println("[6] Menor numero");
            System.out.println("[7] Promedio");
            System.out.println("[8] Ordenar Acendente ");
            System.out.println("[9] Eliminar por posicion");
            System.out.println("[10] Salir");
            System.out.println("Ingrese opcion[1-10]");
            op = sc.nextInt();
            switch (op) {

                case 1:

                    double x = 0;
                    System.out.println("numero de elementos de la lista");
                    int n = sc.nextInt();
                    for (int j = 0; j < n; j++) {
                        System.out.println("Ingrese numero::" + j);
                        x = sc.nextDouble();
                        miLista.insertarAlinicio(x);
                    }
                    break;
                case 2:
                    System.out.println("Los numeros ingresados son::");
                    miLista.mostrar();
                    break;
                case 3:
                    double e;
                    System.out.println("numero de elementos de la lista");
                    int r = sc.nextInt();
                    for (int i = 0; i < r; i++) {
                        System.out.println("Ingrese numer::" + i);
                        e = sc.nextDouble();
                        miLista.insertarAlFinal(e);
                  }
                    break;
                case 4:
                    System.out.println("Borrando numero del inicio");
                    miLista.borrarPrimero();
                    break;
                case 5:
               
                    miLista.mayor();
                    break;
                case 6:
                    miLista.menor();break;
                 
                case 7:
                    System.out.println("Promedio ");
                    miLista.promedio();
                    break;
                case 8:
                    System.out.println("ORDENAMIENTO ACENDENTE");
                    miLista.ordenarAcendente();
                    miLista.mostrar();
                    break;
                case 9:
                    System.out.println("Ingrese Numero a eliminar ");
                    double numero=sc.nextDouble();
                 
                    if(miLista.buscarPosicion(numero)!=-1){  
                        int p=miLista.buscarPosicion(numero);
                        miLista.borrar(p);
                        System.out.println("numero eliminado");
                    }else{
                        System.out.println("Nuemro no encontrado ");
                    }
                break;
                 
                default:
                    System.out.println("Saliendo del programa ");
            }
        } while (op != 10);
    }
}





SUB CLASE

package proyectolistasenlazadas;


public class ListaEnLazada {

    protected Nodo primero;
    private int tamaño = 0;

    public int getTamaño() {
        return tamaño;
    }

    public void setTamaño(int tamaño) {
        this.tamaño = tamaño;
    }

    public ListaEnLazada() {
        primero = null;
    }

    public Nodo getPrimero() {
        return primero;
    }

    public void setPrimero(Nodo primero) {
        this.primero = primero;
    }

    public boolean esVacio() {
        return primero == null;
    }

    public void insertarAlinicio(double x) {
        Nodo nuevo = new Nodo(x);
        nuevo.setInfo(x);
        if (esVacio()) {

            primero = nuevo;
        } else {
            nuevo.setSiguiente(primero);
            primero = nuevo;
        }
        tamaño++;

    }

    public void insertarAlFinal(double x) {
        Nodo nuevo = new Nodo(x);
        nuevo.setInfo(x);
        if (esVacio()) {
            primero = nuevo;
        } else {
            Nodo aux = primero;
            while (aux.getSiguiente() != null) {
                aux = aux.getSiguiente();
            }
         aux.setSiguiente(nuevo);
        }
        tamaño++;
    }

    public void mostrar() {
        Nodo p = primero;
        while (p != null) {
            System.out.println("[" + p.getInfo() + "]");
            p = p.getSiguiente();
        }
    }

    public void borrarPrimero() {

        primero = primero.getSiguiente();

    }

    public void mayor() {
        Nodo a = primero;
        double mayor = primero.getInfo();
        while (a != null) {

            if (a.getInfo() > mayor) {
                mayor = a.getInfo();

            }
            a = a.getSiguiente();

        }
        System.out.println("El mayor es " + mayor);
    }

    public void menor() {
        Nodo a = primero;
        double menor = primero.getInfo();
        while (a != null) {

            if (a.getInfo() < menor) {
                menor = a.getInfo();

            }
            a = a.getSiguiente();

        }
        System.out.println("El menor es " + menor);
    }

    public void promedio() {
        Nodo a = primero;
        double suma = 0;
        int con = 0;
        while (a != null) {
            suma += a.getInfo();
            con++;
            a = a.getSiguiente();
        }
        double promedio = suma / con;
        System.out.println("el promedio es" + promedio);
    }

    public int buscarPosicion(double x) {
        Nodo a = primero;
        int posi = -1;
        int con = 0;
        while (a != null) {
            con++;
            if (a.getInfo() == x) {
                posi = con;
            }
            a = a.getSiguiente();
        }
        return posi;
    }

    public void borrar(int pos) {
        if (pos >= 0 && pos < getTamaño()) {
            if (pos == 0) {
                primero = primero.getSiguiente();
            } else {
                Nodo aux = primero.getSiguiente();
                for (int i = 0; i < getTamaño(); i++) {
                    aux = aux.getSiguiente();
                }
                Nodo siguiente = aux.getSiguiente();
                aux.setSiguiente(siguiente.getSiguiente());
            }
            tamaño--;

        }

    }

     public void ordenarAcendente() {
       Nodo a=primero;
       double aux;
       while(a!=null){
           Nodo siguiente=a.getSiguiente();
           if(a.getInfo()>siguiente.getInfo()){
               aux= a.getInfo();
               a.setInfo(siguiente.getInfo());
               siguiente.setInfo(a.getInfo());
           }
           a=a.getSiguiente();
       }
     }
}




NODO

package proyectolistasenlazadas;

/**
 * Fecha: 15/05/2017
 * Autor: Antonio Aburto Cortez
 */
public class Nodo {
 
private double info;
private Nodo siguiente;

public Nodo(){
    siguiente=null;
}
 
public Nodo (double x){
   siguiente=null;
   info=x;
}
 
 public Nodo(double x,Nodo siguiente){
     info=x;
     this.siguiente=siguiente;
 }

    public double getInfo() {
        return info;
    }

    public void setInfo(double info) {
        this.info = info;
    }

    public Nodo getSiguiente() {
        return siguiente;
    }

    public void setSiguiente(Nodo siguiente) {
        this.siguiente = siguiente;
    }
 public void VerNodo(){
     System.out.println("["+info+"]");
 }


}
Share:

Buscar este blog

Con tecnología de Blogger.

Blog Archive

Blog Archive