martes, 27 de marzo de 2012



PRACTICA 11.
Pseudocódigo Practica 11 Problema 1.

1.-Inicio.
Inicio programa
{
opción          int
sigue              char
do
{
clrscr()
imprimirmenu()
Read opción
switch(opcion)
{
case 1 : areacirculo()
case 2 : areacuadrado ()
                perimetrocuadrado ()
case 3 : arearectangulo()
                perimetrorectangulo()
default : Print "Error opcion:  \n"
}
Print "Desea hacer otro calculo (S/N)"
Read  sigue
}
while ((sigue=='s')||(sigue=='S'))
}
Funciones
void imprimirmenu()
{
Print "Opciones del menú:\n”
Print “Area del circulo.\n"
Print “Area y perimetro del cuadrado.\n"
Print "Area y perimetro del rectangulo.\n"
Print "Elija una opcion: "
}
void areacirculo()
{
area, radio   real
Print "Calcular area del circulo\n"
Print "Radio del circulo: "
Read radio
area=3.1416*
radio*radio
Print "Area: ",area
}
void areacuadrado()
{
area, lado    real
Print "Calcular area del cuadrado\n"
Print "Lado: "
Read lado
area=lado*lado
Print "Area: ",area
}
void perimetrocuadrado()
{
perimetro, lado      real
Print  "Calcular perimetro cuadrado\n"
Print  "Lado: "
Read lado
perimetro=4*lado
Print "Perimetro: ",perímetro
}
void arearectangulo()
{
area, base, altura              real
Print  "Calcular area del rectangulo\n"
Print “Base: "
Read base
Print "Altura: "
Read altura
area=base*altura
Print  "Area: ",area
}
void perimetrorectangulo()
{
perimetro, base, altura                real
Print  "Calcular perimetro rectangulo\n"
Print "Base: "
Read base
Print  "Altura: "
Read altura
perimetro=(2*base)+(2*altura)
Print "Perimetro: ",perímetro
}
Fin.





Pseudocódigo Practica 11 Problema 2.
1.- Inicio.
Inicio programa
{
opción          char,
sigue              int
do
{
clrscr()
imprimirmenu()
Read opción
switch(opcion)
{
case 1 : radio          real
                Print "Radio del circulo: "
                Read radio
                areacirculo(radio)
case 2 : lado           real
                Print "Lado: "
                Read lado
                areacuadrado (lado)
                perimetrocuadrado (lado)
case 3 : base, altura          real
                Print “Base: "
                Read base
                Print "Altura: "
                Read altura
                arearectangulo(base, altura)
                perimetrorectangulo(base, altura)
default : Print "Error opcion:  \n"
}
Print “Desea hacer otro calculo (S/N)"
Read sigue
}
while ((sigue=='s')||(sigue=='S'))
}
Funciones.
void imprimirmenu()
{
Print “Opciones del menú\n"
Print "Area del circulo\n"
Print "Area y perimetro del cuadrado\n"
Print “Area y perimetro del rectángulo\n"
Print "Elija una opcion: "
}
void areacirculo(real radio)
{
area   real
Print "Calcular area del circulo\n"
area=3.1416*radio*radio
Print "Area: ",area
}
void areacuadrado(real lado)
{
area   real
Print "Calcular area del cuadrado\n"
area=lado*lado
Print "Area: ",area
}
void perimetrocuadrado(real lado)
{
perímetro     real
Print "Calcular perimetro cuadrado\n"
perimetro=4*lado
Print "Perimetro: ",perímetro
}
void arearectangulo(real base, real altura)
{
area   real
Print "Calcular area del rectangulo\n"
area=base*altura
Print "Area: ",area
}
void perimetrorectangulo(real  base, real altura)
{
perímetro     real
Print "Calcular perimetro rectangulo\n"
perimetro=(2*base)+(2*altura)
Print "Perimetro: ",perímetro
}
Fin.




Pseudocódigo Practica 11 Problema 3.
1.- Inicio.
Inicio programa
{
opción          int
sigue              char
do
{
clrscr()
imprimirmenu()
Read opción
switch(opcion)
{
case 1 : radio          real
                Print "Radio del circulo: "
                Read radio
                areacirculo(radio)
                Print "Calcular area del circulo\n"
                Print "Area: ",areacirculo(radio)
case 2 : lado           real
                Print "Lado: "
                Read lado
                areacuadrado (lado)
                perimetrocuadrado (lado)
                Print "Calcular area y perimetro del cuadrado\n"
                Print  "Area: ",areacuadrado(lado)
                Print "Perimetro: ",perimetrocuadrado(lado)
case 3 : base, altura          real
                Print "Base: "
                Read base
                Print "Altura: "
                Read altura
                arearectangulo(base, altura)
                perimetrorectangulo(base, altura)
                Print "Calcular area y perimetro del rectangulo\n"
                Print "Area: ",arearectangulo(base, altura)
                Print "Perimetro: ",perimetrorectangulo(base, altura)
default : Print "Error opcion:  \n"
}
Print "Desea hacer otro calculo (S/N)"
Read sigue
}
while ((sigue=='s')||(sigue=='S'))
}
Funciones.
void imprimirmenu()
{
Print "Opciones del menu"
Print "Area del circulo"
Print "Area y perimetro del cuadrado"
Print "Area y perimetro del rectangulo"
Print "Elija una opcion: "
}
real areacirculo(real radio)
{
area   real
area=3.1416*radio*radio
return area
}
real areacuadrado(real lado)
{
area   real
area=lado*lado
return area
}
real perimetrocuadrado(real lado)
{
perímetro     real
perimetro=4*lado
return perímetro
}
real arearectangulo(real base, real altura)
{
area real
area=base*altura
return area
}
real perimetrorectangulo(real base, real altura)
{
perimetro     real
perimetro=(2*base)+(2*altura)
return perímetro
}
Fin.




Pseudocódigo Practica 11 Problema 4.

1.- Inicio.
Inicio programa
{
numero,n1,n2         int
dig,ch                        char
Print "P=Positivo N=Negativo 1=Verdadero/SI DIVIDE, 0=Falso/NO DIVIDE.”
Print “Numero a evaluar: "
Read numero
numposneg(numero)
Print numposneg(numero)
Print "\nNumero 1: "
Read n1
Print "\nNumero 2: "
Read n2
dividendo(n1, n2)
Print "\nSolucion: ,dividendo(n1, n2)
Print "Temperatura en grados celsius: "
Read Celsius
temperatura(celsius)
Print "\nLa temperatura en grados fahrenheit es: ",temperatura(Celsius)
Print "\n\nCaracter: "
Read dig
digito(dig)
Print "\nSolucion: ",digito(dig)
Print "\n\nCaracter: "
Read ch
vocal(ch)
Print "\nSolucion: ",vocal(ch)
}
Funciones.
char numposneg (int numero)
{
if (numero>0)
{return 'P'}
else
{return 'N'}
}
boolean dividendo(int n1, int n2)
{
if (n1/n2>0)
{return true}
else
{return false}
}
int  temperatura(int celsius)
{
fahrenheit                real
fahrenheit=(9.0/5.0)*celsius +32
return fahrenheit
}
boolean digito(char dig)
{
if ((dig>='0')& (dig<='9'))
{return true}
else
{return false;}
}
boolean vocal(char ch)
{
if((ch=='a')||(ch=='A')||(ch=='e')||(ch=='E')||(ch=='i')||(ch=='I')||(ch=='o')||(ch=='O')||(ch=='u')||(ch=='U'))
{return true}
else
{return false}
}
Fin.



jueves, 22 de marzo de 2012

Tarea FUNCIONES
¿Que es una función?
Una función es un modulo de un programa separado del cuerpo principal, que realiza una tarea específica y que puede regresar un valor a la parte principal del programa u otra función o procedimiento que la invoque.
La forma general de una función es:
Tipodato Nomfun(parametros)
{
cuerpo de instrucciones;
return [dato,var,expresion];
}
Donde tipodato especifica el tipo de dato que regresara la función.
La instrucción RETURN es quien regresa un y solo un dato a la parte del programa que la este llamando o invocando, sin embargo es de considerar que return puede regresar un dato, una variable o una expresión algebraica(no ecuación o formula).
Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general toman ciertos valores de entrada, llamados parámetros y proporcionan un valor de salida o valor de retorno; aunque en C++, tanto unos como el otro son opcionales, y pueden no existir.



