Vous êtes sur la page 1sur 14

11111111111111111 // Sesion2.cpp : main project file. #include "stdafx.h" #include <stdio.h> #include <conio.

h> using namespace System; int* LeerDatos(int *v, int *cant) { printf("Ingrese N:"); scanf("%d", cant); v=new int[*cant]; for(int i=0;i<*cant;i++) { printf("Ingrese N%d :",i+1); scanf("%d",&v[i]); } return v; } void Imprimir(int *v, int cant) { for(int i=0;i<cant; i++) { printf("\nNumero %d : %d", i+1, v[i]); } } float Promedio(int *v, int cant) // el puntero se pone cuando se va a acanviar el valor de (cant) { float suma=0; for(int i=0;i<cant; i++) suma=suma+v[i]; return suma/cant; } float PromedioMayorQue(int *v, int cant) { float suma=0; int x,cont=0; printf("\n\nIngrese un Valor:"); scanf("%d",&x); for(int i=0;i<cant;i++) { if(v[i]>x)

{ suma=suma+v[i]; cont++; } } if(cont==0 ) //if(!cont) return 0; return suma/cont; } int* AgregarElemento(int *v, int *cant) { int *v2; v2=new int[(*cant)+1]; for(int i=0;i<*cant;i++) v2[i]=v[i]; delete []v; //libera el espacio de memoria

printf("\nIngrese N%d:",(*cant)+1); scanf("%d",&v2[*cant]); (*cant)++; //++*cant; return v2; } int main(array<System::String ^> ^args) { int *vec, *n; n=new int; vec=LeerDatos(vec,n); Imprimir(vec,*n); vec=AgregarElemento(vec,n); Imprimir(vec,*n); printf("\nPromedio: %.2f ",Promedio(vec,*n)); // ya que n es la direccion de memoria printf("\nNuevo Promedio :%.2f ", PromedioMayorQue(vec,*n)); delete n; delete []vec; _getch();

return 0; } //proxima Clase: realizar la funcion de la moda para el vector con vectores paralelos y Reaizar el menu // NumeroCapicua.cpp : main project file. #include "stdafx.h" #include <stdio.h> #include <conio.h> using namespace System; int main(array<System::String ^> ^args) { int *a, *ci, *N; a=new int; printf("Ingrese Numero:");scanf("%d",a);// a ya tiene space d memoria N=new int; *N=*a; ci=new int; *ci=0; while(*N>0) { *ci = (*ci)*10 + (*N)%10; *N = (*N)/10; } delete N; if( (*a)==(*ci) ) printf("Si es Capicua"); else printf("No es capicua"); delete a; delete ci; getch(); return 0; } // calculadora.cpp : main project file.

#include "stdafx.h" #include <stdio.h> #include <conio.h> using namespace System; int Suma(int *a, int *b) { return *a+*b; } int Diferencia(int *a, int *b) { if(*a >*b) return *a-*b; else return *b-*a; } int DivisionEntera(int *a, int *b) { return *a / *b; } float DivisionReal(int *a, int *b) { return *a/ (*b*1.0); } int Multiplicacion(int a, int b) { return a * b; } int main(array<System::String ^> ^args) { int *A,*B; //int r; A= new int; B= new int; printf("Ingrese A:"); scanf("%d",A); printf("Ingrese B:"); scanf("%d",B); //r=Suma(A,B); printf("Suma: %d \n",Suma(A,B)); printf("Diferencia: %d \n",Diferencia(A,B)); printf("Div. Entera: %d \n",DivisionEntera(A,B));

printf("Div Real: %.2f \n",DivisionReal(A,B)); printf("Multiplicacion: %d \n",Multiplicacion(*A,*B));

delete A; delete B; getch(); return 0; } // 1111.cpp : main project file. #include "stdafx.h" #include <stdio.h> #include < conio.h> using namespace System; int main(array<System::String ^> ^args) { float *B,*C; B=new float; C=new float; *B==16.4; *C==3.2; printf("la suma de %.2f y %.2f es %.2f\n",*B,*C,*B+*C); delete B; delete C; getch(); return 0; } // 2222.cpp : main project file. #include "stdafx.h" #include <stdio.h> #include <conio.h> #include <windows.h> using namespace System; int main(array<System::String ^> ^args) { Random r; int *num,*x;

