Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS FACULTAD DE INGENIERIA INDUSTRIAL ALGORITMOS Y PROGRAMACIÓN HORA:(3:30 – 5:30 pm) Tiempo 2 horas ASESOR: KLEYBER PILLACA OCHOA PREGUNTA 1: (PC2- LIZAMA 2019-II) ANALIZA EL PROBLEMA Y ESCRIBE SU VERSION RECURSIVA int misterio(int n) { int y=0; int x; while(n>0) { x=n%10; y+=x; //y=y+x n/=10; //n=n/10 } return y; } PREGUNTA 2: (PC 2 HUARI 2019-I ) Dado la función void VerDigitos(int n). En n recibe un numero entero mayor que 10 para luego escribir todos los dígitos del número. Implementar dicha función recursivamente. PREGUNTA 3: (PARCIAL 2019-II) Respecto del siguiente programa , se pide escribir las dos ultimas funciones #include <iostream> #include <cmath> #include <climits> // para INT_MAX , INT_MIN #include <string.h> #define N 100 using namespace std; struct Punto { int x; // coordenada x; int y; // coordenada y }; void IngresarPunto(Punto &p); void PrintPunto(Punto p); double Distancia(Punto p, Punto q); void LeerPuntos(Punto Datos [N], int n); void MostrarPuntos(Punto Datos[N], int n); char* DondeEsta(punto p); /* Averigua donde esta el punto y devuelve una cadena respecto a su ubicación: “Cuadrante I”, “Cuadradante II”, “Cuadradante III”, “Cuadradante IV”, “Eje de las abcisas”, “Eje de las ordenadas”, “Origen de coordenadas” */ void Reporte(Punto Datos[N], int n); /* Muestra un reporte acerca del número de puntos según su ubicación dado el arreglo de n objetos struct Punto. El reporte será similar al siguiente: */ PROBLEMA 4: (PARCIAL 2020-0) Escriba el código de las funciones ingresarPartidos y obtenerEquiposAlosQueLesGano Reporte : Cuadrante I : a puntos Cuadrante II : b puntos Cuadrante III : c puntos Cuadrante IV : d puntos Eje de las abcisas : e puntos Eje de las ordenadas : f puntos Origen de coordenadas : g puntos struct partido { char local[20]; //equipo local int gloc; //goles del equipo local char visit[20]; //equipo visitante int gvis; //goles del equipo visitante }; int main( ) { Int npar,neg,I; partido par[100]; char e[20], eg[100][20]; cout<<”Ingrese cantidad de partidos : ”; cin>>npar; ingresarPartidos(par,npar); cout<<”Ingrese un nombre de equipo: ”; fflush(stdin); gets(e); neg=obtenerEquiposAlosQueLesGano(e,par,npar,eg); if(neg==0) cout<<”El equipo “<<e<<”no ganó ningún partido”<<endl; else { cout<<”El equipo “<<e<<”ganó a los siguientes equipos : ”<<endl; for(i=0; i<neg; i++) cout<<eg[i]<<endl; } return 0; } PROBLEMA 5: (PARCIAL 2019-1) Se tiene el siguiente programa: struct fecha { int d,m,a; }; struct hora { int hh,mm; }; struct vuelo { char aerolinea[20]; //aerolínea que realiza el vuelo char ciuOrigen[20]; //ciudad de donde parte el vuelo char ciuDestino[20]; //ciudad de destino del vuelo fecha fsalida; //fecha de salida del vuelo hora hsalida; //hora de salida del vuelo }; void ingresarFechaHora(fecha &f, hora &h); void registrarVuelos(vuelo v[1000], int nv); int contarVuelos (vuelo v[1000], int nv); int main( ) { vuelo vue[1000]; Int nvue,cant; cout<<”Ingrese cantidad de vuelos que desea registrar : “; cin>>nvue; registrarVuelos(vue,nvue); cant=contarVuelos(vue,vnue); cout<<”Durante el mes de marzo del 2019 la aerolínea LATAM”; cout<<”realizó “<<cant<<” vuelos de Lima a Miami ”; cout<<”que partieron después del medio dia”<<endl; return 0; } PROBLEMA 6: (PARCIAL 2016-2) Implementar la solución para el siguiente problema. Si se sabe que la estructura llamada Persona que tiene 2 campos (edad y etapa) en el primero se almacena la edad que tiene o cumplirá durante este año la persona entrevistada, la edad debe ser calculada. En el otro campo que es una cadena, se almacena la etapa de la persona (ver tabla) #include <iostream> #include <string.h> #define N 100 using namespace std; //definición de las funciones //Funcion Principal int main( ) { Persona A[N]; int n; LeerAnyoNacimiento(A,n); // Lee el número de personas a registrar , año y calcula la edad CalculaEtapa(A,n);//Calcula la etapa de acuerdo a tabla Listado(A,n);//Muestra un listado. Un registro por línea PrintResumen(A,n); Calcula el numero de personas por etapa y lo muestra return 0; } EDAD ETAPA 0-6 INFANCIA 7-12 NIÑEZ 13-20 ADOLESCENTE 21-25 JUVENTUD 26-60 ADULTEZ MAYOR A 60 VEJEZ
Compartir