Sunteți pe pagina 1din 2

Universidad Nacional Autónoma de Honduras

Departamento de matemática aplicada


Programación I
Tarea del tercer parcial

abril 2018

Nombre: Cuenta:
Profesor: Sección:

Problemas: Para los siguientes ejercicios se solicita la codificación en C++. Debe anexar a este doc-
umento los programas escritos en C++ por medio de la impresión del código en un archivo de texto.
Además para las impresiones use tamaño de letra 10 e imprima revés y derecho de la página, sino sigue
estas indicaciones su nota se verá afectada.

◦ Escribir un programa que lea una lı́nea de texto y escriba cadenas introducidas por teclado son anagramas. Se con-
en pantalla el número de palabras que esta contiene, esto sidera que dos cadenas son anagramas si contienen exac-
sin utilizar las funciones de string.h. y particularmente tamente los mismos caracteres en el mismo o en diferente
sin usar strtok( ). orden. Hay que ignorarlos blancos y considerar que las
mayúsculas y las minúsculas son iguales.
◦ Un sistema de encriptación simple consiste en sustituir
cada carácter de un mensaje por el carácter que está
situado a tres posiciones alfabéticas por delante suyo. Es-◦ (Código Morse) Quizá el más famoso de todos los es-
cribir una función que tome como parámetro una cadena quemas de codificación es el código Morse, desarrollado
y guarde en esta misma la cadena cifrada. por Samuel Morse en 1832 para usarlo con el sistema
telegráfico. El código Morse asigna una serie de puntos
◦ Escribir una función que reciba como parámetro una ca- y guiones a cada letra del alfabeto, cada dı́gito y algunos
dena e indique el número de letras mayúsculas que tiene. caracteres especiales (tales como el punto, la coma, los
◦ Escriba una función CambiaP alabra que busque una dos puntos y el punto y coma). En los sistemas orienta-
palabra determinada en un párrafo y a contin- dos a sonidos, el punto representa un sonido corto y el
uación la cambie por cualquier palabra dada. La guión representa un sonido largo. Otras representaciones
función entonces recibirá tres cadenas, un párrafo de puntos y guiones se utilizan en sistemas orientados a
y dos palabras. Considere el siguiente ejemplo, luces y sistemas de señalización con banderas.
P arraf o=”Quizá el más famoso de todos los esque- La separación entre palabras se indica mediante un es-
mas de codificación es el código Morse, desarrollado pacio o, simplemente, con la ausencia de un punto o un
por Samuel Morse en 1832 para usarlo con el sis- guión. En un sistema orientado a sonidos, un espacio se
tema telegráfico.”. Entonces si llamamos a la función indica por un tiempo breve durante el cual no se trans-
CambiaP alabra(P arraf o, ”M orse”, ”P erez”) entonces mite sonido alguno. La versión internacional del código
el párrafo modificado será: ”Quizá el más famoso de to- Morse aparece en la tabla de abajo.
dos los esquemas de codificación es el código Perez, de- Escriba una función que reciba la cadena f rase y que
sarrollado por Samuel Perez en 1832 para usarlo con el codifique f rase en clave Morse en otra cadena con nom-
sistema telegráfico.” bre f raseM orse. Use un espacio en blanco entre cada
letra en clave Morse y tres espacios en blanco entre cada
◦ Escriba una función tipo bool que determine cuando dos palabra en clave Morse.

1
Carácter Código Carácter Código Carácter Código Carácter Código
A .− B −... C −. − . D −..
E . F .. − . G −−. H ....
I .. J . − −− K −.− L . − ..
M −− N −. O −−− P . − −.
Q − − .− R .−. S ... T −
U ..− V ...− W .−− X −..−
Y −. − − Z − − .. 1 .−−−− 2 ... − −−
3 ... − − 4 ....− 5 ..... 6 −....
7 − − ... 8 − − −.. 9 −−−−. 0 −−−−−
◦ Escriba en C++ un programa que reciba una cantidad char cadena1[80],cadena2[80];
arbitraria de notas usando un variable de tipo vector. cin.getline(cadena1,80,’\n’);
Al final debe hacer una tabla donde aparezca las notas cin.ignore(256,’\n’);
ingresadas y el promedio de estas. cin.getline(cadena2,80,’\n’);
cout<<"El resultado es: "<<
◦ En la biblioteca cctype podemos encontrar la función
misterio(cadena1,cadena2)<<endl ;
islower la cual recibe el código de la tabla ASCII de
return 0;
un caracter y devuelve verdadero si este es una letra
}
minúscula y falso en caso contrario. Implemente una
bool misterio(char *a,char *b){
función que reciba una cadena y cuente el número de
while (*a!=’\0’&& *b!=’\0’)
letras minúsculas.
if(*a!=*b)
◦ Que hace la siguiente función. return false;
int main (){ return true; }

S-ar putea să vă placă și