miércoles, 21 de noviembre de 2012

Tarea 2.

Unidad 3. 

Cuestionario sobre el capitulo 6 (Modularidad en el uso de funciones).

1. ¿Como funciona la transmicion por valor?
La funcion llamada asigna valores a la funcion que llama, almacena y manipula los valores transmitidos, y devuelve directamente un solo valor, como maximo.

2. ¿Para que sirve el uso de funciones? 
Para escribir las funciones como entidades independientes que pueden utilizar cualquier nombre de variable o para metro sin preocuparse porque otras funciones puedan utilizar el mismo nombre.

3. ¿A veces es necesario permitir que la funcion llamada tenga acceso directo a las variables de la funcion que hace la llamada, ¿como se le llama a este tipo de transmicion?
Transmicion por referencia.

4. ¿Cuales son los dos tipos de parametros de direccion que permite el c++?
Direccion por referencia y apuntadores.

5. ¿Una funcion que devuelve un valor que debe especificar?
En su linea de encabezado, el tipo de datos del valor que se devolvera.


6. ¿Para que sirve una instruccion de devolucion?
Para devolver un valor.

7. ¿Al aplicarla en el programa que forma tiene(instruccion de devolucion?

Return expresion;

8. ¿Para que sirve un algoritmo para resolver problemas?
Obtener los datos aportados al problema, calcular los resultados deseados y reportar los resultados de los calculos.


9. ¿Que requiere el diagrama de estructura para un programa completo?
Que se escriban funciones que acepten dos coordenadas rectangulares y que desplieguen las coordenadas polares calculadas, respectivamente. 

10. ¿Para que sirve el prototipo de funcion?Para alertar a la funcion que llama acerca del tipo de valor devuelto que debe esperar se utiliza.

11. ¿Como se realiza una conversion de coordenadas rectangulares a polares?
Dadas las posiciones de x y de Y en un sistema cartesiano de coordenadas, se debe calcular la distancia desde el origen ,r, y el angulo desde el eje x,angulo, especificado por el punto. A los valores de r y angulo se  les conoce como coordenadas polares del punto. 

12. ¿Que es lo que hay  que proporcionar para  usar un valor devuelto?
Una variable para almacenar el valor o usar el valor  en forma directa en una expresion.

13. ¿Cual es el proposito de las declaraciones?
Alertar a la computadora de la cantidad de almacenamiento interno reservado para los datos.

14. ¿Que ejecuta el prototipo convertir_temp()?
Alerta al compilador del tipo de almacenamiento necesario para el valor devuelto

15. ¿Que es la memoria pila?
Region de memoria reservada a la que funcion tiene acceso.

16. ¿Cuando la funcion que llama recibe valores de la funcion de la que llama,almacena y manipula los valores transmitidos y devuelve en forma directa cuando mucho un valor unico, cuando se transmiten los datos de esta manera se conoce como?
Transmision por valor.

17. ¿Que permite llamar a una funcion y transmitir argumentos por valor?
Que se escriban como entidades independientes que puedan usar cualquier nombre de variable sin preocuparse que otras funciones usen el mismo nombre.

18. ¿Como se le llama tambien a la transmision de direccion?
Transmision por referencia.


19. ¿Cuales son los dos parametros de direccion que proporciona C++?
Referencias y apuntadores

20. Los modelos estadiscos como juegos sencillos para computadora, o simplemente programas en los que se requieran datos estadisticos, es importante contar con...
Numero aleatorios; es decir, un conjunto de numeros cuyo orden sea impredecible.

Ejercicios 6.2 y 6.3.

Problema 1:

Problema 3: 

Problema 4:

Problema 5:

Problema 6:








Tarea 1

Unidad 3.

1. Una alternativa para completar cada funcion requerida en un programa completo es.... 
Escribir, primero, la funcion main( ) y agregar las  funciones conforme se van desarrollando.

2. ¿En que consiste las pruebas de aislamiento?
En incorporar el codigo que se prueba dentro de un ambiente de codigo de trabajo. Por ejemplo, suponga que tiene dos funciones sin probar que son llamadas una sobre otra, al seperarlas y analizar cada una de ellas, en contramos que por ejemplo, la funcion 2 es incorrecta.

3. ¿Qué hace el prototipo de función?
 Indica a la función que llama el tipo de valor que será devuelta formalmente

4. ¿La forma general de las instrucciones de prototipos de función es?
 Tipo-de-datos-a-devolver-nombre-de-funcion(lista de tipos de datos para los argumentos)


5. ¿Qué declara el prototipo defunción para Fmax()?
Que la función espera recibir dar argumentos en numero entero y devolverá de manera formal un valor en numero entero.


6. ¿Qué declara el prototipo de función para intercambio()?
Declara que esta función requiere cuatro argumentos consistentes en un numero entero, dos caracteres y un argumento de precisión doble.


7. ¿Qué declara el prototipo de función para desplegar()?
Esta función requiere dos argumentos de precisión doble no devuelve ningún valor.


8. ¿De que sirve el uso de prototipos de función?
Permite la verificación de errores en los tipos de datos por el compilador.

9. ¿Cual es el uso primario de los argumentos por omision?
Es extender la lista de parametros de funciones existentes sin requerir algun cambio en las listas de argumentos invocados que ya estan en su lugar dentro de un programa.

10.  ¿A que se le llama sobre carga de funcion? 
Es cuando se usa el mismo nombre de funcion para mas de una funcion.

11. ¿Que es una plantilla de funcion? 
Es una funcion unica completa que sirve como modelo para una familia de funciones.

12. ¿Para que se usa el prefijo de platilla?
Se usa para informar al compilador que la funcion que sigue inmediatamente es una plantilla que usa un tipo de datos nombrado.

13. ¿Es la funcion que se conoce como la funcion llamada?
Encontrar mas()

14. ¿Esta función que hace la llamada se le conoce como función que llama?
Main()

15. ¿Antes que una función pueda ser llamada debe ser?
Declarada

16. ¿La instrucción de declaración para una función se conoce como?
Prototipo de función

17. ¿Qué hace el prototipo de función?
Indica a la función que llama el tipo de valor que será devuelta formalmente

18. ¿La forma general de las instrucciones de prototipos de función es?
Tipo-de-datos-a-devolver-nombre-de-funcion (lista de tipos de datos para los argumentos)

19 ¿Nombre de la línea que informa al compilador que la función que sigue inmediatamente es una plantilla que usa un tipo de datos nombrado T?
Prefijo de pantalla

20. ¿Que tanto valor tiene usar una plantilla de funcion?
Es importante ya que se usa una definicion de funcion para crear funciones diferentes.



martes, 13 de noviembre de 2012

Practica 11

Problema 1.

Inicio
tabla [5] [5]int
r,cint
suma=0.0int
for(r=0 to 5 step r++)
{
 for(c=0 to 5 step c++)
{
print,"tabla [ ",r,",",c," ]= "
read tabla[r] [c]
}
}
for(r=0 to 5 step r++)
{
suma=0
for(c=0 to 5 step c++)
{
suma=suma+tabla[r] [c]
Print ,tabla[r][c],"\t"
}
print,suma,
}
Fin


Problema 2.


Inicio
tabla [5] [5]int
r,cint
suma=0.0int

for(r=0 to 5 step r++)
{
 for(c=0 to 5 step c++)
{
print,"tabla [ ",r,",",c," ]= "
read tabla[r] [c]
}
}
for(r=0 to 5 step r++)
{
suma=0
for(c=0 to 5 step c++)
{
suma=suma+tabla[r] [c]

Print ,tabla[r][c],"\t"
}
print,suma,
}
Fin

Problema 3.

Inicio   

tabla [4] [5]int

r, cint
suma=0.0int
for(c=0 to 5 step c++)
{
suma=0.0
for(r=0 to 4 step r++)
{
print "tabla [ ", r,",", c,”]=“
readtabla[r] [c]
suma=suma + tabla[r] [c]
}
Print"la suma de columna ", c," es: ", suma
}
Fin

