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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


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

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Ayuda con arreglos
« en: 20 Junio 2012, 04:07 am »

Hola
necesito ayuda urgente
necesito realizar un programa que lea n numeros y almacene en 2 arreglos (10 elementos para cada arreglo), un arreglo que almacene los numeros positivos y otro con los negativos, el numero 0 sera ignorado
ya tengo algo del programa pero la verdad no se si este bien
Citar
import java.util.Scanner;
public class examfinal2{
   public static void main(String argumentos[]){
      int i=0,po=0,no=0, suma,cont=1,poscon=1,aux=0;
       Scanner entrada = new Scanner (System.in);
      double promp=0, promn=0;
      int datos1[] = new int[10];
      int datos2 []= new int[10];
      int datos3 []= new int[10];
      Scanner numero = new Scanner (System.in);
      while (cont!=0){
       System.out.printf("Ingresar 10 numeros positivos y 10 numeros negativos");
      for (i=0; i<20; i++){
         System.out.printf("\nIngresa numero :",i);
         datos1 = numero.nextInt();
         if (datos1==0){
            System.out.println("Ingresar otro valor");
            i--;
         }
      
      
         if (datos1>0){
          System.out.println("Numero Positivo");
          datos2[po]=datos1;
          i++;
          for(i=0; i<1; i++){
         System.out.printf("\nValor: %d posicion: %d",datos2[po], po++);}
         }

         if (po==10){

            System.out.println("\nIngresar otro valor");
            datos2[po]=datos1;
            po--;   
         }
      
         if (datos1<0) {
          System.out.println("Numero Negativo");
         datos3[no]=datos1;
         for(i=0; i<1; i++){
         System.out.printf("\nValor: %d posicion: %d",datos3[no], no++);}
         
         
         if (no==10){
            System.out.println("\nIngresar otro valor");
            datos3[no]=datos1;
            i++;
            no--;

            
         }
         }
      }
      for(i=0; i<20; i++){
         promp= promp+datos2[po];
      }
      promp= promp/10;
      System.out.printf("\nPromedio pares = %f",promp);
      
      for(i=0; i<20; i++){
         promn= promn+datos3[no];
      }
      promn= promn/10;
      System.out.printf("\nPromedio impares = %f",promn);
         System.out.printf("\nDesea volver a realizar las operaciones? SI[1]  NO[0]: ");
         cont = entrada.nextInt();
      
   
      

      }
   }
}


En línea

s00rk

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: Ayuda con arreglos
« Respuesta #1 en: 20 Junio 2012, 06:00 am »

En los arreglos debes indicar la posicion donde guardaras los valores lo cual no haces en datos1 e igual para ver algun valor ocupas indicar la posicion.


En línea

Slayer_Zero

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Ayuda con arreglos
« Respuesta #2 en: 20 Junio 2012, 06:32 am »

Ya casi esta listo lo unico que me falta es sacar el promedio pero no lo saca
me podrias ayudar a saber en que estoy mal?
Citar
import java.util.Scanner;
public class examenfinal{
   public static void main(String argumentos[]){
      int i=0,po=0,no=0, suma,cont=1,poscon=1,aux=0,n=0;
       Scanner entrada = new Scanner (System.in);
      double promp=0, promn=0;
      int datos2 []= new int[10];
      int datos3 []= new int[10];
      Scanner numero = new Scanner (System.in);
      while (cont!=0){
      System.out.printf("Ingresar 10 numeros positivos y 10 numeros negativos");
      for (i=0; i<20; i++){
         System.out.printf("\nIngresa numero :",n);
         n = numero.nextInt();
         if (n==0){
            System.out.println("Ingresar otro valor");
            i--;
         }
         if (n>0){
          System.out.println("Numero Positivo");
          if (po!=10){
            datos2[po]=n;
         System.out.printf("\nValor: %d posicion: %d",datos2[po], po++);
         }
         else {
            System.out.println("\nIngresar otro valor");
            i--;
            }
            }
         if (n<0) {
          System.out.println("Numero Negativo");
          if(no!=10){
          datos3[no]=n;
         System.out.printf("\nValor: %d posicion: %d",datos3[no], no++);}
         else {
            System.out.println("\nIngresar otro valor");
            i--;
         }
         }
         
         if(i==20){
            promp= promp+datos2[po];
            promp= promp/10;
              System.out.printf("\nPromedio pares = %f",promp);
              promn= promn+datos3[no];
            promn= promn/10;
              System.out.printf("\nPromedio impares = %f",promn);
      }
      }
      
      System.out.printf("\nDesea volver a realizar las operaciones? SI[1]  NO[0]: ");
         cont = entrada.nextInt();
      }
      }
   }
« Última modificación: 20 Junio 2012, 06:44 am por Slayer_Zero » En línea

s00rk

Desconectado Desconectado

Mensajes: 195



Ver Perfil
Re: Ayuda con arreglos
« Respuesta #3 en: 20 Junio 2012, 08:23 am »

El error esta en que estas intentando sacar el promedio dentro del bucle for, para sacar el promedio primero debes sumar todos los valores leidos y luego al salir del for, dividir la suma de estos entre el total que se leyeron.

Ademas nunca va a entrar a la condicion if(i == 20), ya que el bucle va de 0 a 19; i = 0; i < 20 (esto indica mientras i sea menor a 20 mas no igual), por lo que nunca entraria a ese bucle. Aparte de que promn y el otro solamente tendrian el valor del ultimo valor leido.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
COMPARAR LOS DOS ARREGLOS!! AYUDA
Programación C/C++
JoseCheO 0 7,133 Último mensaje 10 Noviembre 2011, 03:29 am
por JoseCheO
Ayuda con arreglos con ciclos
Java
jimytron 4 3,360 Último mensaje 22 Febrero 2012, 18:21 pm
por |Miguel|
ayuda con ejercicios de arreglos
Java
matiasnrmb 0 1,592 Último mensaje 2 Julio 2012, 07:19 am
por matiasnrmb
Ayuda con Arreglos y Menu programacion en C
Programación C/C++
smdiegoarmando 1 6,038 Último mensaje 7 Febrero 2013, 14:48 pm
por amchacon
Ayuda con un problema de arreglos en C.
Programación C/C++
noidroid 1 2,037 Último mensaje 26 Noviembre 2013, 06:04 am
por ThePinkPanther
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines