Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Busqueda de arrays

Estas en el tema de Busqueda de arrays en el foro de C/C++ en Foros del Web. Hola gente. Tengo un problemilla que estoy haciendo...es un programa en el cual tengo que hacer una busqueda secuencial y me dice la posicion del ...
  #1 (permalink)  
Antiguo 21/05/2010, 03:47
Avatar de tuka_85  
Fecha de Ingreso: febrero-2010
Ubicación: Santander/Huelva
Mensajes: 190
Antigüedad: 14 años, 8 meses
Puntos: 5
Busqueda de arrays

Hola gente.

Tengo un problemilla que estoy haciendo...es un programa en el cual tengo que hacer una busqueda secuencial y me dice la posicion del numero a buscar. Eso me lo hace perfectamente.

Pero lo que quiero hacer ahora, y no me sale muy bien es que me diga cuantos valores hay del numero que yo le digo, y que me cuente, cuantos son mayores y cuales son menores.

pego el codigo:

Código:
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <ctype.h>


#define maxi 10

void carga_aleatorios(int[], int, int, int);

void visualizar(int [], int);

void busqueda_secuencial(int [], int, int);

main()
{
    char resp=0;
    
    int numeros[maxi];
    
    int ele=0;
    
    int minimo=0;
    int maximo=0;
    
    int buscar=0;
    
    
    do
        {
    do
            {
        cout<<"\n\n\n\t";
        cout<<"Introduce el numero de elementos a generar (max 10)...";
        cin>>ele;
        if(ele<1 || ele>maxi)
        cout<<"\n\n\t\tError. Numero de elementos no valido";
        
            }while(ele<1 || ele>maxi);
    
    do
            {
        system("cls");
        cout<<"\n\n\t\tIntroduce el rango minimo :";
        cin>>minimo;
        cout<<"\n\n\t\tIntroduce el rango maximo :";
        cin>>maximo;
        
        if(maximo<=minimo)
        {
            cout<<"\n\n\t\tError. Rangos no validos";
            getch();
        }
        
            }while(maximo<=minimo);
     
         system("cls");
        carga_aleatorios(numeros, ele, minimo, maximo);
   
    
    do
        {
            system("cls");
            cout<<"\n\n\n\tLa serie generada es: ";
            visualizar(numeros,ele);
            cout<<"\n\n\n\tIntroduce el numero a buscar: ";
            cin>>buscar;
            
            busqueda_secuencial(numeros, ele, buscar);
            
            cout<<"Hay"
            
            cout<<"\n\n\n\n\t";
            cout<<"Pulse S para una nueva busqueda con los mismos numeros...";
            resp=tolower(getche());
        }while(resp=='s');
        
        do
        {
            cout<<"\n\n\n\n\t\t"<<(char)168<<"Otra serie (S/N)...?";
            resp=tolower(getche());
            if(resp!='s' && resp!='n')
            {
                cout<<"\n\n\t\tError. Introduce S/N...";
            }
            
        }while(resp!='s' && resp!='n');

    }while(resp=='s');
}

/*************************************Funcion de Carga de aleatorios*******************************************************************/

void carga_aleatorios(int numeros[maxi],int ele, int min, int max)
{
    srand(time(NULL));
    
    for(int i=0;i<ele;i++)
    
        numeros[i]=rand()% (max-min+1) + min;
        
        return;
    
}

/********************************************************************Funcion de visualizacion del array**********************************************/

void visualizar(int numeros[], int ele)
{
    for(int i=0; i<ele; i++)
    cout<<"   "<<numeros[i];
    return;
}

/**********************************************************************************Funcion de busqueda de un valor*************************************/

void busqueda_secuencial(int numeros[],int ele, int buscar)
{
    int contador=0;
    
    cout<<"\n\n\n\t\tPosiciones de valor "<<buscar<<" : ";
    
    for(int i=0;i<ele;i++)
    if(numeros[i] ==buscar)
    {
        contador++;
        cout<<(i+1)<<", ";
    }
    if(contador==0)
    cout<<"No existe el numero buscado";
    else
    //borramos la ultima coma
    cout<<"\b\b ";
    return;
    
}

Gracias de antemano

Etiquetas: arrays, busquedas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:05.