¿Qué es un prototipo de una función?
Un prototipo de función le da información importante al compilador. En el prototipo se indican el tipo de dato que retorna la función, el número, tipo y orden de parámetros que recibe la misma. El compilador utiliza los prototipos para verificar las llamadas a funciones. Antes el prototipado no existía y el compilador no podía detectar ciertos errores.           
Ejemplo:
int maximo(int, int, int);
Este prototipo indica que la función de nombre máximo retorna como resultado un valor de tipo entero. Además informa que la función debe ser llamada con tres parámetros del tipo entero también.
El prototipo también sirve para la coerción de argumentos, o sea, si la función es llamada con valores de otro tipo diferentes a los definidos en el prototipo de esa función, el compilador tratará de convertir esos valores a los tipos de datos correspondientes declarados en el prototipo (esto funcionará siempre y cuando sea posible la conversión entre esos tipos de datos). Por ejemplo, si la función espera un entero y recibe un decimal, intentará convertir ese decimal al entero truncando la parte decimal, lo cual puede generar errores si la exactitud de ese dato es importante.
Un prototipo es una declaración de una función. Consiste en una presentación de la función,  exactamente con la misma estructura que la definición, pero sin cuerpo y terminada con un ";". La estructura de un prototipo es:
[extern|static] <tipo_valor_retorno> [<modificadores>] <identificador>(<lista_parámetros>);
En general, el prototipo de una función se compone de las siguientes secciones:
Opcionalmente, una palabra que especifique el tipo de almacenamiento, puede ser extern o static. El tipo del valor de retorno, que puede ser void, si no necesitamos valor de retorno.
Modificadores opcionales. Tienen un uso muy específico, de momento no entraremos en este particular, lo veremos en capítulos posteriores.
El identificador de la función. Es costumbre, muy útil y muy recomendable, poner nombres que indiquen, lo más claramente posible, qué es lo que hace la función, y que permitan interpretar qué hace el programa con sólo leerlos. Cuando se precisen varias palabras para conseguir este efecto se puede usar alguna de las reglas más usuales. Una consiste en separar cada palabra con un "_". Otra, que yo prefiero, consiste en escribir la primera letra de cada palabra en mayúscula y el resto en minúsculas.
Una lista de declaraciones de parámetros entre paréntesis. Los parámetros de una función son los valores de entrada (y en ocasiones también de salida). Para la función se comportan exactamente igual que variables, y de hecho cada parámetro se declara igual que una variable. Una lista de parámetros es un conjunto de declaraciones de parámetros separados con comas. Puede tratarse de una lista vacía.
Por ejemplo:
int Mayor(int a, int b);
Un prototipo sirve para indicar al compilador los tipos de retorno y los de los parámetros de una función, de modo que compruebe si son del tipo correcto cada vez que se use esta función dentro del programa, o para hacer las conversiones de tipo cuando sea necesario.
En el prototipo, los nombres de los parámetros son opcionales, y si se incluyen suele ser como documentación y ayuda en la interpretación y comprensión del programa. El ejemplo de prototipo anterior sería igualmente válido si se escribiera como:
int Mayor(int, int);
Funciones con y sin parámetros, funciones con y sin entrega de valores.
Normalmente, las funciones operan sobre ciertos valores pasados a las mismas ya sea como constantes literales o como variables, aunque se pueden definir funciones que no reciban parámetros. Existen dos formas en C++ de pasar parámetros a una función; por referencia o por valor. El hecho es que si en una declaración de función se declaran parámetros por referencia, a los mismos no se les podrá pasar valores literales ya que las referencias apuntan a objetos (variables o funciones) residentes en la memoria; por otro lado, si un parámetro es declarado para ser pasado por valor, el mismo puede pasarse como una constante literal o como una variable. Los parámetros pasados por referencia pueden ser alterados por la función que los reciba, mientras que los parámetros pasados por valor o copia no pueden ser alterados por la función que los recibe, es decir, la función puede manipular a su antojo al parámetro, pero ningún cambio hecho sobre este se reflejará en el parámetro original.

También se puede omitir el prototipo si se hace la definición antes de cualquier llamada a la función, es decir, en la zona de declaración de prototipos.
Como no es necesario que una función acepte parámetros, entonces la cota inferior es obviamente 0 (cero). La cota superior depende del compilador que uses.
El vocablo 'return' aparece al comienzo de una sentencia. Por lo tanto, esta sentencia puede aparecer tantas veces como requiera la lógica de la función. Si la función retorna un valor, entonces debe aparecer al menos una sentencia 'return' y recomiendo que sea libre de condiciones. Varios compiladores se quejarán si no "ven" una sentencia 'return' "suelta", sin que dependa de condiciones como la sentencia 'if'.
Cuando una función no tiene parámetros, es porque no realiza operaciones con valores externos, o que dentro de las instrucciones se solicitan los datos necesarios para calcular y ejecutar las operaciones.
Cuando se retorna un valor al lugar donde se  mando ejecutar la funciones, este se puede utilizar en operaciones dentro de ese bloque, por ejemplo a continuación la variable que regrese se podría imprimir en una pantalla desde el bloque principal. También existen casos donde la función calcula y utiliza el valor encontrado, sin necesidad de retornar un valor al bloque principal, aunque en estos casos se recomiendo utilizar Void en lugar de main, ya que el segundo exige que se regrese un valor y en el primero solo se excluye el vocablo return del código.
int Mayor(int a, int b)
{
   if(a > b) return a; else return b;
}
*Estructura void

void mayor ()
{
if (a>b)
cout<<"Mayor"<<a<<endl;
else
cout<<"Mayor"<<b<<endl;
}

miércoles, 14 de marzo de 2012


PRACTICA 10.
Pseudocódigo Practica 10 problema 1.
Inicio.
a=0,t=0          int
poblacion=0          real
Print “An-o                Poblacion miles de millones de personas\n”
for(a=1985 to  a<=2012 step  a++)
{
poblacion=4.88*(1+exp(.02*t))
Print
a, población, “\n”
t=t+1
}
Fin.



Pseudocódigo Practica 10 problema 2.
Inicio.
 x=0,y=0,t=0 real
v=500, ang=(22.8*3.1416/180)  real
Print "x\ty\ttiempo\n"
for(t=0 to t<=10 stept=t+.05)
{
x=v*t*cos(ang)
y=v*t*sin(ang)
Print  x,"\t", y,"\t", t,”\n”
}
Fin.



Pseudocódigo Practica 10 problema 3.
Inicio.
e=1, r=1 int
resultado, dato, prom      real
for(e=1 to e<=4 step e++)
{
            resultado=0
            for(r=1 to  r<=6 step r++)
            {
                        Print "Resultado",r,": "
                        Read dato
                        resultado=resultado+dato
            }
prom=resultado/6.0
Print "\n\tExperimento No. ",e,"\n\tPromedio=",prom,"\n"
}
Print "\n\tPresiona Cualquier Tecla para Salir "
Fin.



Pseudocódigo Practica 10 problema 4a.
Inicio.
e=1, r=1 int
resultado, dato, prom      real
for(e=1 to e<=4 step e++)
{
            Print "No. de Resultados del experimento ",e,": "
            Read nr
            resultado=0
            for(r=1to r<=nr step r++)
            {
                        Print "Resultado",r,": "
                        Read dato
                        resultado=resultado+dato
            }
            prom=resultado/nr
            Print "\n\tExperimento No. ",e,"\n\tPromedio=”, prom,"\n"
}
Print "\n\tPresiona Cualquier Tecla para Salir "
Fin.



Pseudocódigo Practica 10 problema 4b.
Inicio.
e=1, r1, r2, r3, r4, r5, r6 int
resultado, dato, prom      real
for(e=1 to e<=4 step e++)
{
            resultado=0
            Print "Resultado 1: "
            Read r1
            Print “Resultado 2: "
            Read r2
            Print "Resultado 3: "
            Read r3
            Print "Resultado 4: "
            Read r4
            Print "Resultado 5: "
            Read r5
            Print "Resultado 6: "
            Read r6
            resultado=r1+r2+r3+r4+r5+r6
            prom=resultado/nr
            Print "\n\tExperimento No. ",e,"\n\tPromedio=”, prom,"\n"
}
Print "\n\tPresiona Cualquier Tecla para Salir "
Fin.



