elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Java Recursion
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Java Recursion  (Leído 1,705 veces)
josephb401

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Java Recursion
« en: 3 Diciembre 2015, 03:09 am »

¿Puede alguien decirme cómo arreglar mi código? Dejaré las descripciones que tuve para el programa.

Escriba un método que acepta un argumento entero positivo y devuelve la suma de todos los números enteros de 1 hasta
al número pasado como argumento. Por ejemplo, si se pasa 50 como argumento, el método devolverá
la suma de 1, 2, 3, 4, .., 50.
Utilice la recursividad para calcular la suma.
Demostrar el método en un programa. (Si lo desea, puede revisar su trabajo con la fórmula n (n + 1) / 2 *,
pero usted debe escribir un método recursivo para calcular la suma.)
Mano en su clase o clases.
* Esto se llama truco de Gauss, y aquí es una versión de la historia:
Gauss contó la historia que cuando él era un niño, el maestro se quedó sin cosas para enseñar y pidió que, en
el tiempo restante antes de tiempo de juego, para calcular la suma de todos los números del 1 al 20 (o similar ...
En realidad, las cifras fueron del 1 al 40!).
Gauss pensó que 1 + 20 es 21. Y 2 + 19 también es 21. Y esto es cierto para todos los pares similares, de los cuales
hay 10. Así que ... la respuesta es 210.

Código:
public class GaussTrick
{
//public static int num = 50;
public static int count = 0;
public static int halfNum = (50 / 2);;
public static int total= 0;
 
public static void main(String[] args)
{
 
int num = 50;
 
System.out.print(SumOfInt(num) );
 
SumOfInt(num);
 
//count = (20 * (20+1) / 2);System.out.print(count);
 
}
 
public static int SumOfInt(int num)
{
if(num == halfNum)
return total;
 
num--;
count++;
 
total = (num + count);
 
SumOfInt(num);
 
System.out.println(total);
 
return total;
 
 
}
 
}


En línea

DarK_FirefoX


Desconectado Desconectado

Mensajes: 1.263


Be the change you wanna see in te world


Ver Perfil
Re: Java Recursion
« Respuesta #1 en: 3 Diciembre 2015, 16:09 pm »

¿Y no puedes hacer?:

Código
  1. public static int SumOfInt(int num)
  2. {
  3.  if(num==1)
  4.    return 1;
  5.  return num + SumOfInt(num-1);
  6. }

Lo que te están diciendo en la orden del ejercicio es que la respuesta la compares con el resultado de aplicar la formula:

Citar
(n*n(+1))/2

Si es otra cosa lo que quieres hacer, por favor explícate mejor.

Salu2s


En línea

josephb401

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: Java Recursion
« Respuesta #2 en: 3 Diciembre 2015, 19:00 pm »

muchas gracias resulviste mi problema!!!!!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Ensamblador 8086] Recursión y uso del stack
ASM
eltongabinghiman 4 10,442 Último mensaje 20 Diciembre 2011, 01:45 am
por eltongabinghiman
Ayuda con este ejercicio de recursion en java.
Java
Phobos16 1 1,571 Último mensaje 30 Agosto 2014, 04:33 am
por gordo23
gramatica sin recursión a la izquierda
Dudas Generales
m@o_614 0 1,481 Último mensaje 5 Septiembre 2014, 03:52 am
por m@o_614
Problema de Backtracking (recursion)
Programación C/C++
KINGARZA 0 2,231 Último mensaje 6 Julio 2017, 08:17 am
por KINGARZA
Ayuda con recursion!!!!
Java
rociodyj 0 2,164 Último mensaje 23 Octubre 2017, 23:24 pm
por rociodyj
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines