Ayuda en un else, no me deja avanzar!!!!

fer_mhack

Bovino adicto
#1
Bueno tengo el siguiente programa, ya me funka muy bien y todo, pero quiero q si no encuentra moda, me mande un mensaje el cual hago con el else pero me marca error, alguien que me pueda ayudar a ver cual es el error, por favor


import java.util.Scanner;
class ejercicio2
{
public static void main (String [ ]FAL)
{
Scanner leer=new Scanner (System.in);
int x,i;
int total=0;
double promedio=0;
int max=0;
int min =0;
int moda=0;
int cont=0;


System.out.println ("Ingresa el tamaño del arreglo");
i=leer.nextInt ();
int Arr[]=new int;
for(int y=0; y<i;y ++)
{
System.out.println ("Ingresa tu Numeros Enteros");
Arr[y]=leer.nextInt ();
}
for (int w=0;w<i;w++)
{
total+=Arr[w];
}

System.out.println ("El total de los elementos del arreglo es:"+ total);
promedio=total/i;
System.out.println ("El Promedio es:"+ promedio);
for (int a=0;a<Arr.length;a++)
{
if (Arr[a]>max)
{
max=Arr[a];
}}
System.out.println ("El Numero Maximo es:"+ max);
min=Arr[0];
for (int b=0;b<i;b++)
{
if (Arr<=min)
{
min=Arr;
}}
System.out.println ("El Numero Minimo es:"+ min);
int num = 0, num2 = 0;
for(int c=0;c<i;c++)
{
for(int d=0;d<i;d++)
{
if(Arr[c]==Arr[d])
{
num++;
}
}
if(num > num2)
{
moda =Arr[c];
num2 = num;
}
{
num = 0;
}
{
System.out.println("La Moda es: "+moda);
}
else //aqui es lo que me marca error, pero ps yo digo que esta bien :)
{
System.out.println("No hay Moda entre los numeros");
}

}}}
 

GeorgeSouthy

Bovino adolescente
#2
Un tip

Un consejo, si vas a programar en Java, programa en Java, Java esta orientado a Objetos (POO), para este caso, debes crear una interfaz y una clase de negocio, bueno, eso sería una opinión, en tu codigo te puedo decir esto:

if(num > num2)
{
moda =Arr[c];
num2 = num;
}
else{ //Esta es la forma correcta debido a que Java tomo muchas cosas de C y tienes casi la misma estructura de control, en general el Compilador te mandara un error sintáctico, ya que un if{}else{} es una estructura correcta (seguido uno tras otro)

System.out.println("No hay Moda entre los numeros");
{//Las llaves no son necesarias, no se que quieres hacer o mejor dicho, no se que quieres decir al limitar con llaves, tal vez sea una de las cosas extrañas de la programación, ahí no te puedo ayudar, pero te puedo decir que nunca las he utilizado en todos mis programas (Solo como limitadores de funciones y procedimientos)
num = 0;
}
{
System.out.println("La Moda es: "+moda);
}
 

Zephyros

Bovino de la familia
#3
Por favor postea el código entre etiquetas CODE para que se preserve la indentación, así es un relajo entenderlo.
 

fer_mhack

Bovino adicto
#4
Un consejo, si vas a programar en Java, programa en Java, Java esta orientado a Objetos (POO), para este caso, debes crear una interfaz y una clase de negocio, bueno, eso sería una opinión, en tu codigo te puedo decir esto:

if(num > num2)
{
moda =Arr[c];
num2 = num;
}
else{ //Esta es la forma correcta debido a que Java tomo muchas cosas de C y tienes casi la misma estructura de control, en general el Compilador te mandara un error sintáctico, ya que un if{}else{} es una estructura correcta (seguido uno tras otro)

System.out.println("No hay Moda entre los numeros");
{//Las llaves no son necesarias, no se que quieres hacer o mejor dicho, no se que quieres decir al limitar con llaves, tal vez sea una de las cosas extrañas de la programación, ahí no te puedo ayudar, pero te puedo decir que nunca las he utilizado en todos mis programas (Solo como limitadores de funciones y procedimientos)
num = 0;
}
{
System.out.println("La Moda es: "+moda);
}

se agradece, tu ayuda me ayudast a resolver mi problema muchas gracias
 
#5
que feo programas man trata de estructurar tu programación, eso te ayudará mucho e identificarás los problemas mas rapidamente.
 

ChikoFree

Bovino adicto
#6
Por favor postea el código entre etiquetas CODE para que se preserve la indentación, así es un relajo entenderlo.
que feo programas man trata de estructurar tu programación, eso te ayudará mucho e identificarás los problemas mas rapidamente.
Coincido con los dos bakunos... Asi da flojera leerlo.

Por cierto, es mas facil usar el Swing de JAVA, aprovechalo en vez de usar la entrada por consola.
 
Arriba