Pseudocódigo Practica 10 problema 5.
Inicio.
x=0,y=0,t=0,y1=0,x3=0,y3=0 Real
Print /*A*/
Print "x\ty\n"
for (x=5 to x<=10 step x=x+.2)
{
y=(x+(pow(x,2.0)/2.0)+(pow(x,3.0)/6.0)+(pow(x,4.0)/24.0)+(pow(x,5.0)/120.0))
Print x,"\t",y
}
/*B*/
Print "Valor de\nt\t y"
for (t=1 to t<=10 step t=t+.2)
{
y1=24*exp(0.04*t)
Print t, "\t",y1
}
/*C*/
Print "\n"
Print "x\ty"
for (x3=5 to x3<=10 step x3=x3+.5)
{
y3=5+(pow(x3,5))-(2*pow(x3,3))+x3
Print x3, "\t",y3
}
Fin.


Pseudocódigo Practica 10 problema 6.

x=0,y=0,z=0 real
Print "x\tz\ty"
for(x=2 to x<=6 step x++)
{
for (z=2; to z<=6 step z++)
{
if (x==z)
{
Print x, "\t",z, "\tFuncion Indefinida"
}
else
{
y=(pow(x,2)*z)/(x-z)
Print x, "\t",z, "\t", y
}
}
}
Fin.



lunes, 12 de marzo de 2012

Pantallas Tutorial.

1.-Bienvenida.


 2.-Indice.


3.-Unidad I


4.-Unidad II


5.-Unidad III

6.- Examen Unidad I

domingo, 11 de marzo de 2012

PRACTICA 9.
Pseudocódigo Practica9  Problema 1.


1.- Inicio.
n, f=1, suma=0        int
c1=0, c2=0   int
Print “Cantidad de términos de la serie (1!+2!+3!+…n!)”
Read n
for (c1=1 to n step c1++)
{
f=1
for (c2=c1 to 1 step c--)
{
f=f*c2
}
Print f
Si (c1==c2)
{
Print “ = “
}
else
{
Print “ + “
}
suma=suma+f
}
Print suma
Fin.


Pseudocódigo Practica9  Problema 2.

1.-Inicio
 x=0, suma=1           real
c=1, i=1, f=1 int
Print “Introduce el valor de X:"
Read x
Print “1+”;
while(c<=20)
{
f=1
for (i=c to 1 step i--)
{
f=f*i
}
Print pow(x,c)/f
suma=suma+pow(x,c)/f
Si (c==20)
{
Print " = "
}
Sino
{
Print" + "
}
c=c+1
}
Print suma
Fin.




Pseudocódigo Practica9  Problema 3.
 1.-Inicio
n          int
c1=0, c2=0   int
Print “Introduce numero de líneas: ”
Read n
for(c1=1 to n step c1=c1++)
{
for(c2=1 to c1 step c2=c2++)
{
Print “*\t ”
}
Print “\n”
}
Fin.


 Pseudocódigo Practica9  Problema 4.

1.-Inicio
art, total=0, efectivo, quarter=0, dime=0, cambio1=0, cambio2=0       real
otro    char
cambio, pennies=0           int
do
{
Print  "Precio artículo: "
Read art
art=art*100
total=total+art
Print "Desea ingresar otro articulo S o N: "
Read otro
}
while((otro=='s') Or (otro=='S'));
Print "Efectivo: "
Read efectivo
efectivo=efectivo*100
cambio1=(efectivo-total)/100
cambio2=(cambio1*100)
cambio=cambio2
Print "Cambio: ",(cambio1),”\n”
Si(cambio==0)
{
Print "Gracias por su compra."
}
Sino
{
while(cambio!=0)
{
Si((cambio/25)>0)
{
quarter=((cambio/25)-((cambio%25)/25))
cambio=cambio-(25*quarter)
Print "QUARTER: ",quarter,”\n”
}
Sino si ((cambio/10)>0)
{
dime=(cambio/10)-((cambio%10)/10)
cambio=cambio-(10*dime)
Print "DIME: ",dime, “\n”
}
Sino si (cambio!=0)
{
pennies=cambio
cambio=cambio-cambio
Print “PENNIES: ",pennies, “\n”
}
}
}
Fin.


Pseudocódigo Practica9  Problema 5.

1.-Inicio.
nombre[15], cuenta         real
tipo,hect, precio, costo    int
t1=0, t2=0, t3=0, t4=0, tipo1=0, tipo2=0, tipo3=0, tipo4=0, desc    int
do
{
Print “Nombre: "
Read nombre
Print "Tipo de fumigacion:  "
Read tipo
Print  “Hectareas a fumigar: "
Read  hect
switch(tipo)
{
            case 1 : costo=10
            t1++
            case 2 : costo=20
            t2++
            case 3 : costo=30
            t3++
            case 4 : costo=50
             t4++
            default: Print “Tipo invalido./n"
}
precio=costo*hect
Si (hect>1000)
{
precio=precio*(0.95)
}
Si (precio>1500)
{
desc=((precio-1500)*.10)
precio=precio-desc
}
Print "Precio cuenta: ",precio,”\n”
Si (costo==10)
{
tipo1=tipo1+precio
}
Sino Si  (costo==20)
tipo2=tipo2+precio
}
Sino Si   (costo==30)
{
tipo3=tipo3+precio
}
Sino
{
tipo4=tipo4+precio
}
Print "Desea calcular otra cuenta S/N: "
Read cuenta
}
while ((cuenta=='s')||(cuenta=='S'))
Print "Fumigacion tipo 1: ",tipo1, “\n”
Print "Fumigacion tipo 2: ",tipo2, “\n”
Print "Fumigacion tipo 3: ",tipo3, “\n”
Print "Fumigacion tipo 4: ",tipo4, “\n”
Si ((t1>t2) &(t1>t3)&(t1>t4))
{
Print "La fumigacion mas solicitada es la tipo 1."
}
Sino Si ((t2>t1) &(t2>t3)&(t2>t4))
{
Print "La fumigacion mas solicitada es la tipo 2."
}
Sino Si ((t3>t1) &(t3>t2)&(t3>t4))
{
Print "La fumigacion mas solicitada es la tipo 3."
}
Sino
{
Print "La fumigacion mas solicitada es la tipo 4."
}
Fin.

jueves, 8 de marzo de 2012

PRACTICA 8.
Pseudocódigo Practica8 Problema 1.

1.- Inicio.
x, y, f real
Print “x           y          f(x,y)”
for(x=2 to 8 step x=x+2)
{
for(y=6 to 21 step y=y+3)
{
f=((pow(x,2)-pow(y,2))/( pow(x,2)+pow(y,2)))
Print  x, “        “, y,”   ”, f
}
}
Fin.


Pseudocódigo Practica8 Problema 2.
1.- Inicio.
x, y, f real
Print “x           y          f(x,y)”
for(x=-4 to 4 step x=x+1)
{
for(y=-5 to 5 step y=y+1)
{
f=((pow(x,2)-pow(y,2))/( pow(x,2)+pow(y,2)))
if(((pow(x,2)/16)+(pow(y,2)/25))==1)
{
Print x, "   ", y, “ “, f
}
}
}
Fin.


Pseudocódigo Practica8 Problema 3.
1.- Inicio.
numero, i, j f real
numero=0
i=0
j=0
do
{
Print “Introduce un numero positivo: "
Read numero
if(numero<0)
{
Print “El numero no es valido.
"
 }
}
while(numero<0)
{
for ( i=1 to i<=numero step i=i+1)
{
for( j=1 to j<=(numero-(i-1)) step j=j+1)
{
Print "\t"
}
Print “\n”
}
}
Fin.

Pseudocódigo Practica8 Problema 4.
1.-Inicio
n=0, i=0, edad=0, goles=0, asistencia=0,min=0, jugador=0 int
nombre [15]            char
altura, peso, f          real
eva=0, mayor=0    real
Print “Introduzca numero: ”
read n
for(i=1 to n step i=i++)
{
Print “Nombre: ”
Read nombre
Print “Edad: ”
Read edad
Print “Altura: ”
Read altura
Print “Peso: ”
Read peso
Print “Goles: ”
Read goles
Print “Asistencia: ”
Read asistencia
Print “Minutos: ”
Read minutos
Print “Factor de liga: ”
Read f
eva= ((goles+asistencia-min)/4+(altura+peso)/5-edad)*f
Print "Nombre: ",nombre
Print "Evaluacion: ",eva
if (eva>mayor)
{
mayor=eva
jugador=i
}
}
Print "Jugador con evalucion mayor: ",jugador
Print “Evaluacion: ",mayor
Fin.