Está en la página 1de 17

Facultad de Ingeniera

ESTUDIO DEL TRABAJO


Trabajo autnomo 3.1
ALUMNOS
ALBERCO CAPISTRANO, GUILLERMO

JIMENEZ DRAGO, RAUL ARMANDO

CICLO: III AULA: C0609

2017
Introduccin
En este trabajo realizamos la tcnica de recursividad para hallar diferentes tipos
de operaciones.
.
1.-como hallar las potencias de 2

package recursiva5;

import java.util.*;

/**

* @author giuli

*/

public class Recursiva5 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int num;

do{

System.out.print("Introduce un numero entero >=0 ");

num = sc.nextInt();

}while(num<0);

System.out.println("2 ^ " + num + " = " + potencia(num));

public static double potencia(int n){

if(n==0) //caso base

return 1;

else

return 2 * potencia(n-1);

}
2.-Transformar nmeros en binario
package recursividad4;

import java.util.*;

/**

* @author giuli

*/

public class Recursividad4 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int n;

do {

System.out.print("Introduzca numero >0: ");

n = sc.nextInt();

} while (n < 0);

System.out.println();

System.out.print("Binario: ");

decBin(n);

System.out.println();

public static void decBin(int n) {

if (n < 2) {

System.out.print(n);

return;

} else {

decBin(n / 2);

System.out.print(n % 2);

return;

}
}

}
3.- Como calcular la suma de 1 hasta N .

package recursiva3;

import java.util.*;

/**

* @author giuli

*/

public class Recursiva3 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int num;

do{

System.out.print("Introduce un numero entero >0 ");

num = sc.nextInt();

}while(num<=0);

System.out.println("Suma desde 1 hasta " + num + " = " + suma1N(num));

//mtodo recursivo para calcular la suma desde 1 hasta N

public static double suma1N(int n){

if(n == 1) //caso base

return 1;

else

return n + suma1N(n-1);

}
4.-Hallar una divisin

package recursividad22;

import java.util.*;

/**

* @author giuli

*/

public class Recursividad22 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int n1, n2;

System.out.print("Introduzca dividendo: ");

n1 = sc.nextInt();

do {

System.out.print("Introduzca divisor (>0): ");

n2 = sc.nextInt();

} while (n1 <= 0);

System.out.printf("%d/%d = %d %n", n1, n2, cociente(n1, n2));

public static int cociente(int a, int b) {

if (a < b)

return 0;

else

return 1 + cociente(a - b, b);

}
5.-Hallar una suma

package recursividad1;

import java.util.*;

/**

* @author giuli

*/

public class Recursividad1 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int n1, n2;

System.out.print("Introduzca primer numero: ");

n1 = sc.nextInt();

System.out.print("Introduzca segundo numero: ");

n2 = sc.nextInt();

System.out.println("suma: " + suma(n1, n2));

public static int suma(int a, int b) {

if (b == 0) {

return a;

} else if (a == 0) {

return b;

} else {

return 1 + suma(a, b - 1);

}
6.-Hallar una matriz

public class Recursividad {

private static int a=0, aux=1, b=0;

private static int[][] matriz = new int[6][6];

public static void main(String[] args) {

llenarMatriz(matriz, a, b);

imprimir();

public static void llenarMatriz(int matriz[][], int i, int j){

if(j > matriz.length -1){

i++;

j=0;

aux++;

if(i <matriz.length){

if(i==(aux-1) && j >= (aux-1)){

if(i==0)

matriz[i][j] = matriz[i][j]=aux;

else

matriz[i][j] = matriz[i][i-1]*2;

llenarMatriz(matriz, i , j+1);

else{
if(j==0)

matriz[i][j] = j+1;

else

matriz[i][j] = matriz[i-1][j];

llenarMatriz(matriz, i, j+1);

public static void imprimir(){

for(int i=0; i< matriz.length; i++){

for(int j=0; j< matriz.length; j++){

System.out.print(matriz[i][j] + " ");

System.out.print("\n");

También podría gustarte