int i=0; num=new int; x=new int; *x=r.Next(1,101); do{ printf("\nIntento: %d - Ingrese un numero[1,100]: ",i+1); scanf("%d",num); if(*num>*x) printf("El Numero a acertar es menor \n"); if(*num<*x) printf("El Numero a acertar es mayor \n"); i++; } while(*num!=*x); printf("\n\nACERTASTE %c %c %c !!!",1,1,1); getch(); return 0; } // MENU.cpp : main project file. #include "stdafx.h" #include <stdio.h> #include <conio.h> using namespace System; void menu(float *v,int n) { printf("==================================="); printf("\nLa direccion del vector: %p \nLa cantidad de elementos es %d",v,n); printf("\n==================================="); printf("\n\nMENU\n====\n"); printf("\n1 .Generar X numeros al azar con 2 decimales entre 0 y 100"); printf("\n2 .Agregar un numero."); printf("\n3 .Agregar X numeros."); printf("\n4 .Agregar un numero en la posicion X"); printf("\n5 .Imprimir"); printf("\n6 .Eliminar ultimo"); printf("\n7 .Eliminar numero de la posicion X"); printf("\n8 .Eliminar todos los numeros mayores al promedio"); printf("\n9 .Promedio"); printf("\nA .Ordenar"); printf("\nB .Mayor");

printf("\nC .Posicion del menor"); printf("\nD .Realizar copia del vector en otra direccion de memoria"); printf("\n\nPresione S para salir"); } float* Generar(int *cant)// cant es la direccion de memoria { float *v2; Random r; printf("Ingrese N:"); scanf("%d",cant); v2=new float[*cant]; for(int i=0;i<*cant;i++) { v2[i]=r.Next(1,10000)/100.00; } return v2; } float* Agregar1(float *v, int *cant) { float *v2; v2=new float[*cant+1]; for(int i=0;i<*cant;i++) v2[i]=v[i]; if(v!=NULL) delete []v; printf("Ingrese vec[%d]=",*cant); scanf("%f",&v2[*cant]); (*cant)++; return v2; } float* AgregarV(float *v, int *n) { int x; printf("Ingrese X="); scanf("%d",&x); float *v2; v2=new float[*n+x]; for(int i=0;i<*n;i++) v2[i]=v[i]; if(v!=NULL) delete []v;

for(int i=0;i<x;i++) { printf("Ingrese vec[%d]=",i+1); scanf("%f",&v2[i+*n]); } *n=*n+x; return v2; } float* AgregarEnPos(float *v,int *n) { float *v2; int pos; v2=new float[*n+1]; do{ printf("Ingrese Posicion:"); scanf("%d",&pos); }while(pos<0 || pos>*n); if(*n>0) { for(int i=0;i<pos;i++) v2[i]=v[i]; printf("Ingrese el Numero a agregar:"); scanf("%f",&v2[pos]); for(int i=pos;i<*n+1;i++) v2[i+1]=v[i]; if(v!=NULL) delete []v; *n=*n+1; } return v2; } float* EliminarUltimo(float *v,int *n) { float *v2; v2=new float[*n-1]; for(int i=0;i<*n-1;i++) v2[i]=v[i]; if(v!=NULL) delete []v; (*n)--; return v2; } float* EliminarPos(float *v, int *n) { float *v2;

int pos; v2=new float[*n-1]; do{ printf("Ingrese Posicicion a eliminar :"); scanf("%d",&pos); }while(pos<0 || pos>*n); for(int i=0;i<pos;i++) v2[i]=v[i]; v[pos]=0; for(int i=pos;i<*n;i++) v2[i]=v[i+1]; if(v!=NULL) delete []v; (*n)--; return v2; } float Promedio(float *v, int n) { float suma=0; for(int i=0;i<n;i++) suma=suma+v[i]; return suma/n; } float* Ordenar(float *v, int n) { int aux; for(int i=0;i<n-1;i++) { for(int j=i+1;j<n;j++) { if(v[i]>v[j]) { aux=v[i]; v[i]=v[j]; v[j]=aux; } } } return v; } float Mayor(float *v, int n) { float my; my=v[0]; for(int i=0;i<n;i++)

{ if(v[i]>my) my=v[i]; } return my; } int PosicionMenor(float *v,int n) { int pos,mn; mn=v[0]; for(int i=0;i<n;i++) if(v[i]<mn) { mn=v[i]; pos=i; } return pos; } float* EliminarMayorPromedio(float *v, int *n) { for(int i=0;i<*n;i++) if(v[i]>Promedio(v,*n)) v[i]=0; (*n)--; return v; } void CopiaVector(float *v, int n) { float *v2; v2=new float[n]; for(int i=0;i<n;i++) v2[i]=v[i]; } void Imprimir(float *v, int n) //n :cantidad de elementos { for(int i=0;i<n; i++) printf("vec[%d]=%6.2f\n",i,v[i]); _getch();// pausa } int main(array<System::String ^> ^args) { char c=0; float *vec=NULL; int n=0;

