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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema al mostrar posicion de un array
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema al mostrar posicion de un array  (Leído 7,670 veces)
BJM

Desconectado Desconectado

Mensajes: 41


Ver Perfil
Problema al mostrar posicion de un array
« en: 19 Octubre 2012, 18:19 pm »

El siguiente codigo se encarga de buscar el numero mayor de un array de enteros, luego al final cuando se muestra la posicion de origen donde se ubico ese valor, no es el correcto, y aqui el codigo:

Código
  1. #include<stdio.h>            
  2. #include<stdlib.h>
  3. #include<iostream>
  4. using namespace std;
  5.  
  6. main(){
  7.       int tem=0,may=0,pos=0,i,j,array[9];
  8.        for(i=0;i<10;i++){
  9.        cout<<"\n ingrese valor de array["<<i<<"]= ";
  10.        cin>>*(array+i);
  11.        }
  12.        for(i=0;i<9;i++){
  13.         for(j=i+1;j<10;j++){
  14.          if(*(array+i)>*(array+j)){
  15.              pos=i;                      
  16.           tem=*(array+i);           /*intercambio*/
  17.           *(array+i)=*(array+j);                      
  18.          *(array+j)=tem;
  19.          may=tem;                         /* asignacion */
  20.          }
  21.          else
  22.          pos=j;
  23.          may=*(array+j);
  24.  
  25.           }
  26.             }
  27.          cout<<"\n Valor mayor= "<<may<<" En la posicion array["<<pos<<"]";
  28.  
  29.          cout<<"\n\n";
  30.          system("pause");
  31.          }
  32.  


En línea

ecfisa

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: Problema al mostrar posicion de un array
« Respuesta #1 en: 20 Octubre 2012, 05:02 am »

Hola.

Si solo tenes que mostrar el mayor valor y su posición (índice) no es necesario realizar intercambio alguno.

Código
  1. #include<iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.  int array[10];
  8.  
  9.  for(int i=0; i<10; i++)
  10.  {
  11.    cout << endl << "ingrese valor de array[" << i << "]= ";
  12.    cin >> array[i];
  13.  }
  14.  
  15.  int may=0, pos = 0;
  16.  for(int i=0; i<10; i++)
  17.    if (array[i] > may)  
  18.    {
  19.      may = array[i];
  20.      pos = i;
  21.    }
  22.  cout << endl << "Valor mayor= " << may << " En la posicion array[" << pos <<"]";
  23.  cout << endl << endl;
  24.  cin.get();
  25.  cin.get();
  26. }
  27.  

Saludos.


En línea

avaquerotoba

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: Problema al mostrar posicion de un array
« Respuesta #2 en: 19 Diciembre 2018, 17:58 pm »

Si pones pos = i, va a seguir estando mal ya que el array empieza en la posición 0 tendría que ser pos = i +1.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
problema con array
Programación Visual Basic
Free-Knowledgend 4 1,941 Último mensaje 3 Julio 2006, 23:33 pm
por <--v1c1ous-->
Problema con Array
PHP
Riki_89D 5 2,682 Último mensaje 12 Marzo 2009, 15:39 pm
por Riki_89D
Problema con posición de ventana con ollydump
Ingeniería Inversa
.:UND3R:. 7 4,394 Último mensaje 13 Septiembre 2011, 02:30 am
por .:UND3R:.
Problema en volver la posición del elemento maximo de un vector
Programación C/C++
Denok 8 7,445 Último mensaje 15 Diciembre 2011, 15:34 pm
por Denok
Dar formato al mostrar array de estructura en C
Programación C/C++
Torino10 4 2,716 Último mensaje 19 Abril 2012, 19:00 pm
por Torino10
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines