ejercicios + soluciones en java

Iniciado por .rn3w., 26 Abril 2011, 00:53 AM

0 Miembros y 1 Visitante están viendo este tema.

.rn3w.

eliminar caracter de una cadena
(dieta y lo que comes)entrada:hola, la                           entrada: mundo , m
salida:ho                                                                      salida: undo
cada ves que comes la comida de tu dieta se reduce

public String ejercicioA1(String dieta, String []provar){

int tamPro  =   provar.length-1 ;
int i=0;
int a=0;
String alimento="";
int tamA=0;
int tamDieta=dieta.length()-1;

while(i<= tamPro){
alimento    =   provar[i];
tamA= alimento.length();
while(a<= dieta.length()-1 && tamA<= dieta.length()){

if(alimento.equals(dieta.substring(a,tamA))){
dieta=dieta.replace(dieta.substring(a,tamA)," ");

}
a++;
tamA++;
}
a=0;
i++;
}

return dieta;
}

.rn3w.

#11
Problem Statement
     You are given an integer num from which you should replace the last two digits such that the resulting number is divisible by factor and is also the smallest possible number. Return the two replacement digits as a String.



For instance:



if num = 275, and factor = 5, you would return "00" because 200 is divisible by 5.

if num = 1021, and factor = 11, you would return "01" because 1001 is divisible by 11.

if num = 70000, and factor = 17, you would return "06" because 70006 is divisible by 17.



public int invertir(int numero){
       int aux=0;
       while(numero>9){
       aux= aux*10+numero%10;
       numero=numero/10;    
   }
   aux= aux*10+numero;
       return aux;
   }
   public int reservando(int numero){
       int reserva=0;
       int cont=0;
   while(cont <2){
           reserva=reserva*10+numero%10;
       numero= numero/10;
       cont++;
       }
       return reserva;
   }
   public String  multiplosAumentados(int numero2, int factor){
   int numero= numero2;
   int reserva=0;
   int res=0;
   String contadorMultiplo=" ";
      numero=numero-(invertir(reservando(numero2)));

       while(numero%factor!=0){
       numero++;
       }
         res= invertir(reservando(numero));
         contadorMultiplo=  res+ " ";
       
       
   return contadorMultiplo;
   }
   
}

.rn3w.

todos los divisores de un numero
public ArrayList<Integer> divisores(int numero){
    int cociente=1;
    int copia= numero/2;
   
   ArrayList<Integer>  arreglo= new ArrayList<Integer> ();
       while(cociente<= copia){
        if(copia%cociente==0){
            arreglo.add(cociente);
        }
        cociente++;
        }
        arreglo.add(numero);
    return arreglo;
    }

no olviden poner
import java.util.*;
bye byeeeeeeeeeeeeeee

.rn3w.

import java.util.*;

public ArrayList<Integer> divisores(int numero){
    int cociente=1;
    int copia= numero/2;
   
   ArrayList<Integer>  arreglo= new ArrayList<Integer> ();
       while(cociente<= copia){
        if(copia%cociente==0){
            arreglo.add(cociente);
        }
        cociente++;
        }
        arreglo.add(numero);
    return arreglo;
    }


espero que les sirva //solo para novatos

.rn3w.

#14
ustedes tambien pueden poner ejercicios propuestos o resueltos a asi ayudarnos entre colegas de la programacion

dan_69

Escribe un programa que solo a través de procesos RECURSIVOS reciba dos cadenas c1 y c2, y
devuelva una respuesta que diga si c1 es sufijo de c2. Ej.-
Entradas Salidas
C1="ado" C2="Teclado" respuesta=true
C1="eon" C2="Cancion" respuesta=false
Recuerda que para obtener los caracteres de un String uno por uno debes utilizar el método
charAt(int i)

Me puenden ayudar??

Valkyr

Cita de: dan_69 en 30 Agosto 2011, 19:45 PM
Escribe un programa que solo a través de procesos RECURSIVOS reciba dos cadenas c1 y c2, y
devuelva una respuesta que diga si c1 es sufijo de c2. Ej.-
Entradas Salidas
C1="ado" C2="Teclado" respuesta=true
C1="eon" C2="Cancion" respuesta=false
Recuerda que para obtener los caracteres de un String uno por uno debes utilizar el método
charAt(int i)

Me puenden ayudar??

Código (java) [Seleccionar]

public boolean sufijo(String c1, String c2){
if(c1.length() == 0)
return true;
int aux = c1.length();
if(c1.charAt(c1.length()-1) == c2.charAt(c2.length()-1))
return sufijo(c1.substring(0, c1.length()-1), c2.substring(0, c2.length()-1));
else
return false;
}

dan_69

como hago esto ???
:PSe pide diseñar procesos(s) recursivo(s) necesario(s) para decidir si un número es un supernúmero.
Se dice que un número es un súper número, si y solo si la suma de sus dígitos al cuadrado, es
menor que la suma de los dígitos más significativos (excluyendo el dígito de la unidad) al cubo y
esta suma a su vez es menor que la suma de los dígitos más significativos (excluyendo las decenas)
elevadas a la cuarta, y así sucesivamente. Por ejemplo:
Caso 1:
n = 111111
no es súper número ya que la suma de sus dígitos al cuadrado 6 es mayor a la suma de los cubos del
numero sin unidades que es 5
Caso 2:
n = 55432
si es súper número, ya que la suma de los dígitos al cuadrado es 79 y menor que la suma de los
dígitos al cubo que es 341, y 341 es menor que la suma de los dígitos más significativos excluyendo
decenas elevado a la cuarta que es 1506. 1506 a su vez es menor que 6250 que vendría a ser la
suma de los dígitos a la 5 excluyendo las centenas.
Y por último 6250 es menor que 15625.

Valkyr

Tienes dos mensajes en el foro y los dos son haciendo peticiones de ejercicios. La primera me salté las normas del foro y te puse el código y ni si quiera has agradecido por el simple hecho de que NO es mi tarea y la postee. Ahora el segundo mensaje viene siendo más de lo mismo pidiendo ejercicios sin tan si quiera decir sí a ti se te ha ocurrido algo...

En fin.

dan_69

perdon por no agradecerte...mil gracias por el codigo ...  solo necesitaba ubicarme en el problema