while (c!='s' && c!='S') { Console::Clear(); menu(vec,n); c=_getch(); Console::Clear(); switch(c) { case '1':{ if(vec!=NULL) delete []vec; vec=Generar(&n); }break; case '2':{ vec=Agregar1(vec,&n); }break; case '3':{ vec=AgregarV(vec,&n); }break; case '4':{ vec=AgregarEnPos(vec,&n); }break; case '5':{ Imprimir(vec,n); }break; case '6':{ vec=EliminarUltimo(vec,&n); }break; case '7':{ vec=EliminarPos(vec,&n); }break; case '8':{ vec=EliminarMayorPromedio(vec,&n); }break; case '9':{ printf("\nEl Promedio es %.2f",Promedio(vec,n)); getch(); }break; case 'A':case'a':{ vec=Ordenar(vec,n); }break; case 'B':case 'b':{ printf("El Mayor elemento es %.2f",Mayor(vec,n)); getch(); }break; case 'C':case 'c':{ printf("La Posicion del menor es %d. %c %c ",PosicionMenor(vec,n),1,1); getch(); }break; case 'D':{

int np; }break; } if(c!='s' && c!='S') c=0; } if(vec!=NULL) delete []vec; return 0; } // CONJUNTOS.cpp : main project file. #include "stdafx.h" #include <stdio.h> #include <conio.h> using namespace System; bool busca(int temp, int *v, int n) { for(int i=0;i<n;i++) if(v[i]==temp) return true; return false; } int* LeeElementos(int *n, char *nombre) { int *v; printf("\nIngrese el # elementos del %s:", nombre); scanf("%d",n); v=new int[*n]; for(int i=0;i<*n;i++) { int temp=0; do{ printf("Ingrese %s[%d]:", nombre,i); scanf("%d",&temp); }while(busca(temp,v,i)); v[i]=temp; } if(v!=NULL) delete []v; return v; } void Imprime(int *v, int n, char *nombre) {

printf("Los elementos del %s son:", nombre); for(int i=0;i<n;i++) printf("\n %d", v[i]); } int* unir(int *v, int *v1, int m, int n) { int *u; u=new int[m+n]; for(int i=0;i<m;i++) { u[i]=v[i]; } return u; } int* intersec(int *v, int *v1, int m, int n) { int *in, cont; in=new int[m]; for(int i=0; i<m; i++) { for(int j=0;j<n;j++) { if(v[i]==v1[j]) { in[cont++]=v[i]; } } } if(cont==0) return 0; else return in; } int main(array<System::String ^> ^args) { int *c1=NULL, *c2=NULL, nc1, nc2; char c=0; int *uni,*inter,*dif1, *dif2; int n=0; nc1=nc2=0; uni=inter=dif1=dif2=NULL; // cada vector de estos deben de tener su cantidad de elementos. while (c!='s' && c!='S') { Console::Clear(); printf("\n1. Ingrese Conjunto.");

printf("\n2. Imprime Conjunto."); printf("\n3. Union."); printf("\n4. Interseccion."); printf("\n5. Diferencia c1-c2."); printf("\n6. Diferencia c2-c1."); printf("\n\nPresione S para salir....."); c=_getch(); Console::Clear(); switch(c) { case '1':{ int opc; do{ printf("Ingrese el conjunto a ingresar[1-2]:"); scanf("%d",&opc); }while(opc!=1 && opc!=2); if(opc==1) c1=LeeElementos(&nc1,"Conjunto 1"); else c2=LeeElementos(&nc2,"Conjunto 2"); }break; case '2':{ int opc; do{ printf("Ingrese el conjunto a imprimir[1-2]:"); scanf("%d",&opc); }while(opc!=1 && opc!=2); if(opc==1) Imprime(c1,nc1,"Conjunto 1"); else Imprime(c2,nc2,"Conjunto 2"); getch(); }break; case '3':{ }break; case '4':{ inter=intersec(c1,c2,nc1,nc2); }break; case '5':{ }break; case '6':{ }break; } if(c!='s' && c!='S') c=0; } return 0; }

Vous aimerez peut-être aussi