Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/04/2011, 11:28
Avatar de Geekne
Geekne
 
Fecha de Ingreso: marzo-2011
Ubicación: Donde estoy? Washing you.
Mensajes: 30
Antigüedad: 13 años, 9 meses
Puntos: 0
Busqueda Lineal [Duda]

Saludos. Bueno, hace un rato me puse a hacer el codigo de busqueda lineal en vectores:

Código C:
Ver original
  1. #include <stdio.h>
  2.  
  3. #define tf 10
  4. typedef vector[tf];
  5.  
  6. void busquedavector(vector vec1, int valor);
  7.  
  8. main() {
  9.  
  10. vector vector1={32,2,3,4,5,6,7,8,9,10};
  11. int valor, res=0;
  12. char r;
  13.  
  14.     do{
  15.  
  16.         printf("\nIngrese el valor que desea buscar: ");
  17.         scanf("%d", &valor);
  18.  
  19.         busquedavector(vector1, valor);
  20.    
  21.         printf("\nDesea buscar otro valor? (s/n) :");
  22.         scanf("%s", &r);
  23.  
  24.     if (r=='s'){
  25.         res=1;
  26.     }
  27.     else
  28.     {
  29.         res=0;
  30.     }
  31.  
  32.  
  33.     }while(res==1);
  34. }
  35.  
  36. void busquedavector(vector vec1, int valor)
  37. {
  38.  
  39. int i=0, band=0;
  40.  
  41.     while((i<tf)&&(band==0)){
  42.         i=i+1;
  43.         if(vec1[i]==valor){
  44.             band=1;
  45.         }
  46.     }
  47.    
  48.     if(band==1){
  49.         printf("\nSe encontro en valor en la posicion: %d\n\n", i);
  50.     }
  51.     else
  52.     {
  53.         printf("\nNo se encontro el valor deseado.\n\n");
  54.     }  
  55.            
  56.  
  57. }

Es de practica. y todo me va bien, pero cuando busco el valor 1 me imprime que no es encontrado. Porque sera?
__________________
Software libre rocks lml