ayuda codigo de arreglo

Iniciado por nevfuck, 1 Octubre 2010, 02:26 AM

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

nevfuck

buenas tardes a todo el foro, tengo tiempo entrando ala web, anteriormente tenia una cuenta, aunque deje de utilizarla, tengo un problema, agradeceria me ayudaran con este codigo, tengo este arreglo que, hace llenar el arreglo, suma el arreglo, promedia el arreglo, solo quiero saber como sacar el numero mayor del arreglo, el codigo es el siguiente:





#include <iostream.h>
#include <windows.h>
#include <conio.h>

void main (void)
{
   int op;
   int *a, e;
   int c;
   int s=0;
   int p=0;
   int mayor;

   
   
   
   do
   {
      system("cls");
      cout << "M    E    N    U" << endl;
      cout << endl << "1.- para introdusir el tamaño del arreglo" << endl;
      cout << "2.- para llenar el arreglo" << endl;
      cout << "3.- para sumar arreglo" << endl;
      cout << "4.- para promedia arreglo" << endl;
      cout << "5.- para encontrar el numero mas grande del arreglo" << endl << endl;
      cout << "6.- salir"<< endl << endl;
      cin >> op;
      system("cls");
      switch(op)
      {
      case 1:
         cout << "introduce el tamano del arreglo" <<endl;
         cin>>e;
         a= new int[e];
         getch();
           break;
      case 2:
         cout << "introduce los numeros del arreglo" << endl;
         for(c=0;c<e;c++)
         {
           cin >>a[c];
         }
         getch();
         break;
      case 3:
         cout << "la suma del arreglo es " << endl;
         for(c=0;c<e;c++)
         {
          s=s+a[c];
         }
         cout<< " la suma es "<<s<< endl;
         getch();
         break;
      case 4:
         cout << "el promedio del arreglo es " << endl;
         p = s/e;
         cout<< p << endl;
         getch();
         break;
      case 5:

-----------------------------------------------------------------------------------
    aqui tendria que ir como saber el numero mayor del arreglo...no se que poner o como hacerlo
------------------------------------------------------------------------------------------



   }while(op>=1 && op<=5);
}



el codigo va dentro del case.....
gracias :-\

while

int y, x;

for(c=0;c<e;c++)
{
if(a[c] > x)
{
x = a[c];
y = c;
}
}
el mayor es el que esta en la posición y. (que equivale a x)
(ojo, si hay varios valores de igual tamaño, te vale: el mayor es x)

Shell Root

Por ejemplo,
Código (cpp) [Seleccionar]
#include <iostream>

using namespace std;

int main() {

 int sVec[9] = {1,2,11,4,5,6,7,8,7};
 int i = 0;
 int sMayor = 0;

 sMayor = sVec[0];

 for(i=0; i<10; i++){
   if(sVec[i] > sMayor){
     sMayor = sVec[i];
   }
 }

 cout << "El número mayor es:" << sMayor << endl;

 return 0;

}


Resultado,
Código (PoC) [Seleccionar]
shellroot@alex-laptop:~/Escritorio$ g++ PoC.cpp
shellroot@alex-laptop:~/Escritorio$ ./a.out
El número mayor es:11
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

leogtz

Código (cpp) [Seleccionar]
int arreglo[MAX] = {1234, 234, 45, 6, 34, 6, 23, 98, 4};
    int mayor = *(arreglo + 0);
    for(int i = 0; i < MAX; i++)
    (*(arreglo + i) > mayor) ? mayor = *(arreglo + i) : mayor;
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com