Problema 4.

Iniciomatriz[6][4], I, J, suma=0 int
for (I=0to5 step I+1){for (J=0 to4 step J+1){print,"matriz[",I,", ",J,"] = "read matriz[I][J]}}for (I=0 to 4 step I+1){suma=0;for (J=0 to5 step J+1){suma=suma+matriz[J][I]}matriz[5][I]=suma;}for (I=0 to 6 step I+1){for (J=0; to 4 stepJ+1){print, matriz[I][J],"\t"}print.endl}

Final.

Problema 5.

Inicio
 matriz[7][8], r, c, suma=0, mayor1=0, posc=0, mayor2=0, posr=0 int
randomize
print,"Matriz Original",,
for (r=0 to6; step r+1)
{
suma=0;
for (c=0 to 7 step c+1)
{
matriz [r][c]=random (10)
suma=suma+matriz[r][c]
print,matriz[r][c],"\t"
}
matriz[r][7]=suma
print,
}
for (c=0 to 7 stepc+1)
{
suma=0;
for (r=0 to 6 step r+1)
{
suma=suma+matriz[r][c]
}
matriz[6][c]=suma;
}
matriz[6][7]=0;
for (c=0 to 7 step c+1)
{
if (matriz[6][c]>mayor1)
{
mayor1=matriz[6][c]
posc=c
}
}
for (r=0 to 6 step r+1)
{
if (matriz[r][7]>mayor2)
{
mayor2=matriz[r][7]
posr=r;
}
}
print,"\nMatriz con la suma de renglones y columnas",,
for (r=0; r<7; r=r+1)
{
for (c=0 to 8 step c+1)
{
print,matriz[r][c],"\t"
}
print,
}
print,"\n";
print,"La suma mayor del renglon ",posr," es = ",mayor2,
read,"\n"
print,"La suma mayor de la columnas ",posc," es = ",mayor1,

