



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Asignatura: Álgebra lineal y geometría, Profesor: Jose Luis Bernier, Carrera: Física, Universidad: UGR
Tipo: Exámenes
1 / 6
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!




Programación
CALIFICACIÓN:
n
= 1 si k = 0 o n = k
n
=
n − 1
n − 1
//Ejercicio 1 void FactoresPrimos(int num, int fprimos[]) { int i,j; bool estacontado; //Para controlar no añadir factores repetidos estacontado=false; i=0; //indica la posición donde copiar los primos j=2; //Recorre los valores enteros susceptibles de dividir al número while(num>1) { if(num%j==0) { if(estacontado==false) //Si no se ha añadido aún, se copia en el vector { fprimos[i]=j; i++; estacontado=true; //Para evitar copiarlo de nuevo si repite } num=num/j; } else { j++; //Se prueba con el siguiente número estacontado=false; //Este j aún no se ha copiado al vector } } fprimos[i]=1; //Pongo un 1 al final return; } //Ejercicio 2 bool PrimosRelativos(int n1, int n2) { int primosn1[MAX], primosn2[MAX]; int i,j; bool sonprimosrelativos; FactoresPrimos(n1,primosn1); //Calculo los factopres primos de n FactoresPrimos(n2,primosn2); //y los de n sonprimosrelativos=true; //Inicialmente asumo que lo son i=0; while((primosn1[i]!=1) && (sonprimosrelativos==true)) { j=0; //Busco si elementos del primer vector aparecen en el segundo while((primosn2[j]!=1) && (sonprimosrelativos==true)) { if(primosn1[i]==primosn2[j]) sonprimosrelativos=false; else j++; } i++; } return sonprimosrelativos; Programación
CALIFICACIÓN:
//Ejercicio 5 class cFecha { public: int dia, mes, anio; string FormateaFecha(void); string DespliegaFecha(void); void operator ++(int); } ; string cFecha::FormateaFecha(void) { string cad, aux; aux=inttostr(anio); aux.erase(0,2); cad=inttostr(dia) + "-" + inttostr(mes) + "-" + aux; return cad; } string cFecha::DespliegaFecha(void) { string cad; cad=inttostr(dia) + " de "; if(mes==1) cad=cad+"Enero"; else if(mes==2) cad=cad+"Febrero"; else if(mes==3) cad=cad+"Marzo"; else if(mes==4) cad=cad+"Abril"; else if(mes==5) cad=cad+"Mayo"; else if(mes==6) cad=cad+"Junio"; else if(mes==7) cad=cad+"Julio"; else if(mes==8) cad=cad+"Agosto"; else if(mes==9) cad=cad+"Septiembre"; else if(mes==10) cad=cad+"Octubre"; else if(mes==11) cad=cad+"Noviembre"; else cad=cad+"Diciembre"; cad=cad+" de " + inttostr(anio); return cad; Programación
CALIFICACIÓN:
void cFecha::operator ++ (int) { //Distingo los meses de 31 días, los de 30 y febrero //Meses de 31 días if((mes==1)||(mes==3)||(mes==5)||(mes==7)||(mes==8)||(mes==10)||(mes==12)) { if(dia<31) dia=dia+1; else { dia=1; if(mes!=12) mes=mes+1; else //si sumo 1 al 31 de diciembre cambio de año { mes=1; anio=anio+1; } } } //Meses de 30 días else if((mes==4)||(mes==6)||(mes==9)||(mes==11)) { if(dia<30) dia=dia+1; else { dia=1; mes=mes+1; } } //Febrero else if(mes==2) { if(dia<28) dia=dia+1; else { dia=1; mes=3; } } return; Programación
CALIFICACIÓN: