Taller de Lenguajes I – 2015 PROGR. UNIVERSITARIO / LICENCIATURA EN INFORMATICA Dictado: Ing. Juan Manuel Conti
TRABAJO PRACTICO Nro 1 Problema 01: Direcciones y cast's. En el siguiente esquema: Buff [ ]
pBuff
void *
DirEnt [ ]
DirDob [ ]
Buff es un arreglo de char que debe tener capacidad para almacenar consecutivamente 30 elementos que pueden ser int ó double. Estas magnitudes se obtendrán de la siguiente manera:
Generar un entero aleatorio en el rango 100, 999. Si el número es menor o igual a 500 éste será un entero (int) que será guardado en Buff, y su dirección de almacenamiento se registrará en DirEnt[ ]. Si el número es mayor de 500, ese número será convertido en un double sumándole como parte decimal la mitad de su valor dividido en 1000. Por ejemplo si se generó: N=628, éste se transformará en 628+314/1000 ó sea 628.314
Esta cantidad también será almacenada a la par de lo último que se guardó en Buff, y su dirección obviamente se registrará en DirDob[ ]. Para todo este trabaja se utilizará el apuntador pBuff que es un puntero void *. Buff será dimensionado de acuerdo a lo que debe almacenar y teniendo en cuenta el peor caso: que todos los números sean mayores de 500. Finalmente, y utilizando las direcciones almacenadas, mostrar por pantalla en forma encolumnadas, las magnitudes enteras y dobles que se hayan generado (las doubles se visualizarán con 3 decimales). NOTA: Recuerde que las direcciones son enteros sin signo.
Trabajo Práctico Nro 1
Pág 1/2
Taller de Lenguajes I – 2015 PROGR. UNIVERSITARIO / LICENCIATURA EN INFORMATICA Dictado: Ing. Juan Manuel Conti
Problema 02: Direcciones y cast's y notación implícita de apuntadores.
Considere la siguiente estructura de datos: 180 domicilios char Buff [ ]
Almacenará en forma consecutiva, 20 juegos de valores que consistirán en : un int, o un double, o un char. Sin embargo, a diferencia del problema anterior que guardábamos la dirección de cada valor para luego identificarlo, ahora agregaremos una pequeñísima cabecera a cada magnitud: un caracter: 'A' --> Para los enteros. 'B' --> Para los dobles. 'C' --> Para los char. La mecánica de llenado será la siguiente:
Genere aleatoriamente un caracter entre 'A' y 'C'. Almacene dicho caracter en Buff. Si salió 'A', genere un entero entre 100 y 999 y almacénelo en Buff a la par de su correspondiente caracter identificatorio. Si salió 'B', genere un entero entre 100 y 999 agregándole una parte decimal obtenida como random(1000)/1000. Si salió 'C' genere un caracter aleatorio char entre 'A' y 'Z'.
Finalmente y utilizando notación implícita de apuntadores, recorra Buff mostrando por pantalla (en una sola columna a 20 espacio del margen izquierdo) los valores que salieron. NOTA: Las magnitudes double se mostrarán con 3 decimales.
datos correspondiente a una matriz y la que le sigue deje una fila en blanco. Obvia- mente este detalle deberá ser tenido en cuenta en el programa. 128 359 .
de invocación, el que será mostrado en pantalla. NOTA: este es un ejemplo de reutilización de un mismo código (subprograma) desde distintos puntos del ...
En un arreglo de char deben almacenarse 12 enteros y 8 doubles. Los enteros estarán comprendidos en el rango 10, 99 y los doubles en el rango 100, 999.
Pág. 1/34. Planilla Electrónica EXCEL. Una planilla electrónica es un conjunto de “celdas” colocadas según una disposición matricial en la ... Z AA AB AC AD.
Diseño de algoritmos. Problema 01: Algoritmo secuencial. Un número se dice que es perfecto si la suma de sus divisores (incluido el 1, pero no él mismo), es ...
Informática del CBI – 2014. Dictado : Ing. Juan Manuel Conti. Clase Teórica Nro 2. Pág. 1/34. Planilla Electrónica EXCEL. Una planilla electrónica es un ...
tos sea 10, 11, 12, etc. hasta llegar a 18. ProdMax que es un apuntador de tipo int, y localiza el emplazamiento en la matriz Mat del domicilio que, cumpliendo ...
V[DIM] es un arreglo de apuntadores a char que señalarán el inicio de reservas dinámicas para almacenar enteros. La cantidad de enteros para cada fila está ...
muestra dos curvas: una circunferencia de radio R=1000 y la recta dada por. F2(x) = m.x, siendo m=1,4. Implementar el programa necesario para obtener la ...
Punteros triples, Matrices 3D y Listas con arreglos de apuntadores. ... La lista enlazada inferior está formada por nodos (en igual cantidad que las matrices),.
Funciones Periódicas - Escalas. Problema 01. En la siguiente figura: representa una función periódica generada por intersección de circunferencias. Los.
A la derecha, F3(x) y F4(x) son circunferencias de radios R1=500 y R2=1000, res- pectivamente. Ud. deberá implementar un programa en C tal que reproduzca ...
Informática del CBI – 2013. FACET. Dictado : Ing. ... ¿En cuál de las tres instancias fue máxima la cantidad de puntos y cuánto vale? En panta mostrará. 12. 4.
La función: ALEATORIO( ) genera números aleatorios en el rango [0 ; 0,99999...] En base a ella, esta otra: ENTERO(100 + 900*ALEATORIO( ) ) produce valores ...
V1[DIM] = V2[1] y volver a mostrar ambos vectores uno a la par del otro. Muestre también los valores obtenidos para Max1 y Max2. Problema 02. En un trapecio ...
Estos valores deberán ser pasados desde el punto de invocación, buscados en la matriz y acu- mulados en sendas variables. Este procedimiento mostrará ...
Un vector de enteros de 6 domicilios debe ser cargado mediante un ... triz Mat[ ] de enteros de 15 x 12 y le asignara valores aleatorios en el rango 10, 99,.
En el siguiente diagrama, determinar qué tarea se está realizando, completar si faltase algo y a continuación escribir el correspondiente programa en Pascal y ...
Entorno multitarea. Encienda el computador y aguarde hasta que Windows se halla inicializado. Observe el Escritorio y los íconos que se hallan en él (accesos ...
Un segundo puntero doble a enteros creará un vector de apuntadores simples cuya misión es la siguiente: • El apuntador del primer domicilio señalará la ...
Informática del CBI – 2011. Dictado : Ing. Juan Manuel Conti ..... vale S1, para n2, S2 y así sucesivamente. Para “ni” en general, tendremos “Si” (léase n sub i y S ...
impares encontrados en la matriz. Finalmente, un tercer procedimiento denominado MostrarVecParImp( ) recibirá como parámetros los vectores ya cargados ...