Final

Problema 6.

Inicio
A[5][5], B[5][5] int
I,J int

random()
for(I=0 to 5 step I++)
{
for(J=0 to 5 step J++)
{
A[I][J]=random(1000)+1
B[J][I]=A[I][J]
}
}
Print "Matriz Original"
for(I=0 to 5 step I++)
{
for(J=0 to 5 step J++)
{
Print A[I][J] , "\t "
}
Print "\n"
}
Print "Matriz Transpuesta"
for(I=0 to 5 step I++)
{
for(J=0 to 5 step J++)
{
Print B[I][J] , "\t"
}
Print "\n"
}
Final.

Problema 8.


inicio
a[10][10]int
maxint
minint
i,jint
randomize()

for(i=0 to 10 step i++)
{
for(j=0 to 10 step j++)
 {
  a[i][j]=random(1000)+1
}
}
Print"Matriz de 10 X 10"
print”  “
for(i=0 to 10 step i++)
{
for(j=0 to 10 step j++)
 {
Printa[i][j],""
 }
print”  “
}
for(i=0 to 10 step i++)
{
for(j=0 to 10 step j++)
  {
  if(a[i][j]>max)
max=a[i][j]
  }
}
print "El numero máximo de la matriz es: ",max
print”  “

for(i=0 to 10 step i++)
{
for(j=0 to 10 step j++)
  {
  if(a[i][j]<min)
min=a[i][j]
  }
}
print “El numero mínimo de la matriz es: ",min
Fin








viernes, 9 de noviembre de 2012

Practica 10

Problema 1.

Inicio
valores[8] int
 I int
Suma int
Promedio int
for( I=0  I to 8 step  I= I+1)
{
Print "Introduce Valores ["<<I<<"]:"
 Read valores[I]
}
suma=0
for(I=0  I  to 8  step  I= I+1)
{A
suma=suma+valores[I]
}
promedio=suma/8
print “El Promedio es: ",promedio
print “Valores Mayor o Igual al Promedio: "
for(I=0   I    to  7 I= I+1)
{
if(valores[I]>=promedio)
{
Print valores [I]
}
}
Fin


Problema 2 a).

Inicio
primero [10] int
segundo [10] int
tercero [10] int
I int
for(i=0   I  to   10  step  i= i+1)
{
Print "primero ["<<i<<"]:"
Read primero[i]
print "segundo["<<i<<"]:"
read segundo[i]
}
Print "primero+segundo=tercero"
Print "_______________________"
for(i=0   I   to  10 step i= i+1)
{
Print ""

tercero[i]=primero[i]+segundo[i]
print   primero[i], "\t", segundo[i] ,"\t", tercero[i]
}
Fin

Problema 2 b).

Inicio
primero [10] int
segundo [10] int
tercero [10] int
I int
for(i=0   I  to  10 step  i= i+1)
{
Print primero ["<<i<<"]:"
Read primero[i]
Print segundo["<<i<<"]:"
 Read segundo[i]
}
Print primero*segundo=tercero"
Print "_______________________"
for(i=0   I  to  10  step  i= i+1)
{
tercero[i]=primero[i]*segundo[i]
print primero[i],"\t",segundo[i],"\t",tercero[i]
}
Final


Problema 3 a).

Inicio
valores [10] real
desv [10] real
total=0.0 real
promedio real
I int
for(i=0    I   to  10  step   i= i+1)
{
Print "valores ["<<i<<"]:"
Read valores[i]
total=total+valores[i]
}
promedio=total/10
for(i=0  I  to  10 step i= i+1)
{
desv[i]=valores[i]-promedio

}
Print "desviacion          valores"
for(i=0  I  to  10 step  i= i+1)
{
Print desv[i], "\t\t\t",valores[i]
}
Final.

Problema 3 b).

Inicio
valores [10] float
desv [10] float
total=0.0 float
promedio float
varianza float
suma=0.0 float
I int
for(i=0  I  to  10  step  i= i+1)
{
Print "valores ["<<i<<"]:"
Read valores[i]
total=total+valores[i]
}
promedio=total/10
for(i=0  I  to  10 step i= i+1)
{
desv[i]=valores[i]-promedio

}
Print "desviacion          valores"
for(i=0;i<10;i++)
{
Print desv[i],"\t\t\t",valores[i]
}
for(i=0 I  to  =9 step i= i+1)
{
suma=suma+pow(desv[i],2)
}
varianza=suma /10
print "la varianza es",varianza
Fin

Problema 3 c).

Inicio valores[10], desv[10], total=0.0, prom, min=0, max=0, inter=0, a=0, b=0 real
 i int
for(i=0;i<10;i++)
{
print"Valores[",i,"],",
read valores[i]
total=total+valores[i]
}
prom=total/10;
for(i=0;i<10;i++)
{
desv[i]=valores[i]-prom;
}
print,"Desviacion \t Valores",
for(i=0;i<10;i++)
{
print,  ",desv[i],"\t            ",valores[i],
}
print,"\n"
print,"Intervalo Minimo",
for(i=0;i<10;i++)
{
if(desv[i]<=min)
{
print,desv[i]
a=a+desv[i];
}
}
print,"\n",
print,"Minimo",
print,a,
print,"\n",
print,"Intervalo Maximo"
for(i=0;i<10;i++)
{
if(desv[i]>=max)
{
print,desv[i],
b=b+desv[i];
}
}
print,"\n",
print,"Maximo"
print,b,
print,"\n",
inter=b-a;
print"Intervalo= Maximo-Minimo= ",
Print,inter,
Fin.