Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FACULTAD DE CIENCIAS
ESCUELA DE MATEMÁTICAS Y CIENCIAS DE LA COMPUTACIÓN
DEPARTAMENTO DE MATEMÁTICS APLICADA
MM-314 PROGRAMACION SECCIONES 1400 Y 1700
I PAC 2020
TAREA No. 3
CUESTIONARIO
1. ¿Qué es la dirección de una variable?
R/ Es la localidad que ocupa en memoria
2. ¿El programador puede asignar la dirección a las variables de un programa?
R/ No, en el momento que se hace la declaración de las variables el sistema asigna la
localidad que ocupara la variable en la memoria.
18. Sea la declaración int x, *ptrx=&x, ¿ptrx almacena la dirección de los 4 bytes que ocupa
x en la memoria? Explique su respuesta.
R/ No, ptrx almacena solamente la dirección del primer byte de los 4 que se requieren
para almacenar el valor entero de x.
19. Dada la instrucción int Edad[ 7]; ¿Cuál es la salida de cout<< sizeof Edad;?
R/ La salida es 28, dado que Edad es un conjunto de 7 números enteros y cada entero
requiere 4 bytes, 7x4 = 28.
20. ¿Cuál es la relación entre los nombres de los arreglos y los apuntadores?
R/ Los nombres de los arreglos son apuntadores constantes que almacenan la dirección
del primer elemento del arreglo.
21. ¿Qué es un apuntador constante?
R/ Es una variable que almacena siempre la misma dirección, no puede ser modificdo.
22. Dado la instrucción int Num[10], *ptrNum; ¿Cuál es la diferencia entre ptrNum=Num; y
ptrNum=&Num[0];?
R/ Las instrucciones son equivalentes, en ambas ptrN almacena la dirección del primer
elemento de Num
Notas:
Un número hexadecimal se escribe como una combinación de los dígitos de su base:
{0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f}
Por comodidad usaremos los números hexadecimales, direcciones (localidades de
memoria), iniciando con dos dígitos literales seguidos de tres dígitos numéricos, por
ejemplo cb700, fa126, bd049
Por comodidad en las pruebas de escritorio romperemos la secuencia de los
números hexadecimales, tal como lo aplica el libro de texto. Por ejemplo
UNIVERSIDAD NACIONAL AUTÓNOMA DE HONDURAS
FACULTAD DE CIENCIAS
ESCUELA DE MATEMÁTICAS Y CIENCIAS DE LA COMPUTACIÓN
DEPARTAMENTO DE MATEMÁTICS APLICADA
MM-314 PROGRAMACION SECCIONES 1400 Y 1700
I PAC 2020
aceptaremos la secuencia fd468, fd469, fd470, fd471, fd472, .. en vez de
fd468,fd469, fd46a, fd46b, fd46c, …
Al ejecutar un programa en el lenguaje de programación las direcciones se escriben
respetando la secuencia de los números hexadecimales con un prefijo que identifica
el sistema de numeración utilizado.
En el texto puede consultar el Apéndice C Sistemas Numéricos si desea estudiar
sobre el sistema de numeración hexadecimal.
#define max 5
int main(int argc, char *argv[])
{ int A[max]={5,10,15,20,25}, *ptrA=A;
cout<<endl<<endl;
for(int i=0; i<max; i++)
{ cout<<setw(10)<<ptrA<<setw(10)<<*ptrA<<endl;
ptrA++; }
cout<<endl<<endl;
for(int i=0; i<max; i++)
{ cout<<setw(10)<<A+i<<setw(10)<<*(A+i)<<endl; }
cout<<endl<<endl;
ptrA=A;
for(int i=0; i<max; i++)
cout<<setw(10)<<ptrA+i<<setw(10)<<*(ptrA+i)<<endl;
cout<<endl<<endl;
for(int i=0; i<max; i++)
cout<<setw(20)<<ptrA[i]<<endl;
return 0; }
R/ Prueba De Escritorio.
MEMORIA
fe300 5
fe304 10
fe308 15
fe312 20
fe316 25
fe300 5
fe304 10
fe308 15
fe312 20
fe316 25
5
10
15
20
25