Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Física 02 2011, Exámenes de Física

Examen final, febrero 2011

Tipo: Exámenes

2010/2011

Subido el 31/01/2011

manu93-10
manu93-10 🇪🇸

4

(1)

4 documentos

1 / 5

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
1. Dado un vector x con n datos reales, realice una función en C++ que devuelva la media geométrica,
es decir:
2 puntos
2. Decimos que un vector de enteros es melchoriforme si contiene un número par de elementos
repetidos; por ejemplo, (1,1,2,3,3,3) es melchoriforme (se repiten 2 elementos), y (1,1,2,2,3,3) no lo
es (se repiten 3 elementos). Realice una función en C++ que reciba un vector ordenado de n enteros
e indique si tal vector es melchoriforme.
2 puntos
3. Realice una función recursiva que reciba una cadena de caracteres que representa un número
octal (base 8) y devuelva un número entero que exprese su valor en base 10.
Nota: si an an-1 ... a2 a1 a0 es un número expresado en base octal (cada ai es un dígito comprendido
entre 0 y 7), entonces su valor decimal viene dado por: 8nan + 8n-1an-1 + ... + 82a2 + 81a1 + a0
2 puntos
(No recursiva: 1 punto)
4. Realice una función que reciba el nombre de un fichero de texto que contiene números reales, y
devuelva por referencia el valor medio de los positivos, el valor medio de los negativos y el valor
absoluto medio.
2 puntos
5. Se tiene un vector de objetos de la clase Cmatriz, donde dicha clase representa a una matriz con
los siguientes atributos públicos:
- Numero de filas: entero
- Numero de columnas: entero
- Matriz: matriz de 10x10 elementos enteros
Realice una función que calcule la suma de todas las matrices que tengan un número de filas y
columnas dado. Defina previamente la clase Cmatriz.
2 puntos
Examen
Programación
14 de Febrero de 2011
CALIFICACIÓN:
Nombre: DNI o pasaporte:
xmedia=
x1x2x3... xn
1/n
pf3
pf4
pf5

Vista previa parcial del texto

¡Descarga Física 02 2011 y más Exámenes en PDF de Física solo en Docsity!

1. Dado un vector x con n datos reales, realice una función en C++ que devuelva la media geométrica,

es decir:

2 puntos

2. Decimos que un vector de enteros es melchoriforme si contiene un número par de elementos

repetidos; por ejemplo, (1,1,2,3,3,3) es melchoriforme (se repiten 2 elementos), y (1,1,2,2,3,3) no lo

es (se repiten 3 elementos). Realice una función en C++ que reciba un vector ordenado de n enteros

e indique si tal vector es melchoriforme.

2 puntos

3. Realice una función recursiva que reciba una cadena de caracteres que representa un número

octal (base 8) y devuelva un número entero que exprese su valor en base 10.

Nota: si an an-1 ... a 2 a 1 a 0 es un número expresado en base octal (cada ai es un dígito comprendido

entre 0 y 7), entonces su valor decimal viene dado por: 8 n an + 8n-1 an-1 + ... + 8^2 a 2 + 8^1 a 1 + a 0

2 puntos

(No recursiva: 1 punto)

4. Realice una función que reciba el nombre de un fichero de texto que contiene números reales, y

devuelva por referencia el valor medio de los positivos, el valor medio de los negativos y el valor

absoluto medio.

2 puntos

5. Se tiene un vector de objetos de la clase Cmatriz , donde dicha clase representa a una matriz con

los siguientes atributos públicos:

  • Numero de filas: entero
  • Numero de columnas: entero
  • Matriz: matriz de 10x10 elementos enteros

Realice una función que calcule la suma de todas las matrices que tengan un número de filas y

columnas dado. Defina previamente la clase Cmatriz.

2 puntos

Programación

14 de Febrero de 2011

CALIFICACIÓN:

Nombre: DNI o pasaporte:

x media = x 1 x 2 x 3 ... xn 

1 / n

#include #include #include #include using namespace std; /*********************************************/ /* Ejercicio 1: Media geométrica / /*********************************************/ double potencia(double base, double exponente) { return exp(exponentelog(base)); } double mediageom(double x[], int n) { int i; double prod; prod=1; for(i=0;i<n;i++) prod=x[i]; return potencia(prod,1.0/n); } /*********************************************/ / Ejercicio 2: Vector Melchoriforme */ /*********************************************/ bool EsMelchoriforme (int x[], int n) { int numrep, i; bool estarepetido; estarepetido=false; numrep=0; for(i=1; i<n; i++) { if(x[i]==x[i-1]) { if(estarepetido==false) numrep++; estarepetido=true; } else estarepetido=false; } if(numrep%2==0) return true; else return false; Programación

14 de Febrero de 2011

CALIFICACIÓN:

/* Ejercicio 5: Sumar matrices de un vector */ /*********************************************/ class cMatriz { public: int filas, columnas; double x[10][10]; }; cMatriz SumarMatrices(cMatriz v[], int n, int filas, int cols) { cMatriz mSuma; int i, j, mi; mSuma.filas=filas; mSuma.columnas=cols; for(i=0; i<filas; i++) for(j=0; j<cols; j++) mSuma.x[i][j]=0.0; for(mi=0; mi<n; mi++) if((v[mi].filas==filas)&&(v[mi].columnas==cols)) for(i=0; i<filas; i++) for(j=0; j<cols; j++) mSuma.x[i][j]=mSuma.x[i][j]+v[mi].x[i][j]; return mSuma; Programación

14 de Febrero de 2011

CALIFICACIÓN:

/* Ejercicio 5: otra posibilidad */ /*********************************************/ class cMatriz { public: int filas, columnas; double x[10][10]; cMatriz(void); cMatriz operator +(cMatriz m2); }; //El constructor inicializa los elemnentos a 0 //y las dimensiones a los valores máximos cMatriz::cMatriz(void) { int i, j; for(i=0; i<10; i++) for(j=0; j<10; j++) x[i][j]=0.0; filas=columnas=10; } //Sobrecarga del operador + cMatriz cMatriz::operator+(cMatriz m2) { int i,j; cMatriz res; for(i=0; i<filas; i++) for(j=0; j<columnas; j++) res.x[i][j]=x[i][j]+m2.x[i][j]; return res; } cMatriz SumarMatrices(cMatriz v[], int n, int filas, int cols) { cMatriz mSuma; int mi; mSuma.filas=filas; mSuma.columnas=cols; for(mi=0; mi<n; mi++) if((v[mi].filas==filas)&&(v[mi].columnas==cols)) mSuma=mSuma+v[mi]; return mSuma; Programación

14 de Febrero de 2011

CALIFICACIÓN: