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


Ejercicios de programación en C++: Calcular media, generar vectores, codificar palabras - , Exámenes de Física

Documento que contiene una serie de ejercicios de programación en c++ relacionados con el cálculo de la media aritmética de un vector, la generación de otro vector según una expresión determinada, la ordenación de un vector atendiendo a los valores de otro vector y la codificación de palabras sustituyendo cada vocal por un número. El documento incluye soluciones para cada ejercicio.

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 con n números reales, realice una función en C++ que devuelva el valor de la media
aritmética:
1 punto
2. Dado un vector X con n números reales, realice una función en C++ que genere los valores de otro vector
F según la siguiente expresión:
2 puntos
3. Realice una función que ordene el vector X de los ejercicios anteriores atendiendo a los valores
crecientes del vector F con los que se vincula tal, es decir, que siempre aparezca antes aquél xj cuyo F(xj)
tenga un valor menor que los posteriores.
2 puntos
4. Dada una cadena de caracteres realice una función en C++ que la codifique de la siguiente manera:
sustituir cada vocal minúscula por un número del 1 al 5. Por ejemplo, las palabras “hola”, “Granada” o
“Casiopea” quedarían respectivamente como: “h4l1”, “Gr1n1d1” y “C1s34p21”.
2 puntos
5. Realice una función que reciba el nombre de un fichero de texto que contiene palabras codificadas como
se indica en el ejercicio anterior, y las muestre en pantalla decodificadas y seguidas del valor obtenido
sumando los valores numéricos de su código. Por ejemplo, si el fichero contiene “h4l1”, “Gr1n1d1” y
“C1s34p21” , se mostrará en pantalla:
hola 5
Granada 3
Casiopea 11
2 puntos
6. Queremos trabajar con una clase denominada cPalabraCodificada con los siguientes atributos públicos:
palabra_original: string
palabra_codificada: string
valor_codigo: entero
y los métodos siguientes:
CodificarPalabra(): obtiene el valor de palabra_codificada a partir de palabra_original
DecodificarPalabra(): obtiene el valor de palabra_original a partir de palabra_codificada
CalcularCodigo(): calcular el valor del atributo valor_codigo a partir de palabra_codificada
Defina la clase e implemente los métodos mencionados usando C++.
1 punto
Examen
Programación
9 de Septiembre de 2011
CALIFICACIÓN:
Nombre: DNI o pasaporte:
Fxj=
i=0
n1xixj2
xxj2
x=
i=0
n1xi
n
pf3
pf4
pf5

Vista previa parcial del texto

¡Descarga Ejercicios de programación en C++: Calcular media, generar vectores, codificar palabras - y más Exámenes en PDF de Física solo en Docsity!

1. Dado un vector con n números reales, realice una función en C++ que devuelva el valor de la media

aritmética:

1 punto

2. Dado un vector X con n números reales, realice una función en C++ que genere los valores de otro vector

F según la siguiente expresión:

2 puntos

3. Realice una función que ordene el vector X de los ejercicios anteriores atendiendo a los valores

crecientes del vector F con los que se vincula tal, es decir, que siempre aparezca antes aquél xj cuyo F(xj)

tenga un valor menor que los posteriores.

2 puntos

4. Dada una cadena de caracteres realice una función en C++ que la codifique de la siguiente manera:

sustituir cada vocal minúscula por un número del 1 al 5. Por ejemplo, las palabras “hola”, “Granada” o

“Casiopea” quedarían respectivamente como: “h4l1”, “Gr1n1d1” y “C1s34p21”.

2 puntos

5. Realice una función que reciba el nombre de un fichero de texto que contiene palabras codificadas como

se indica en el ejercicio anterior, y las muestre en pantalla decodificadas y seguidas del valor obtenido

sumando los valores numéricos de su código. Por ejemplo, si el fichero contiene “h4l1”, “Gr1n1d1” y

“C1s34p21” , se mostrará en pantalla:

hola 5

Granada 3

Casiopea 11

2 puntos

6. Queremos trabajar con una clase denominada cPalabraCodificada con los siguientes atributos públicos:

palabra_original: string

palabra_codificada: string

valor_codigo: entero

y los métodos siguientes:

CodificarPalabra() : obtiene el valor de palabra_codificada a partir de palabra_original

DecodificarPalabra() : obtiene el valor de palabra_original a partir de palabra_codificada

CalcularCodigo() : calcular el valor del atributo valor_codigo a partir de palabra_codificada

Defina la clase e implemente los métodos mencionados usando C++.

1 punto

Programación

9 de Septiembre de 2011

CALIFICACIÓN:

Nombre: DNI o pasaporte:

F  x j =∑

i = 0 n − 1

 xi − x j 

2

  x  x j 

2

 x =∑

i = 0 n − 1

xi

n

// Examen de septiembre de 2011 #include #include #include using namespace std; //Ejercicio 1: calcular la media de un vector de reales double CalcularMedia(double x[], int n) { double suma; int i; suma=0.0; for(i=0; i<n; i++) suma+=x[i]; return suma/n; } //Ejercicio 2: generar vector de reales a partir de otro mediante una //expresion determinada void GenerarVectorF(double x[], double F[], int n) { double media; int i,j; media=CalcularMedia(x,n); for(j=0;j<n;j++) { F[j]=0.0; for(i=0;i<n;i++) F[j]+=((x[i]-x[j])(x[i]-x[j])); } //El denominador es constante para cada j F[j]=F[j]/((x[j]+media)(x[j]+media)); return; } //Ejercicio 3: ordenar vector de reales a partir de los valores de otro vector void OrdenarVector(double x[], double F[], int n) { int i,j; double aux; for(i=1;i<n;j++) for(j=n-1;j>=i;j--) if(F[j]<F[j-1]) { aux=F[j]; //hay que ordenar los 2 vectores en realidad F[j]=F[j-1]; //para poder hacerlo correctamente F[j-1]=aux; aux=x[j]; x[j]=x[j-1]; x[j-1]=aux; } return; Programación

9 de Septiembre de 2011

CALIFICACIÓN:

//Ejercicio 5: leer palabras codificadas de un fichero y mostrarlas //decodificadas en pantalla seguidas de la suma de los números de código //Función que calcula el código de una palabra codificada int CalcularCodigo(string palabra) { int i, l, num; num=0; l=palabra.length(); for(i=0; i<l; i++) if((palabra[i]>='1')&&(palabra[i]<='5')) num+=palabra[i]-'0'; return num; } //Función que decodifica una palabra codificada string DecodificarPalabra(string palabra_codificada) { string palabra_original; int i, l; l=palabra_codificada.length(); palabra_original=palabra_codificada; for(i=0; i<l; i++) if(palabra_original[i]=='1') palabra_original[i]='a'; else if(palabra_original[i]=='2') palabra_original[i]='e'; else if(palabra_original[i]=='3') palabra_original[i]='i'; else if(palabra_original[i]=='4') palabra_original[i]='o'; else if(palabra_original[i]=='5') palabra_original[i]='u'; return palabra_original; } //Función que lee del fichero y muestra lo que se pide en el ejercicio void LeerPalabrasCodificadas (string nombrefich) { ifstream fich; string palabra; int num; fich.open(nombrefich.c_str()); while(!fich.eof()) { fich >> palabra; num=CalcularCodigo(palabra); cout << DecodificarPalabra(palabra) << " " << num << endl; } fich.close(); Programación

9 de Septiembre de 2011

CALIFICACIÓN:

//Ejercicio 6: definir clase y métodos para palabras codificadas class cPalabraCodificada { public: string palabra_original; string palabra_codificada; int valor_codigo; void CodificarPalabra(void); void DecodificarPalabra(void); void CalcularCodigo(void); } ; void cPalabraCodificada::CodificarPalabra(void) { int i, l; l=palabra_original.length(); palabra_codificada=palabra_original; for(i=0; i<l; i++) if(palabra_codificada[i]=='a') palabra_codificada[i]='1'; else if(palabra_codificada[i]=='e') palabra_codificada[i]='2'; else if(palabra_codificada[i]=='i') palabra_codificada[i]='3'; else if(palabra_codificada[i]=='o') palabra_codificada[i]='4'; else if(palabra_codificada[i]=='u') palabra_codificada[i]='5'; return; } void cPalabraCodificada::DecodificarPalabra(void) { int i, l; l=palabra_codificada.length(); palabra_original=palabra_codificada; for(i=0; i<l; i++) if(palabra_original[i]=='1') palabra_original[i]='a'; else if(palabra_original[i]=='2') palabra_original[i]='e'; else if(palabra_original[i]=='3') palabra_original[i]='i'; else if(palabra_original[i]=='4') palabra_original[i]='o'; else if(palabra_original[i]=='5') palabra_original[i]='u'; return; } void cPalabraCodificada::CalcularCodigo(void) { int i, l; valor_codigo=0; l=palabra_codificada.length(); for(i=0; i<l; i++) if((palabra_codificada[i]>='1')&&(palabra_codificada[i]<='5')) valor_codigo+=palabra_codificada[i]-'0'; return; Programación

9 de Septiembre de 2011

CALIFICACIÓN: