Documente Academic
Documente Profesional
Documente Cultură
#include<stdio.h> j++;
#include<stdlib.h> }
#include<conio.h> }
j=5-1; main()
{
for(i=0;i<j;i++) int n;
{
aux=v[i]; printf("\n ingrese el tamano del vector:");
scanf("%d",&n);
v[i]=v[j];
int v[n];
v[j]=aux;
j=j-1; printf("\n digite los datos del vector: ");
llenar(v,n);
} paresimpares(v,n);
getch();
} }
return(centro);
}
else }
return(-1); }
} }
BUSQUEDA SECUENCIAL void imprimir (int v[], int n)
{
#include<conio.h> int i;
#include<stdio.h> printf (" \n\n ");
#include<stdlib.h> for (i=0;i<n;i++)
void llenar (int v[], int n); {
void imprimir (int v[], int n); printf (" %d",v[i]);
int secuencial (int v[], int n,int dato); }
main () }
{ int secuencial (int v[], int n, int dato)
int n,x,pos; {
printf ("\n Algoritmo busqueda int i;
secuencial"); for (i=0;i<n;i=i+1)
printf ("\n Ingrese el tamaño del vector"); {
scanf ("%d", &n); if (v[i]==dato)
int v[n]; return (i);
printf ("\n llenado del vecto"); }
llenar (v,n); }
printf ("\n Valores del vector");
imprimir (v,n); BUSQUEDA BINARIA 1
printf ("\n ingrese el valor a buscar");
scanf ("%d", &x); /* se requiere que el vector este ordenado,
pos=secuencial (v,n,x); asumiendo que sea de menor a mayor
if (pos < n) se empieza e buscar en la posicion
{ correspondiente a la mitad del tamano vector
printf ("\n el dato se encuentra en la si el valor comparado no es el buscado se
posicion %d", pos); cambia la region de busqueda asi:
} >> Sí el valor buscado es muy grande se busca
else entre la mitad y el extremo derecho
{ >> Sí es muy pequeño se busca entre el lado
printf ("\n el dato no existe"); izquierdo y la mitad
} Este proceso se repite mientras el valor no sea
system("pause"); encontrado y el extremo izquierdo
} sea menor o igual que el extremo derecho,
void llenar (int v[], int n) cuando esta condicion ya no se cumpla
{ sera porque el valor buscado no existe en el
int i; vector, en cuyo caso se retorna -1.
for (i=0;i<n;i++) Cuando el valor sea encontrado se retorna la
{ posicion.
printf ("\n valoresvector */
[%d]",i);
scanf ("%d", &v[i]); #include<stdio.h>
} #include<stdio.h>
} #include<conio.h>
#include<stdlib.h> // en windows de 32 las variables no
void llenar(int v[], int n); inicializadas pueden tener cualquier valor
int BusquedaBinaria(int v[], int n, int dato); (basura) aparentemente en windows 64 toda
variable es inicializada en 0.
void imprimir(int v[], int n); int izquierdo, derecho, centro;
void imprimir(int v[], int n); izquierdo = 0;
void imprimir(int v[], int n); derecho = n-1;
centro = (derecho + izquierdo ) / 2;
main()
{ while (v[centro]!=dato && izquierdo <=
int n, dato, pos; derecho ) // se sale del proceso porque
encontro la palabra y la segunda porque el
printf("\n\n ALGORITMO DE BUSQUEDA dato no existe vector
BINARIA\n\n");
{
printf("\n Digite la longitud del vector: ");
scanf("%d", &n); centro = (derecho + izquierdo ) / 2;
int v[n]; if (v[centro]>dato)
derecho = centro - 1;
printf("\n DIGITE LOS DATOS ORDENADOS else
DEL VECTOR\n"); izquierdo = centro + 1;
llenar(v,n); }
system("cls");
printf("\n los valores del vector son: ");
imprimir(v,n); if(v[centro]==dato)
printf("\n"); return(centro);
printf("\nDigite el dato a buscar: "); else
scanf("%d", &dato); return(-1);
}
pos=BusquedaBinaria(v, n, dato);
} #include<conio.h>
#include<stdio.h>
void llenar(int v[],int x)
{ void llenar(int v[]);
int i; void imprimir(int v[]);
printf("ingrese los numeros de su void asc_total_prom(int v[]);
verctor:\n");
for(i=0; i<x;i++) main()
{ {
scanf("%d",& v[i]); int v[50];
} llenar(v);
} imprimir(v);
asc_total_prom(v);
void imprimir(int v[],int x) getch();
{ return (0);
} T=T+v[i];
}
void llenar(int v[]) asc=Vmax-Vmin;
{ prom=T/12;
int i; printf("la venta maxima fue de %d en
printf("ingrese las ventas de cadada el mes de ",Vmax);
mes: "); if(Vmaxm==0){
for(i=0; i<12; i++) printf("Enero \n");
{ }
scanf("%d", & v[i]); if(Vmaxm==1){
} printf("Febrero \n");
} }
if(Vmaxm==2){
void imprimir(int v[]) printf("Marzo \n");
{ }
int i; if(Vmaxm==3){
printf("\t V Enero \t V Febrero \t V printf("Abril \n");
Marzo \t V Abril \t V Mayo \t V Junio \t V Julio }
\t V Agosto \t V Septiembre \t V Octubre \t V if(Vmaxm==4){
Noviembre \t V Diciembre \n"); printf("Mayo \n");
for(i=0; i<12; i++) }
{ if(Vmaxm==5){
printf("\t %d \t",v[i]); printf("Junio \n");
} }
printf("\n"); if(Vmaxm==6){
} printf("Julio \n");
}
void asc_total_prom(int v[]) if(Vmaxm==7){
{ printf("Agosto \n");
int i, asc, Vmax, Vmin, Vmaxm; }
float prom, T; if(Vmaxm==8){
Vmax=v[0]; printf("Septiembre \n");
Vmin=v[0]; }
for(i=0; i<12; i++) if(Vmaxm==9){
{ printf("Octubre \n");
if(v[i]>Vmax) }
{ if(Vmaxm==10){
Vmax=v[i]; printf("Noviembre \n");
Vmaxm=i; }
} if(Vmaxm==11){
if(v[i]<Vmin) printf("Diciembre \n");
{ }
Vmin=v[i]; printf("la ventas acendieron de %d a
} %d con un total de %d \n",Vmin,Vmax,asc);
printf("El total de las ventas fue de %f
\n",T);
printf("El pormedio de las ventas fue
de %f \n",prom);
}