ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Tema- Laboratorio de Estructuras de Datos y Algoritmos


Enviado por   •  24 de Agosto de 2016  •  Tareas  •  1.944 Palabras (8 Páginas)  •  219 Visitas

Página 1 de 8

Laboratorio de Estructuras de Datos y Algoritmos

Práctica 2:

Aplicaciones de apuntadores

[pic 3]

        

Equipo No:4

Dorantes Mejia Emmanuel

Escajeda Ríos André

Jiménez Vázquez Raúl Enrique

Moreno Guerra Marco Antonio

Fecha de realización:

19/02/2016

Fecha de entrega:

26/02/2016


Práctica 2.

Aplicaciones de Apuntadores

Realice los siguientes programas usando apuntadores en lenguaje C. Incluya el código fuente y captura de pantallas del programa funcionando.

  1. Utilizando un arreglo de caracteres como máximo de 50 y manejando apuntadores a caracteres, identificar si una frase es palíndroma (se lee de derecha a izquierda y de izquierda a derecha de la misma forma). Se leerá una línea completa, es decir, incluyendo los espacios en blanco y el NULO, para identificar el final de la cadena, al darle la tecla de ENTER.

Se quitaran los espacios en blanco de la cadena original y se deberá de manejar un apuntador al inicio de la cadena (I) y otro al final (F) e ir comparando si los caracteres a los cuales apunta, son iguales, posteriormente I avanza al segundo elemento del arreglo y F retrocede al penúltimo elemento y así hasta que se comparen todos los caracteres del arreglo o hasta que encuentre que no son iguales los caracteres comparados.

La entrada será, la cadena original.

La salida será la cadena sin espacios en blanco y el mensaje adecuado indicando si fue palíndroma o no fue palíndroma.

  1. Se desea realizar el cifrado de transposición simple de una cadena de caracteres, que tendrá como máximo 50 elementos, para realizar el algoritmo se utilizaran dos apuntadores uno al inicio de la cadena (I) y otro al final (F) y utilizando el operador * (indica el contenido de lo que apunta), el mensaje cifrado, se almacenará en otro arreglo.

El algoritmo de cifrado es poner en la cadena  nueva, el primer y último  carácter del mensaje original, después el segundo y penúltimo carácter y así sucesivamente, hasta terminar de analizar todos los caracteres de la cadena, incluyendo los espacios en blanco.

Ejemplo:

Entrada: anita

Salida: aanti

  1. Se desea realizar el cifrado de transposición doble (aplicación doble de transposición simple) de una cadena de caracteres, que tendrá como máximo 50 elementos, para este programa se utilizará el mismo algoritmo del ejercicio anterior. Se debe declarar y definir una función que genere la transposición simple y usarla para la transposición doble.

Ejemplo:

Entrada anita

Primera salida de transposición simple: aanti

Segunda salida de transposición doble:  aiatn

1. /*EDA1,Gpo20,Practica 2,Ejercicio 1*/

#include

int main()

{

        char arreglo[50];

        char arreglo2[50];

        int i,j=0, dimension=0,palabra;

        char *apArreglo,*apArreglo2;

        system("color 6F");

        printf("\nEscriba una frase, para verificar si es palindromo\n\n");

        scanf("%[^\n]", arreglo);

        for(i=0;i<50;i++)

        {

                if(*(arreglo+i)=='\0')

                {

                        dimension=i;

                        break;

                }        

        }

        printf("\nDimension de la frase: %d\n", dimension);        

        for(i=0;i<=dimension; i++)

        {

                if(*(arreglo+j)==' ')

                {

                        j++;

                        *(arreglo2+i)=*(arreglo+j);

                        j++;

                }

                else

                {

                        *(arreglo2+i)=*(arreglo+j);

                        j++;

                }

        }

        printf("\nCadena sin espacios: %s\n", arreglo2);

        for(i=0;i<50;i++)

        {

                if(*(arreglo2+i)=='\0')

                {

                        dimension=i;

                        break;

                }        

        }

        printf("\nDimension de la frase sin espacios: %d\n\n", dimension);  

        apArreglo=&arreglo[0];

        apArreglo2=&arreglo2[dimension-1];

        

        for(i=0;i<=dimension; i++)

        {

                if(*(apArreglo)!=*(apArreglo2))

                {

                        palabra=1;

                        break;

...

Descargar como (para miembros actualizados)  txt (8.2 Kb)   pdf (642.7 Kb)   docx (1.1 Mb)  
Leer 7 páginas más »
Disponible sólo en Clubensayos.com