- Practica 1 Problema 1Algoritmo:iniciopaso 1. Imprimir Instituto Tecnológico de Tijuana.paso 2. Imprimir ing. electrónica.paso 3. Imprimir programación estructurada.paso 4. Imprimir materia: programación estructurada.paso 5. Imprimir horario: lunes 8-10, martes 8-10, vi 8-9paso 6. Imprimir no, control: 12210518fin.Practica 1 problema 2Algoritmo:iniciopaso 1. Imprimir formulas geométricas.paso 2. Imprimir formulas para calcular el área de un cuadrado a= lxl.paso 3. Imprimir formulas para calcular el área de un triangulo a= bxh/2paso 4. Imprimir formulas para calcular el área de un rectangulo a= bxhpaso 5. Imprimir formulas para calcular el área de un rombo a= dxd/2paso 6. Imprimir formulas para calcular el área de un romboide a= bxhpaso 7. Imprimir formulas para calcular el área de un trapecio h(bxb)/2paso 8. Imprimir formulas para calcular el área de un polígono regular a= pxa/2paso 9. Imprimir formulas para calcular el área de un prisma recto a= p(hxa)paso 10. Imprimir formulas para calcular el área de un elipse a= pixaxbpaso 11.Imprimir formulas para calcular el perimetro de un paralelogramofin.
Practica 1 Problema 3Algoritmo:iniciopaso 1. Imprimir grados, radianes.paso 2. Imprimir 0 0.0000paso 3. Imprimir 90 1.5708paso 4. Imprimir 180 3.1416paso 5. Imprimir 270 4.7124paso 6. Imprimir 360 6.2832fin.
Practica 1 Problema 4Algoritmo:iniciopaso 1. Imprimir *********** **************** ** **paso 2. Imprimir * * * * * * * *paso 3. Imprimir * * * * * * * *paso 4. Imprimir * * * * * * * *paso 5. Imprimir *********** **************** ******** **fin.
Practica 1 Problema 5Algoritmo:iniciopaso 1. Imprimir ********* ********* **********paso 2. Imprimir * * *
paso 3. Imprimir * * *paso 4. Imprimir ***** * **** * ****paso 5. Imprimir * * * * *paso 6. Imprimir * ********** **********fin.
Practica 1 Problema 6Algoritmo:iniciopaso 1. Imprimir 111111111111111paso 2. Imprimir 2222222 2paso 3. Imprimir 2 2 2paso 4. Imprimir 2 22222222paso 5. Imprimir 2222222 2paso 6. Imprimir 2 2 2paso 7. Imprimir 2 22222222paso 8. Imprimir 111111111111111fin.paso 9. Imprimir 000000000000000paso 10. Imprimir 0 0paso 11. Imprimir 0 0paso 12. Imprimir 000000000000000paso 15. Imprimir 55555555 5paso 13. Imprimir 5 555555555paso 14. Imprimir 5 5 5
paso 16. Imprimir 1111111111111111paso 17. Imprimir 8888888888888888paso 20. Imprimir 8888888888888888paso 18. Imprimir 8 8 8paso 19. Imprimir 8 8 8
Pratica 2 problema 1Algoritmo:1. Inicio2. Inicializar las variables m, n, p.
3. Mostar las variablesm= 50, n= 10, p=5
4. Calcular las operacoinesn/p+310/5+3
m/p+n-10*a
m-3*n+4*a
(m+n)/(p+a)
m+n/p+a
5. Mostrar los calculos realizadosprint"n/p+310/5+3="
print"m/p+n-10*a="
print"m-3*n+4*a="
print"(m+n)/(p+a)="
print"m+n/p+a="
6. Finfin.Pratica 2 problema 2Algoritmo:1. Inicilio2. Inicializar las variables p, h.
3. Mostar las variablesp=3.0, h=4%6.
4. Calcular las operacionesp+4.0*6.6
p*4.0/6.0+6.0
2.0*p/12.0*8.0/4.0
20.0-2.0/6.0+p
p*h+6
5. Mostrar los calculos realizados
print"p+4.0*6.6=3.0+4.0*6.6="
print"p*4.0/6.0+6.0=3.0+4.0/6.0+6.0="
print"2.0*p/12.0*8.0/4.0=2.0*3.0/12.0+8.0/4.0="
print"20.0-2.0/6.0+p=20.0+2.0/6.0+3.0=""
print"p*h+6="3.0*4%6+66. Finfin.Pratica 2 problema 3Algoritmo:
1. Inicio
2. Inicializar las variables p, h.
3. Mostar las variablesx=3.0, z=4.0, y=2, r, d=17%3
4. Calcular las operaciones
r=10+d+z
r=20-y/6+x
r=10+17/x+z
r=10+15.0/y+x+4.5
r=x+z/y+(z)*(y)5. Mostrar los calculos realizados
print"r=10+d+z=10+17%3.0+4.0="
print"r=20-y/6+x=2.-2/6+3.0="
print"r=10+17/x+z=10+17/3.0+4.0="
print"r=10+15.0/y+x+4.5=10+15.0/2+3.0+4.0="
print"r=x+z/y+(z)*(y)=3.0+4.0/2+(4.0)*(2)="6. FinPratica 2 problema 4Algoritmo:
1. Inicio2. Evaluar las expresiones
10.0(1.0+7.0*3.0)(20.0-4.0)(6.0-4.0)
6.6(3.0+17.0)
(2.1+8.9)(15.3-3.8)
4.5/2.0*1.23. Mostrar los calculos realizados
print"10.0(1.0+7.0*3.0)print"(20.0-4.0)(6.0-4.0)
print"6.6(3.0+17.0)
print"(2.1+8.9)(15.3-3.8)
print"4.5/2.0*1.24. FinPratica 2 problema 5Algoritmo:
1. Inicio
2. Inicializar las variables x, m, d.
x=85.3, m=80, d=43. Mostrar los datos x, m, d.
print"calculo de desviacion normal estandar"
print"x=85.3, m=80, d=4"
4. Calcular la desviacion normal estandar
z=(x-m)/d5. Mostrar el resultado de la desviacion normal estandar.
print"z=(x-m)/d=z=(85.3-80)/46. Finfin.Pratica 2 problema 6Algoritmo1.Inicio2.Inicializar la variable radioradio = 3.33.Mostrar el valor de radioprint"Calculo área y circunferencia de un circuito "print"radio 3.3 "4.Calcular el áreaarea = 3.1416*radio *radio5. Calcular la circunferenciaper= 3.1416*radio*26. Mostrar los cálculos de área y perímetroprint" Area = ", Areaprint"Circunferencia= ", per7. FinPratica 2 problema 71. Inicio2. Cargar las variablesr1= 18*100;r2= 5*220;r3= 15*75;r4= 22*56;rt;3. mostrar las variablesprint"calcular las resistencia total (Rt) en un circuito serie"print"r1= 100 ohms *18"print"r2= 220 ohms *5"print"r3= 75 ohms *15"print"r4= 53 ohms *22"4. Calcular la resistencia totalrt= r1+r2+r3+r4 =5. Mostrar el resultado de los cálculosprint"Rt= r1+r2+r3+r4 = ", Rt6. FinPratica 2 problema 8Algoritmo:1. Inicio2. Inicializar las variablesradio=2.5altura= 163. Calcular el área y el volumen de la superficiesuperficie = 2*3.1416*radio*alturavolumen = 3.1416*radio*radio*altura4. Mostrar los resultados de los calculos realizadosprint"superficie =2.3.1416*2.5*16 = ", superficieprint"volumen = 3.1716*2.5*2.5*16 = ", volumen5. FinPractica 3 proeblema 1Algoritmo:1. Inicio
2. Inicializar las variables m, f, a, b.
m=1.672, f=14.65, a=1.845, b=2.53. Mostrar los datos x, m, d.4. Finprint"m=1.672, f=14.65, a=1.845, b=2.5"3. Mostrar los calculos realizados
print"lg=2*pi*e^m=lg=2*pi*e^1.672="
print"f*sqrt(m)+10e^a+b=14.65*sqrt(1.672)+10e^1.845+2.5="
print"2.30f/sqrt(0.98*f^2)=2.30*14.65/sqrt(0.98*14.65^2)=""
print"1.0/m(e^2(a+b))+1.55=1.0/1.672(e^2(1.845+2.5))+1.55="
print"6.688e^2m+3.84f=6.688e^2*1.672+3.84*14.65"
Problema 3 practica 2Algoritmo:1. Inicio
2. Inicializar las variables f1, f2, c, r, R, E.3. Mostrar los datos f1, f2, c, r, R, E.print"f1=6.685e^6, f2=2.0^e-10, c=220x10^-6, r=470, R=800, E=210"4. Mostrar los calculos realizados
print"(f1+f2)/(f1-f2)="
print"1.0/2.0(f1*f2)^10/4.0="
print"E/(r+R)="
print"230E/sqrt(56)^2+0.98(f1+f2)^2="
prin"150E/0.38(f1)(f2)="
5.Fin
Practica 3 problema 3aAlgoritmo:
1.inicio
2.inicializar las variables
f=120.0, n=4.0, t=1.0
3.Mostras las variables
print" f=120.0, n=4.0, t=1.0 "
4.calcular la ganancia de voltaje
GV=(275/(23^2+0.5f^2)^t/2)^n
5.Mostrar el resultado de la ganancia de voltaje
print" ganancia de voltaje ="GV,
6.Fin
Pratica 3 problema 3b
Algoritmo:
1.inicio
2.inicializar las variables
f=9500, n=4.0, t=1.0
3.Mostras las variables
print" f=120.0, n=4.0, t=1.0 "
4. calcular la ganancia de voltaje
GV=(275/(23^2+0.5f^2)^t/2)^n
5.Mostrar el resultado de la ganancia de voltaje
print"ganancia de voltaje ="GV,
6.FinPratica 3 problema 4
Algoritmo:
1.inicio
2.inicializar las variables
a=4.5
b=8.4
3.Mostrar las variables
print"a= Radio menor de 4.5 pulgadas"
print"b= Radio mayor de 8.4 pulgadas"
4.Calcular la circunferencia de una elips
circunferencia=pi*raiz((a+b)^2)
5.mostrar los calculos realizados
print"circunferencia= pi*raiz((a+b)^2)="circunferencia
6.Fin
Practica 3 problema 5Algoritmo:
1.inicio
2.inicializar las variables
e=35, r=55, c=0.067, t= 12.4;
3.Mostrar las variables
print"r=55, r=55, c=0.067, t= 12.4"
4.Calcular el flujo de corriente atravez de un circuito RC
i=(e/r)*exp(-c/t)
5.mostrar los calculos realizados
print"i=(e/r)exp-c/t =" i
6.Fin
Practica 4 problema 1Diagrama de flujo
Practica 4 problema 2Diagrama de flujo
Practica 4 problema 3Diagrama de flujo
Practica 4 problema 4Diagrama de flujo
Practica 4 problema 5Diagrama de flujo
Practica 5 problema 1
Pseudocodigo:
Inicio
Valon int
Print "introduce un valor entero=”
Read valor
If (valor%2==0)
{
Print valor, “es un numero par”
}
Else
{
Print valor, “es un numero impart”
}
Fin
Practica 5 problema 2Pseudocodigo:Iniciox intz intPrint”introduce un valor entero”
Read x
Print“introduce un segundo valor entero”Read z
If(x>z)
{
Print “el primer valor es mayor”
}
Else
If(x==z)
{Print “los dos valores son iguales”
}else
{Print”el primer valor es menor”
}finPractica 5 problema 3Pseudocodigo:
Inici
a real
b real
c real
d real
R real
char Nombre[25];
print "Nombre del Alumno"
read.getline(Nombre,25)
print "Calificacion parcial 1"
read a
print "Calificacion parcial 2"
read bprint "Calificacion parcial 3"
read c
print "Calificacion parcial 4"
read d
R=(a+b+c+d)/4;
if(R>7)
{
Print “ Nombre “
print “ R”
print " Aprobo"
}
else
{
Print “Nombre “
print “R”
print " no aprobo"
}
FinPractica 5 problema 4Pseudocodigo:Inicio
int x;
Print"Prueba de aislamiento=?"
Read x;
if(x>600)
{
Print"prueba de voltaje aprovada"
}
else
{
if(x==600)
{
Print"prueba de voltaje aprobada"
}
else
{
Print"prueba de voltaje no aprobada"
}}
fin
Practica 5 problema 5Pseudocodigo:
Inciot1 realt2 real
n3 real
r real
r1 real
v real
v1 real
print"medida del lado del terreno t1="
read t1
r=t1*t1
print "medidas en metro cuadrados del terreno t1*t1"
print"r="
v=r*100
print "costo por metro cuadrado r*100"
print"v= "
print"introducir la medida de la base t2="
read t2
print "introducir la medida de la altura n3="
read n3
r1=n3*t2
print "valor n3*n2"
print "r1="
v1=r1*150
print"costo por metro cuadrado r*100"
print "v1= "
if (v<v1)
{
print"el primer terreno es mas barato "
}
Else
{
if(v==v1)
{
Print "los dos terrenos son iguales"
}
Else
{
if (v>v1)
print "el segundo terreno es mas caro "
}
}
fin
Practica 5 problema 6pseudocodigo:
Inicio
a,b,c real
print " primer numero ="
read a
print " segundo numero = "
read b
print " tercero numero ="
read c
if(a<b&&b<c)
{
Print “los numeros estan en orden acendente"
}
else
{
if(c<b&&b<a)
{
Print "los numeros estan en orden desendente"
}
else
{
Print "los numeros estan sin orden"
}
}
Fin
Practica 5 problema 7
Pseudocodigo:
Inicio
int horas
int minutos
Print"horas"
Read horas;
Print"minutos"
Read minutos;
Print"horas":"minutos
if(horas>=1&&horas<=12)
cout<<horas<<":"<<minutos<<"am"<<endl;
if(horas>=13&&horas<=24)
if(horas=horas-12)
Print"horas":"minutos"pm"
Fin
Practica 5 problema 8
Pseudocodigo:
Inicio
Dia int
Año int
Mes [10] char
Print “introduzca dia mes año=”
Read dia, mes, año
Print dia, “”,mes, “”, año
If (mes== “enero”)
{
Print dia, “/”, 1, “/”, año
}
Else
{
If(mes= =“febrero”)
{
Print dia , “/”,2, “/”,año
}
Else
{
If(mes== “marzo”)
{
Print dia , “/”,3, “/”,año
}
Else
If(mes== “abril”)
{
Print dia , “/”,4, “/”,año
}
Else
{
If(mes== “mayo”)
{
Print dia , “/”,5, “/”,año
}
Else
{
If(mes== “junio”)
{
Print dia , “/”,6, “/”,año
}
Else
{
If(mes== “julio”)
{
Print dia , “/”,7, “/”,año
}
Else
{
If(mes== “agosto”)
{
Print dia , “/”,8, “/”,año
}Else
{
If(mes== “septimbre”)
{
Print dia , “/”,9, “/”,año
}
Else
{
If(mes== “octubre”)
{
Print dia , “/”,10, “/”,año
}
Else
{
If(mes== “noviembre”)
{
Print dia , “/”,11, “/”,año
}
Else
{
If(mes== “diciembre”)
{
Print dia , “/”,12, “/”,año
}
}
}
}
}
}
}
}
}
}
}
}
}
Fin
Practica 6 problema 1Pseudocodigo:Inicio
Valon int
Continuar= 1 int
while (continuar==1)
Print "introduce un valor entero=”
Read valor
If (valor%2==0)
{
Print valor, “es un numero par”
}
Else
{
Print valor, “es un numero impart”
}
Print" Desea continuar 1(si) ó 2(no"
Read continuar
Fin
Practica 6 problema 2Pseudocodigo:Iniciox intz intContinuar= 1 int
while (continuar==1)
Print”introduce un valor entero”
Read x
Print“introduce un segundo valor entero”Read z
If(x>z)
{
Print “el primer valor es mayor”
}
Else
If(x==z)
{Print “los dos valores son iguales”
}else
{Print”el primer valor es menor”
}Print" Desea continuar 1(si) ó 2(no"
Read continuar
fin
Practica 6 problema 3Pseudocodigo:Inicio
a real
b real
c real
d real
R real
Continuar= 1 real
while (continuar==1)
char Nombre[25];
print "Nombre del Alumno"
read.getline(Nombre,25)
print "Calificacion parcial 1"
read a
print "Calificacion parcial 2"
read bprint "Calificacion parcial 3"
read c
print "Calificacion parcial 4"
read d
R=(a+b+c+d)/4;
if(R>7)
{
Print “ Nombre “
print “ R”
print " Aprobo"
}
else
{
Print “Nombre “
print “R”
print " no aprobo"
Print" Desea continuar 1(si) ó 2(no"
Read continuar
}
Fin
Practica 6 problema 4Pseudocodigo:Inicio
int x;
Continuar= 1 int
while (continuar==1)
Print"Prueba de aislamiento=?"
Read x;
if(x>600)
{
Print"prueba de voltaje aprovada"
}
else
{
if(x==600)
{
Print"prueba de voltaje aprobada"
}
else
{
Print"prueba de voltaje no aprobada"
Print" Desea continuar 1(si) ó 2(no"
Read continuar
}}
fin
Practica 6 problema 5Pseudocodigo:Inciot1 realt2 real
n3 real
r real
r1 real
v real
v1 real
Continuar= 1 real
while (continuar==1)
print"medida del lado del terreno t1="
read t1
r=t1*t1
print "medidas en metro cuadrados del terreno t1*t1"
print"r="
v=r*100
print "costo por metro cuadrado r*100"
print"v= "
print"introducir la medida de la base t2="
read t2
print "introducir la medida de la altura n3="
read n3
r1=n3*t2
print "valor n3*n2"
print "r1="
v1=r1*150
print"costo por metro cuadrado r*100"
print "v1= "
if (v<v1)
{
print"el primer terreno es mas barato "
}
Else
{
if(v==v1)
{
Print "los dos terrenos son iguales"
}
Else
{
if (v>v1)
print "el segundo terreno es mas caro "
Print" Desea continuar 1(si) ó 2(no"
Read continuar
}
}
fin
Practica 6 problema 6Pseudocodigo:Inicio
a,b,c real
Continuar= 1 real
while (continuar==1)
print " primer numero ="
read a
print " segundo numero = "
read b
print " tercero numero ="
read c
if(a<b&&b<c)
{
Print “los numeros estan en orden acendente"
}
else
{
if(c<b&&b<a)
{
Print "los numeros estan en orden desendente"
}
else
{
Print "los numeros estan sin orden"
Print" Desea continuar 1(si) ó 2(no"
Read continuar
}
}
Fin
Practica 6 problema 7Pseudocodigo:Inicio
int horas
int minutos
Continuar= 1 int
while (continuar==1)
Print"horas"
Read horas;
Print"minutos"
Read minutos;
Print"horas":"minutos
if(horas>=1&&horas<=12)
cout<<horas<<":"<<minutos<<"am"<<endl;
if(horas>=13&&horas<=24)
if(horas=horas-12)
Print"horas":"minutos"pm"
Print" Desea continuar 1(si) ó 2(no"
Read continuar
Fin
Practica 6 problema 8Pseudocodigo:Inicio
Dia int
Año int
Continuar= 1 int
while (continuar==1)
Mes [10] char
Print “introduzca dia mes año=”
Read dia, mes, año
Print dia, “”,mes, “”, año
If (mes== “enero”)
{
Print dia, “/”, 1, “/”, año
}
Else
{
If(mes= =“febrero”)
{
Print dia , “/”,2, “/”,año
}
Else
{
If(mes== “marzo”)
{
Print dia , “/”,3, “/”,año
}
Else
If(mes== “abril”)
{
Print dia , “/”,4, “/”,año
}
Else
{
If(mes== “mayo”)
{
Print dia , “/”,5, “/”,año
}
Else
{
If(mes== “junio”)
{
Print dia , “/”,6, “/”,año
}
Else
{
If(mes== “julio”)
{
Print dia , “/”,7, “/”,año
}
Else
{
If(mes== “agosto”)
{
Print dia , “/”,8, “/”,año
}Else
{
If(mes== “septimbre”)
{
Print dia , “/”,9, “/”,año
}
Else
{
If(mes== “octubre”)
{
Print dia , “/”,10, “/”,año
}
Else
{
If(mes== “noviembre”)
{
Print dia , “/”,11, “/”,año
}
Else
{
If(mes== “diciembre”)
{
Print dia , “/”,12, “/”,año
Print" Desea continuar 1(si) ó 2(no"
Read continuar
}
}
}
}
}
}
}
}
}
}
}
}
}
Fin
Practica 6 problema 9
Pseudocodigo:
inicio
gasto=0 real
suma=0 real
n=1 int
while (gasto!=-1)
{
Print"gasto", n, "=?"
read gasto
if(gasto!=-1)
{
suma=suma+gasto
}
n=n+1
}
Print"gasto total = ",suma
FinPractica 6 problema 10
Pseudocodigo:
Inicio
suman=0, sumap=0, numero, c=1, np=0, nn=0, t, r,n int
char sigue 's';
while(sigue=='s'||sigue=='s')
{
Print"Introdusca la cantidad de numeros enteros="Read n
while(c<=n)
{
Print"introduce valor entero positivo o negativo=?"
Read numero
if(numero>0){
sumap=sumap+numero;
np=np+1;
}
else{
if(numero<0)
{
suman=suman+numero;
nn=nn+1;
}
}
c=c+1
}
Print "El promedio de los numero positivos es="(sumap/np)
Read n
print"El promedio de los numero negativos es="(suman/nn)
Fin
Practica 6 problema 11
Pseudocodigo:
Inicio
N int
sumaN=0, sumaP=0 int
numero, c=1, NP=0, NN=0 int
continuar=1 int
while (continuar==1)
{
Print" Introdusca la cantidad de los numeros enteros"
Read N
while (c<=N)
{
Print" Introduce un valor entero positivo o negativo = "
Read numero
if (numero>0)
{
sumaP=sumaP + numero
NP=NP+1
}
else
{
if (numero<0)
{
sumaN=sumaN + numero
NN=NN+1
}
}
c=c+1
}
Print" El promedio de los numeros positivos es = "(sumaP/NP)
Print" El promedio de los numeros negativos es = "(sumaN/NN)
Fin
Practica 6 problema 13Pseudocodigo:
Inicio
Venta float
n=1, v200=0, v300=0, v400=0 int
continuar='s’ char
while(continuar=='s'||continuar=='S')
{
print" Introduce la venta "N" = "
read venta
if(venta<=200.0)
{
v200=v200+1
}
else {
if(venta>200.0&&venta<400.0)
{
v300=v300+1
}
else
{
v400=v400+1
}
}
N=N+1
Print " Registrar otra venta (s/n) = "
Read continuar
Print " Numero de ventas" (N-1)
Print" Ventas menor o igual a $200.00= "v200
Print" Ventas mayor a 200.00 pero menor $400.00= "v300
Print" Ventas mayor o igual a $400.00= "v400
Fin
Practica 6 problema 14Pseudocodigo:
Inicioc1,c2,n intcontinuar=1 intwhile (continuar==1){Print " introduce cualquier numero entero positivo= "Read nif (n%2==0){c1=n/2Print "si es Par realizar /2 = "c1}else{c2=n*3+1Print" si es impar realizar *3+1 = "c2FinPractica 7 problema 1
Pseudocodigo:
Inicio
nombre [20], sigue char
tipo, sueldo, categoria int
aumento real
do
{
Print "Nombre del Trabajador "
read nombre
Print "Sueldo: "
read sueldo
do
{
Print "Aumento de Sueldo "
read categoria
switch(categoria)
{
case 1:aumento=1.15*sueldo
break
case 2:aumento=1.10*sueldo
break
case 3:aumento=0.8*sueldo
break
case 4:aumento=0.7*sueldo
break
case 5:aumento=0.6*sueldo
break
default:
{
Print "Error en tipo de aumento de sueldo "
}
categoria=0
}
}
while(categoria=0)
Print "Nombre del Trabajador: " , nombre
Print "Aumendo del sueldo: " ,aumento
Print "Desea Continuar (s/n): "
read sigue
}
while(sigue=='s'||sigue=='S')
Fin
Practica 7 problema 2
Pseudocodigo:suma=0 int
Inicio
zona int
minutos int
costo real
Print "Minutos de la llamada "
read minutos
do
{
Print "zona geografica "
read zona
switch(zona)
{
case 5:costo=2.0*minutos
Print " costo de la llamada a la zona america del norte es: ", costo
break
case 7:costo=2.5*minutos
Print "costo de la llamada a la zona central es: ", costo
break
case 14:costo=4.0*minutos
Print "costo de la llamada a la zona america sur es: ", costo
break
case 20:costo=6.5*minutos
Print "costo de la llamada a la zona europea es: "
break
case 22:costo=7.0*minutos
Print "costo de la llamada a la zona asia es: ", costo
break
default
{
Print "Error clave zona geografica"
zona=0
}
}
while(zona==1)
Print "Desea otro calculo 1(si) 0(no)= "
read zona
}
while(zona==1)
Fin
Practica 7 problema 3
Pseudocodigo:
Inicio
nombre [20], sigue char
tipo, edad, dias int
costo real
do
{
Print "Nombre del Pasiente "
read nombre
Print "Edad: "
read edad
Print "Dias de Hospitalizacion: "
read dias
do
{
Print "Tipo de Enfermedad "
read tipo
switch(tipo)
{
case 1:costo=25.00*dias
break
case 2:costo=15.00*dias
break
case 3:costo=20.00*dias
break
case 4:costo=35.00*dias
break
case 5:costo=48.00*dias
break
default:
{
Print "Error en tipo de Enfermedad "
}
tipo=0
}
}
while(tipo=0)
if(edad>=14&&edad<=22)
{
costo=costo*1.10
}
Print "Nombre del Pasiente: ",nombre
Print "Costo de la Internacion: ",costo
Print "Desea Continuar (s/n): "
read sigue
}
while(sigue=='s'||sigue=='S')
Fin
Practica 7 problema 4
Pseudocodigo:Inicio
termino=3, n int
conta=1 int
Print "Cantidad de terminos de la serie "
read n
while(conta<=n)
{
suma=suma+termino
Print termino ,"+"
termino=termino+3
conta=conta+1
}
Print ": ", suma
Fin
Practica 8 problema 1
Pseudocodigo:Iniciovi,vf,fah,celsius,kelvin floatPrint "valor inicial temperatura celsius: "read viPrint "valor final temperatura celsius: "read vfPrint "celsius fahrenheit kelvin"for(celsius=vi to vf spet celsius=celsius+1){fah=(9.0/5.0)*(celsius+32.0)kelvin=celsius+273.15Print celsius , " \t " , fah , "\t\t" , kelvin}FinPractica 8 problema 2
Pseudocodigo:
Inicio
x, F, fact int
L=5 float
P float
Print "cliente Probabilidad de Poisson"
for(x=1 to 20 step x=x+1)
{
fact=1
for(F=x to 1 step F=F-1)
{
fact=fact*F
}
P=pow(L,x)*exp(-1)/fact
Print x, " " , P
}
Fin
Practica 8 problema 3
Pseudocodigo:
Inicio
serie=0, n, conta,termino int
Print "Numeros de terminos de la serie"
read n
for(conta=1 to n step conta++)
{
termino=2*conta
Print termino
if(conta==n)
{
Print "="
}
else {
Print "+"
}
serie=serie + termino
}
Print serie
Fin
Practica 8 problema 4
Pseudocodigo:
Inicio
X, Y ,T float
Print " X "
for (X=2to 8 step X=X+0.2)
{
Y=4 * pow (X,3)-3* pow(X,2)-5
Print X ," \t " ,Y
}
Print "\nX Y "
for(X=1 to 5 step X=X+0.5)
{
Y=X+pow(X,2)/6+pow(X,4)/24
Print X ," \t " , Y
}
Print "\n T Y"
for (T=2 to 4 step T=T+0.1)
{
Y=4*exp(0.2*T)
Print T ,"\t " , Y
}
Fin
Practica 8 problema 5
Pseudocodigo:
Inicio
x, y, v, t float
ang=((33.5*3.1416)/180.0) float
Print "x \t y"
for(t=1.0;t<=20.0;t=t+0.5)
{
x=v*t*cos(ang)
y=v*t*sin(ang)
Print x , "\t" , y
}
Fin
Practica 8 problema 6
Pseudocodigo:
Inicio
x int
Print "x \t x^2 \t x^3"
for(x=1to 15 step x=x+2)
{
Print x , "\t" , (x*x) , "\t" , (x*x*x)
}
Fin
Practica 8 problema 7
Pseudocodigo:
Inicio
vi,vf,fah,celsius,kelvin float
Print "valor inicial temperatura celsius: "
read v
Print "valor final temperatura celsius: "
read vf
Print "celsius fahrenheit kelvin"
for(celsius=vi to vf spet celsius=celsius+1)
{
fah=(9.0/5.0)*(celsius+32.0)
kelvin=celsius+273.15
Print celsius , " \t " , fah , "\t\t" , kelvin
}
FinPractica 9 problema 1Pseudocodigo:
Inicio
e int
r int
float suma=0.0
float promedio
float resultado
for(e=1;e<=4;e =e+1)
{
suma=0.0
print "resultados del experimento:",e
for(r=1;r<=6;r =r+1)
{
print "resultado:",r," = "
read resultado
suma=suma+resultado
}
promedio=suma/6
"print promedio de resultados del experimento:"" = ",promedio,
}
Fin
Practica 9 problema 2A
Pseudocodigo:
Inicio
e int
r int
w int
suma=0.0 float
promedio float
resultado float
for(e=1 to 4 step e =e+1)
{
suma=0.0
print "resultados del experimento:",e
print "numero de resultados:"
read w
for(r=1 to w r =r+1)
{
print "resultado:",r," = "
read resultado
suma=suma+resultado
}
promedio=suma/w
print "promedio de resultados del experimento:"" = ",promedio
}
Fin
Practica 9 problema 2B
Pseudocodigo:
Inicio
e int
r int
suma=0.0 float
promedio float
resultado float
r1 float
r2 float
r3 float
r4 float
r5 float
r6 float
for(e=1 to 4 step e =e+1)
{
suma=0.0
print "resultados del experimento:",e,
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
suma=r1+r2+r3+r4+r5+r6
promedio= suma/6
print "promedio de los resultados del experimento",e," = ",promedio
}
Fin
Practica 9 problema 3
Pseudocodigo:
Inicio
X int
Z int
Y int
Print " x z y "
Print "\n"
for(x=1 to 10 step x=x+1)
{
for(z=2 to 10 step z=z+1)
{
Print ,x," ",z;
if(x== z)
{
Print " funcion indefinida"
}
else
{
y=(pow(x,2)*(z))/(x-z)
print " "
}
}
}
Fin
Practica 9 problema 5
Pseudocodigo:
Inicio
int c1=0
int c2=0
int x
print "introducir el numero de lineas:"
read x
print "introducir caracter:"
read caracter
for(c1=1 to x step c1 = c1 + 1)
{
for(c2=1to c1 step c2 =c2+1)
{
Print " "carácter," "
}
Print “”
}
Fin
Practica 10 problema 1
Pseudocodigo:
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)
{
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
Practica 10 problema 2aPseudocodigo:
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
Practica 10 problema 2bPseudocodigo:
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]
}
Fin
Practica 10 problema 3a
Pseudocodigo:
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]
}
Practica 10 problema 3b
Pseudocodigo:
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
Practica 10 problema 3cPseudocodigo:
Inicio
valores[10] Real
desv[10] Real
total=0.0 Real
prom Real
min=0 Real
max=0 Real
inter=0 Real
b=0 Real
a=0 Real
i int
for(i=0 to 10 step i=i+1)
{
print "Valores[", i , "]:"
read valores[i]
total=total+valores[i]
}
prom=total/10
for(i=0 to 10 step i=i+1)
{
desv[i]=valores[i]-prom
}
print "Desviacion valores”
for(i=0 to 10 step i=i+1)
{
print " ” , desv[i], " ", valores[i]
}
Print "Intervalo Minimo"
for(i=0 to 10 step i=i+1)
{
if(desv[i]<=min)
{
print desv[i]
a=a+desv[i]
}
}
print "Minimo"
print a
print "Intervalo Maximo"
for(i=0 to 10 step i=i+1)
{
if(desv[i]>=max)
{
print desv[i]
b=b+desv[i]
}
}
print "Maximo"
print b
inter=b-a
print "Intervalo= Maximo-Minimo= "
print inter
Fin
Practica 11 problema 1
Pseudocodigo:
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
Practica 11 problema 2
Pseudocodigo:
Inicio
matriz[5][6] int
i,j,mayor=0,pos int
suma=0 int
for(i=0 to i<5 step i+1)
{
for(j=0 to j<5 step j+1)
print,"matriz [",i,",",",j,"]=?"
read matriz [i][j]
}
}
for(i=0 to i<5 step i+1)
{
suma=0
for(j=0 to j<5 step j+1)
{
suma=suma+matriz[i][j]
}
matriz[i][5]=suma
}
matriz[i][5]=suma
}
for(i=0 to i<5 step i+1)
{
for(j=0 to j<6 step j+1)
{
print,matriz[i][j],"\t"
}
print,
}
for(i=0 to i<5 step i+1)
{
if(matriz[i][5]>mayor)
{
mayor=matriz[i][5]
pos=i
}
}
print,"el dato mayor es",mayor
print,"el renglon donde esta localizado es:",pos,
Fin
Practica 11 problema 3
Pseudocodigo:
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
Practica 11 problema 4Pseudocodigo:
Inicio
matriz[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
}
Fin
Practica 11 problema 5
Pseudocodigo:
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,
Fin
Practica 11 problema 6Pseudocodigo:
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"
}
Fin
Practica 11 problema 7
Pseudocodigo:
Inicio
A[5][5], B[5][5] int
I,J, suma=0 int
random()
for(I=0 to 5 step I++)
{
for(J=0 to 5 step J++)
{
A[I][J]=random(1000)+1
}
}
suma=0
for(I=0 to 5 step I++)
{
suma=suma+A[I][J]
}
Print "La Suma de la Diagonal Principal inversa es " , suma
suma=0
J=4
for(I=0 to 5 step I++)
{
suma=suma + A[I][J]
J=J-1
}
Print "La suma de la Diagonal Inversa es " , suma
Fin
Practica 11 problema 8Pseudocodigo:
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
FinPractica 12 Problema 1
Pseudocodigo:
Inicio
registro producto
{
noProd int
descrip[30] char
precio real
cantidad int
}
producto Registro
FILE*alias
funcion void ALTA_SECUENCIAL()
{
no_prod int
clrscr()
Print "\n\rALTAS DE REGISTROS DE PRODUCTOS"
alias=fopen("c:\\Datos\\PRODUCTO.SEC","rb+")
if(alias==NULL)
alias=fopen("c:\\Datos\\PRODCTO.SEC","wb")
Print "\n\n\n\rNumero de producto:" Read no_prod;
fread(&Registro,sizeof(Registro),1,alias)
while(!feof(alias))
{
if(Registro.noProd==no_prod)
{
Print "\n\n\n\rRegistro duplicado!!!"
fclose(alias)
}
fread(&Registro,sizeof(Registro),1,alias)
}
Print "\n\rDescripcion:" gets(Registro.descrip)
Print "\n\rCantidad:" Read Registro.cantidad
Print "\n\rPrecio:" Read Registro.precio
Registro.noProd=no_prod
fwrite(&Registro,sizeof(Registro),1,alias)
fclose(alias)
Print "\n\n\n\rProducto registrado!!!"
Print "\n\r<<<Oprima cualquier tecla para continuar >>> "
}
Funcion void CONSULTA_SECUENCIAL(void)
{
no_prod int
clrscr()
Print "\n\rCONSULTA DE REGISTROS DE PRODUCTOS"
alias=fopen("c:\\Datos\\PRODUCTOS.SEC","rb")
if(alias==NULL)
{
Print "\n\n\n\rNo existe el archivo!!!"
Print "\n\r<<<Oprima cualquier tecla para continuar>>>"
}
Print "\n\n\n\rNumero de producto:" Read no_prod;
while(!feof(alias))
{
if(Registro.noProd==no_prod)
{
Print "\n\rNo Prod Descripcion Cantidad precio"
Print "\n\r------------------------------------------------------------\n\n"
Print Registro.noProd , setw(20) , Registro.descrip , setw(10) , Registro.cantidad , setw(10) , Registro.precio
fclose(alias)
Print "\n\r<<< Oprima cualquier tecla para continuar>>>"
}
fread(&Registro,sizeof(Registro),1,alias)
}
Print "\n\rNo se encuentra ese registro !!!"
fclose(alias)
Print "\n\r<<<Oprima cualquier tecla para continuar>>>"
}
funcion void LISTADO_SECUENCIAL(void)
{
clrscr()
Print "\n\rLISTADO DE REGISTRO DE PRODUCTOS"
alias=fopen("c:\\Datos\\PRODUCTO.SEC","rb")
if(alias==NULL)
{
Print "\n\n\n\rNo existe el archivo!!!"
Print "\n\r<<< Oprima cualquier tecla para continuar>>>"
}
Print "\n\rNo Prod Descripcion Cantidad Precio"
Print "\n\r------------------------------------------\n\n"
fread(&Registro,sizeof(Registro),1,alias);
while(!feof(alias))
{
Print Registro.noProd , setw(20) , Registro.descrip , setw(10) , Registro.cantidad , setw(10) , Registro.precio
fread(&Registro,sizeof(Registro),1,alias)
}
fclose(alias)
Print "\n\r-----------------------------------------------------------------\n\n"
Print "\n\rFin del listado!!!"
Print "\n\r<<<Oprima cualquier tecla para continuar>>>"
}
menu() int
{
opcion int
Print "\n\n1)alta de producto"
Print "\n2)Consulta de producto"
Print "\n3)Listado de productos"
Print "\n4)Modificar datos de productos"
Print "\n5)Salida programa"
Print "\n\nSeleccioa opcion=?"
Read opcion
return opcion
}
funcion void MODIFICACION_SECUENCIAL(void)
{
no_prod int
clrscr()
Print "\n\rMODIFICACION DE REGISTROS DE PRODUCTOS"
alias=fopen("c:\\Datos\\PRODUCTO.SEC","rb+")
if(alias==NULL)
{
Print "\n\n\n\r No existe el archivo!!!"
Print "\n\r<<< Oprima cualquier tecla para continuar>>>
}
Print "\n\n\n\rNumeros de producto:" Read no_prod
fread(&Registro,sizeof(Registro),1,alias)
while(!feof(alias))
{
if(Registro.noProd==no_prod)
{
Print "\n\rNo prod descripcion Cantidad precio\n\n"
Print "\n\r--------------------------------------------\n\n"
Print Registro.noProd , setw(20) , Registro.descrip , setw(10) , Registro.cantidad , setw(10) , Registro.precio
Print "\n\n\n\rAnote los nuevos datos..."
Print "\n\rDescripcion:";gets(Registro.descrip)
Print "\n\rCantidad:"; cin>>Registro.cantidad
Print "\n\rprecio:"; cin>>Registro.precio
fseek(alias,ftell(alias)-sizeof(Registro),SEEK_SET)
fwrite(&Registro,sizeof(Registro),1,alias)
fclose(alias)
Print "\n\n\n\rRegistro modificado!!!"
Print "\n\r<<< Oprima cualquier tecla para continuar>>>"
}
fread(&Registro,sizeof(Registro),1,alias)
}
Print "\n\rNo se encuentra ese registro!!!"
fclose(alias)
Print "\n\r<<<Oprima cualquier tecla para continuar>>>"
}
main() int
{
opc int
do
{
clrscr()
opc=menu()
switch(opc)
{
case 1:
ALTA_SECUENCIAL()
break
case 2:
CONSULTA_SECUENCIAL()
break
case 3:
LISTADO_SECUENCIAL()
break
case 4:
MODIFICACION_SECUENCIAL()
break
case 5: Print "\n\nFinal programa"
break;
default: Print "\nError en opcion"
}
}
while(opc !=5)
FinPractica 12 Problema 2
Pseudocodigo:
Inicio.
registro producto
{
noProd int
descrip[30] char
precio real
cantidad int
}
producto Registro
FILE*alias
funcion void ALTA_SECUENCIAL()
{
no_prod int
clrscr()
Print "\n\rALTAS DE REGISTROS DE PRODUCTOS"
alias=fopen("c:\\Datos\\PRODUCTO.SEC","rb+")
if(alias==NULL)
alias=fopen("c:\\Datos\\PRODCTO.SEC","wb")
Print "\n\n\n\rNumero de producto:" Read no_prod;
fread(&Registro,sizeof(Registro),1,alias)
while(!feof(alias))
{
if(Registro.noProd==no_prod)
{
Print "\n\n\n\rRegistro duplicado!!!"
fclose(alias)
}
fread(&Registro,sizeof(Registro),1,alias)
}
Print "\n\rDescripcion:" gets(Registro.descrip)
Print "\n\rCantidad:" Read Registro.cantidad
Print "\n\rPrecio:" Read Registro.precio
Registro.noProd=no_prod
fwrite(&Registro,sizeof(Registro),1,alias)
fclose(alias)
Print "\n\n\n\rProducto registrado!!!"
Print "\n\r<<<Oprima cualquier tecla para continuar >>> "
}
Funcion void CONSULTA_SECUENCIAL(void)
{
no_prod int
clrscr()
Print "\n\rCONSULTA DE REGISTROS DE PRODUCTOS"
alias=fopen("c:\\Datos\\PRODUCTOS.SEC","rb")
if(alias==NULL)
{
Print "\n\n\n\rNo existe el archivo!!!"
Print "\n\r<<<Oprima cualquier tecla para continuar>>>"
}
Print "\n\n\n\rNumero de producto:" Read no_prod;
while(!feof(alias))
{
if(Registro.noProd==no_prod)
{
Print "\n\rNo Prod Descripcion Cantidad precio"
Print "\n\r------------------------------------------------------------\n\n"
Print Registro.noProd , setw(20) , Registro.descrip , setw(10) , Registro.cantidad , setw(10) , Registro.precio
fclose(alias)
Print "\n\r<<< Oprima cualquier tecla para continuar>>>"
}
fread(&Registro,sizeof(Registro),1,alias)
}
Print "\n\rNo se encuentra ese registro !!!"
fclose(alias)
Print "\n\r<<<Oprima cualquier tecla para continuar>>>"
}
funcion void LISTADO_SECUENCIAL(void)
{
clrscr()
Print "\n\rLISTADO DE REGISTRO DE PRODUCTOS"
alias=fopen("c:\\Datos\\PRODUCTO.SEC","rb")
if(alias==NULL)
{
Print "\n\n\n\rNo existe el archivo!!!"
Print "\n\r<<< Oprima cualquier tecla para continuar>>>"
}
Print "\n\rNo Prod Descripcion Cantidad Precio"
Print "\n\r------------------------------------------\n\n"
fread(&Registro,sizeof(Registro),1,alias);
while(!feof(alias))
{
Print Registro.noProd , setw(20) , Registro.descrip , setw(10) , Registro.cantidad , setw(10) , Registro.precio
fread(&Registro,sizeof(Registro),1,alias)
}
fclose(alias)
Print "\n\r-----------------------------------------------------------------\n\n"
Print "\n\rFin del listado!!!"
Print "\n\r<<<Oprima cualquier tecla para continuar>>>"
}
menu() int
{
opcion int
Print "\n\n1)alta de producto"
Print "\n2)Consulta de producto"
Print "\n3)Listado de productos"
Print "\n4)Modificar datos de productos"
Print "\n5)Salida programa"
Print "\n\nSeleccioa opcion=?"
Read opcion
return opcion
}
funcion void MODIFICACION_SECUENCIAL(void)
{
no_prod int
clrscr()
Print "\n\rMODIFICACION DE REGISTROS DE PRODUCTOS"
alias=fopen("c:\\Datos\\PRODUCTO.SEC","rb+")
if(alias==NULL)
{
Print "\n\n\n\r No existe el archivo!!!"
Print "\n\r<<< Oprima cualquier tecla para continuar>>>"
}
Print "\n\n\n\rNumeros de producto:" Read no_prod
fread(&Registro,sizeof(Registro),1,alias)
while(!feof(alias))
{
if(Registro.noProd==no_prod)
{
Print "\n\rNo prod descripcion Cantidad precio\n\n"
Print "\n\r--------------------------------------------\n\n"
Print Registro.noProd , setw(20) , Registro.descrip , setw(10) , Registro.cantidad , setw(10) , Registro.precio
Print "\n\n\n\rAnote los nuevos datos..."
Print "\n\rDescripcion:";gets(Registro.descrip)
Print "\n\rCantidad:"; cin>>Registro.cantidad
Print "\n\rprecio:"; cin>>Registro.precio
fseek(alias,ftell(alias)-sizeof(Registro),SEEK_SET)
fwrite(&Registro,sizeof(Registro),1,alias)
fclose(alias)
Print "\n\n\n\rRegistro modificado!!!"
Print "\n\r<<< Oprima cualquier tecla para continuar>>>"
}
fread(&Registro,sizeof(Registro),1,alias)
}
Print "\n\rNo se encuentra ese registro!!!"
fclose(alias)
Print "\n\r<<<Oprima cualquier tecla para continuar>>>"
}
main() int
{
opc int
do
{
clrscr()
opc=menu()
switch(opc)
{
case 1:
ALTA_SECUENCIAL()
break
case 2:
CONSULTA_SECUENCIAL()
break
case 3:
LISTADO_SECUENCIAL()
break
case 4:
MODIFICACION_SECUENCIAL()
break
case 5: Print "\n\nFinal programa"
break;
default: Print "\nError en opcion"
}
}
while(opc !=5)
funcion void BAJA_LOGICA_SECUENCIAL(void)
{
no_prod int
op char
clrscr()
Print "\n\rBAJAS LOGICAS DE REGISTROS DE PRODUCTOS"
alias=fopen("c:\\datos\\PRODUCTO.SEC","rb+")
if(alias==NULL)
{
Print "\n\n\n\rNo existe el archivo !!!"
Print "\n\r<<< Oprima cualquier tecla para continuar >>>"
}
Print "\n\n\n\rNumero de producto: " Rad no_prod
fread(&Registro,sizeof(Registro),1,alias)
{
if(Registro.noProd==no_prod)
{
Print "\n\rNo Prod Descripcion Cantidad Precio "
Print "\n\r---------------------------------------------------------------\n\n"
Print Registro.noProd<<setw(20) , Registro.descrip , setw(10) , Registro.cantidad , setw(10) . Registro.precio
Registro.noProd=0
strcpy(Registro.descrip,"")
Registro.cantidad=0
Registro.precio=0.0
do {
Print "\n\n\rEsta seguro que desea borrarlo? [S/N] ---> "
op=toupper(getche())
}while(op!='S' && op!='N')
if(op=='S')
{
fseek(alias,ftell(alias)-sizeof(Registro),SEEK_SET)
fwrite(&Registro,sizeof(Registro),1,alias);
Print "\n\n\n\rRegistro eliminado !!!"
}
fclose(alias)
Print "\n\r<<< Oprima cualquier tecla para continuar >>>"
}
fread(&Registro,sizeof(Registro),1,alias)
}
Print "\n\rNo se encuentra ese registro !!!"
fclose(alias)
Print "\n\r<<< Oprima cualquier tecla para continuar >>>"
}
funcion void BAJA_FISICA_SECUENCIAL(void)
{
FILE *temporal
clrscr()
Print "\n\rBAJAS FISICAS DE REGISTROS DE PRODUCTOS" alias=fopen("C:\\datos\\PRODUCTO.SEC","rb");
if(alias==NULL)
{
Print "\n\n\n\rNo existe el archivo !!!"
Print "\n\r<<< Oprima cualquier tecla para continuar >>>"
}
temporal=fopen("C:\\datos\\TEMPORAL.TMP","wb");
fread(&Registro,sizeof(Registro),1,alias)
while(!feof(alias))
{
if(Registro.noProd!=0)
fwrite(&Registro,sizeof(Registro),1,temporal)
fread(&Registro,sizeof(Registro),1,alias)
}
fcloseall()
remove("C:\\datos\\PRODUCTO.SEC")
rename("C:\\datos\\TEMPORAL.TMP","C:\\datos\\PRODUCTO.SEC")
Print "\n\n\n\rArchivo compactado !!!"
Print "\n\r<<< Oprima cualquier tecla para continuar >>>"
}
Fin
Tarea 1. Importancia de la programación estructurada
La programación estructurada podemos concluir que es un conjunto de notaciones y convenios que el programador puede seguir para producir programas. La programación estructurada es importante para que el programador pueda seguir una disciplina de programación y a su vez proporcionar conceptos, técnicas, herramientas, estructurar para la construcción de programas de alta calidad. Al aplicar la disciplina, conceptos, técnicas etc. se podrán producir programas bien pensados, cuyas soluciones lógicas son seguidas fácilmente, reducir el tiempo de prueba y duración, aumentar la productividad del programador.Un programa estructurado puede ser leído en secuencia, de arriba hacia abajo, sin necesidad de estar saltando de un sitio a otro en la lógica, lo cual es típico de otros estilos de programación. La estructura del programa es más clara puesto que las instrucciones están mas ligadas o relacionadas entre sí, por lo que es más fácil comprenderlo que hace cada función.
Programa ´´Java
Java es un lenguaje totalmente orientado a objetos, con notables características como manejo automático de memoria, ejecución multiplataforma, soporte de múltiples hilos de ejecución, y una extensa librería de clases. muy rico en construcciones, y lo bastante completo como para considerarlo de propósito general, es multiplataforma: su código compilado puede ejecutarse en cualquier ambiente que tenga implementada una máquina virtual el lenguaje Java.
En conclusión ami me queda entendido que la programación estructurada es mas que simples numero y letras ordenados, si no que gracias a estos y a un software se pueden producir programas para facilitar y controlar diferentes dispositivos fácilmente.
Cuestionario
1.-Que diferencia existe entre un programación y un lenguaje de programación.
El lenguaje de programación está conformado por una serie de reglas sintácticas u semíticas que serán utilizadas para crear un programa y la programación es pasa diseñar, codificar y mantener el código fuente. El código es escrito en el lenguaje de programación.
2.-Explique la diferencia entre un lenguaje orientado a procedimientos y lenguaje orientado a objetos.
El lenguaje orientado a objetos diseña aplicaciones y programas de computadora, y el y el lenguaje orientado a procedimientos requiere una cierta disciplina, se tiene que escribir el código con un cierto orden para poder resolver un problema.
3. Explique la diferencia entre un compilador y un intérprete.
El compilador traduce los programas escritos el lenguaje de alto nivel a lenguaje maquina, y un intérprete, es el traductor que toma un programa fuente, lo traduce y a continuación lo ejecuta.
4.-Explique las etapas de diseño y desarrollo de un programa.
Cada versión importante de un producto pasa generalmente a través de una etapa en la que se agregan las nuevas características (etapa alfa), después una etapa donde se eliminan errores activamente (etapa beta), y finalmente una etapa en donde se han quitado todos los bugs importantes (etapa estable).
5.-Haga un ejemplo de un algoritmo.
Cambiar la llanta ponchada de un automóvil.
Inicio
Paso 1. Aflojar los tornillos de la rueda pinchada con la llave inglesa.
Paso 2. Ubicar el gato mecánico en su sitio.
Paso 3. Levantar el gato hasta que la rueda pinchada pueda girar libremente.
Paso 4. Quitar los tornillos y la rueda pinchada.
Paso 5. Poner rueda de repuesto y los tornillos.
Paso 6. Bajar el gato hasta que se pueda liberar.
Paso 7. Sacar el gato de su sitio.
Paso 8. Apretar los tornillos con la llave inglesa.
Fin
6.-Explique que es un diagrama de flujo.
Es un grafico lógico del plan de trabajo que se ejecutara para la solución de un determinado problema. A través de él, se planifica la solución del problema independiente del lenguaje de computación a usar. De esta manera se separa loas instrucción es un lenguaje determinado con todas las reglas.
7.-Haga un ejemplo de la solución de un problema por medio del diagrama de flujo.
Algoritmo y Diagrama de Flujo para calcular el área de un círculo donde: a= ¶ * r2
Identificación de variables y análisis de proceso:
a= 0
r= 0
¶= 3,14
8.-Explique la diferencia entre hardware y software.
El hardware son los componentes físicos del ordenador, es decir, todo lo que se puede ver y tocar, el software son la instrucciones que el ordenador necesita para funcionar, no existen físicamente, no se pueden ver ni tocar.
9.-Explique las unidades básicas de un computadora.
1. Unidad de entrada
Unidades de entrada se compone de dispositivo de entrada . Dispositivos de entrada se utilizan para introducir datos e instrucciones en la memoria del ordenador. Ejemplos de dispositivos de entrada son el teclado, ratón, joystick y micrófono, etc.
2. Unidad de salida
Unidad de salida consta de dispositivos de salida . Los dispositivos de salida se utilizan para mostrar los resultados producidos por el equipo después de procesamiento de datos. Ejemplos de dispositivos de salida son del monitor, impresora, plotter y el altavoz, etc.
3. Unidad central
Unidad central de proceso también se denomina CPU o procesador . Es el cerebro del ordenador. Se realiza el procesamiento de datos. Se controla las operaciones generales y los componentes del ordenador.
4. Unidad de memoria
La unidad de memoria se compone de dispositivos de memoria para almacenar datos. Por ejemplo RAM es el ejemplo más común de memoria.
5. Unidad de almacenamiento.
Unidad de almacenamiento consta de medios de almacenamiento . Soportes de almacenamiento se utilizan para almacenar grandes cantidades de datos de forma permanente. Ejemplos de medios de almacenamiento son el disco duro, CD, DVD y discos Zip etc.
10.-Escriba un algoritmo para encontrar el número menor y mayor de tres números.
Inicio
Paso 1. Saber que numero elegir.
Paso 2. Saber contar.
Paso 3. Buscar los números menores.
Paso 4. Buscar los numero mayores.
Fin
Unidad II
Operadores Aritméticos, Racionales y lógicos
Un operador es un símbolo especial que indica al compilador que debe efectuar una operación matemática o lógica.
C++ reconoce los siguientes operadores aritméticos:
Operador Operación:
+ SUMA
- RESTA
* MULTIPLICACION
/ DIVISION
% MODULO O RESIDUO
Como notas importantes a recordar siempre;
En problemas de división entre enteros, C++ trunca la parte residual, es decir
</code> área de declaración de variables float a; área de operaciones
a = 10 / 4;
área de despliegue de resultados desplegar a; → En pantalla sale ( 2.000000 ) </code> El problema no es el tipo float, sino que por definición de la división entre enteros C++ siempre trunca la parte residual, mas adelante se indica como se resolverá este problema. El operador (%) devuelve el residuo entero de una división entre enteros, ejemplo; <code> área de declaración
int alfa;
área de operaciones alfa = 23 % 4; área de despliegue
desplegar alfa; → El resultado en pantalla es 3
Para resolver los problemas de potencias y raíces, se usan ciertas instrucciones especiales que proporciona el lenguaje, llamadas funciones matemáticas, en C++ existe toda una librería de instrucciones o funciones matemáticas.
Recordar que todas las funciones reciben uno o más datos o valores y regresan siempre un resultado, una de estas funciones matemáticas es:
#include <math.h>
double pow(double base, double exp);
Esta función ocupa dos valores o datos( base y exp) ambos de tipo double, y regresa un resultado también de tipo double.
Los operadores relacionales, también denominados operadores binarios lógicos y de comparación, se utilizan para comprobar la veracidad o falsedad de determinadas propuestas de relación (en realidad se trata respuestas a preguntas). Las expresiones que los contienen se denominan expresiones relacionales. Aceptan diversos tipos de argumentos, y el resultado, que es la respuesta a la pregunta, es siempre del tipo cierto/falso, es decir, producen un resultado booleanoSi la propuesta es cierta, el resultado es true (un valor distinto de cero), si es falsa false (cero). C++ dispone de los siguientes:< Menor que> Mayor que<= Menor o igual que>= Mayor o igual que== Igual que (identidad!= Desigual que (desigualdad
Tipos de datos en c++
Secuencias de escape
\a 0x07 BEL Sonido audible (bell)
\b 0x08 BS Retroceso (backspace)
\f 0x0C FF Salto de formato (formfeed)
\n 0x0A LF Saltar una línea (linefeed)
\r 0x0D CR Retorno de carro (carriage return)
\t 0x09 HT Tabulación horizontal (H Tab)
\v 0x0B VT Tabulación vertical (V Tab)
\\ 0x5c \ Barra invertida (backslash) [2]
\' 0x27 ' Apóstrofo (comilla simple)
\" 0x22 " Doble comilla
\? 0x3F ? Interrogación
\O cualquiera cualquiera O = cadena de hasta tres dígitos octales
\xH cualquiera cualquiera H = cadena de dígitos hexadecimales
\XH cualquiera cualquiera H = cadena de dígitos hexadecimales
Precedencia y asociación de operadoresGrupoOperadoresPrimario[] {x:y} () f(x) new x.y x[y] Sufijox++ x-- Unario++x --x + - ~ ! delete typeof void Multiplicativo* / % Aditivo+ - Desplazamiento en modo bit<< >> >>> Relacional< > <= >= instanceof Igualdad== != === !== AND en modo bit& XOR en modo bit^ OR en modo bit| AND lógico&& OR lógico|| Condicional?: Asignación= *= /= %= += -= <<= >>= >>>= &= ^= |= Coma,
Manipuladores de flujo
1 2 3 4 5 6 7 8 9 10 11 12 13
#include <iostream> using std::cout ; using std::endl; int main() { cout << "Bienvenido a "; cout << "C++!"; cout << endl; // fin del manipulafor de flujo return 0; } // fin de la función end main
Los manipuladores son constantes y/o métodos que constituyen una alternativa a los indicadores. Se pueden introducir en la propia sentencia de entrada o salida. Los manipuladores pueden tener argumentos o no tenerlos. Los manipuladores sin argumentos (endl, flush, etc.) están definidos en iostream.h. Los que tienen argumentos están declarados en iomanip.h. Un manipulador sólo afecta al flujo (cin, cout, etc.) al que se aplica.
El inconveniente de los manipuladores frente a los indicadores es que no permiten guardar la configuración anterior y por tanto volver a ella de una forma general y sencilla.
Los manipuladores de entrada/salida más utilizados se citan a continuación:
dec, hex y oct: establecen base para enteros ws: se saltan los blancos iniciales
endl: se imprime un ‘\n’ y se vacía el buffer de salida
flush: se vacía el buffer de salida
setw(int w): establece la anchura mínima de campo
setprecision(int p): establece el número de cifras
setfill(char ch): establece el carácter de relleno
setiosflag(long i) equivale al indicador setf()
unsetiosflag(long i) equivale a unsetf()
Un manipulador se utiliza de la forma:
cout << hex << 100;
cout << setw(10) << mat[i][j] << endl;
El efecto de los manipuladores permanece en el flujo correspondiente hasta que se cambian por otro manipulador, a excepción de setw() que hay que introducirlo en el flujo antes de cada dato al que se le quiera aplicar esa anchura de campo.Unidad 3Tarea 1
Cuestionario:
1- ¿Es la funcion que se conoce como la funcion llamada?
Encotrar mas()
2- ¿Esta función que hace la lladama se le conoce como función que llama?
Main()
3- ¿Antes que una función pueda ser llamada debe ser?
Declarada
4- ¿La instrucción de declaración para una función se conoce como?
Prototipo de función
5- ¿Qué hace el prototipo de función?
Indica a la función que llama el tipo de valor que será devuelta formalmente
6- ¿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)
7- ¿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.
8- ¿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.
9- ¿Qué declara el prototipo de función para desplegar()?
Esta función requiere dos argumentos de precisión doble no devuelve ningún valor.
10- ¿De que sirve el uso de prototipos de función?
Permite la verificación de errores en los tipos de datos por el compilador.
11- ¿Cuales son las dos partes que consta toda función en C++?
Encabezado de función y cuerpo de función
12- ¿Los nombres de argumentos en el encabezado se conocen como?
Parámetros formales de la función
13- ¿Qué es un cabo?
Es el comienzo de una función final que se puede usar como un sustituto de la unidad final hasta que la unidad esta completa.
14- ¿Cuando son útiles los argumentos por omisión?
Cuando se extiende una función existente para incluir mas características que requieren argumentos adicionales.
15- ¿Capacidad de usar el mismo nombre de función para más de una función?
Sobrecarga de función
16- ¿Qué se necesita para usar de manera formal el mismo nombre de la función?
Que el compilador pueda distinguir cual función seleccionar con base en los tipos de datos de los argumentos cuando es llamada la función.
17- ¿Qué es una platilla de la función?
Es una función única completa que sirve como modelo para una familia de funciones
18- ¿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
19- ¿Qué representa la letra T?
Un tipo de dato.
20- ¿Qué significa cada cosa mostrada a continuación?
Nombre-de-la-función (datos transmitidos a la función)
Función llamada transmite datos a la funciónProblema 1Pseudocodigo:Inicio
void revisar(int n1, double x, double y)
{
Print "El valor entero es:", n1
Print "El primer valor de doble presicion es:", x
Print "El segundo valor de doble presicion es:", y
getch()
return
}
int main()
{
n1 int
x double
y double
Print "Introdouce un valor entero y dos de doble presicion"
Print " "
read1
read x
read y
revisar(n1,x,y)
}FinProblema 2Pseudocodigo:
Inicio
void revisar(int n1, int n2, double v, double w, double x, double y, double z)
{
Print "Los valores enteros son:", n1, ", ", n2
Print "Los valores de doble presicion son:", v, ", ", w, ", ", x, ", ", y, ", ", z
getch()
return
}
int main()
{
n1 int
n2 int
v double
w double
x double
y double
z double
Print "Introdouce dos valores enteros y cinco de doble presicion"
read n1
read n2
read v
read w
read x
read y
read z
revisar(n1,n2,v,w,x,y,z)
}
Fin
InicioProblema 3Pseudocodigo:
template <class V>
void encontrarabs(V numero)
{
if(numero<0)
numero=-numero
Print "El valor absoluto del numero es: ", numero
return
}
int main()
{
num1 double
Print "Introdusca un numero de presicion doble:"
read num1
encontrarabs(num1)
getch()
return 0
}Fin
InicioProblema 4Pseudocodigo:
template <class V>
void encontrarabs(V numero)
{
if(numero<0)
numero=-numero
Print "El valor absoluto del numero es: ", numero
return
}
int main()
{
n1 double
n2 double
n3 double
Print "Introdusca el primer numero: "
read n1
Print "Introdusca el segundo numero: "
read n2
Print "Introdusca el tercer numero: "
read n3
encontrarabs(n1)
encontrarabs(n2)
encontrarabs(n3)
getch()
return 0
}
Fin
InicioProblema 5Pseudocodigo:
void mult(real n1,real n2)
{
float t
t=n1*n2
Print "El resultado es: ", t
getch()
return
}
int main()
{
n1 real
n2 real
Print "Introdusca un primer numero: "
Read n1
Print "Introdusca un segundo numero: "
Read n2
mult(n1, n2)
}
FinInicioProblema 6Pseudocodigo:
void mult(real n1,real n2,real n3,real n4,real n5)
{
t real
t=n1*n2*n3*n4*n5
Print "El resultado es: ", t
getch()
return
}
int main()
{
n1 real
n2 real
n3 real
n4 real
n5 real
Print "Introdusca un primer numero: "
read n1
Print "Introdusca un segundo numero: "
read n2
Print "Introdusca un tercer numero: "
read n3
Print "Introdusca un cuarto numero: "
read n4
Print "Introdusca un quinto numero: "
read n5
mult(n1, n2, n3, n4, n5)
}
FinnicioProblema 7Pseudocodigo:
void al_cuadrado(double n)
{
r1 double
r1=pow(n,2)
Print "Resultado es: ", r1
getch()
return
}
int main()
{
n double
Print "Introduca un numero: "
read n
al_cuadrado(n)
}
FinInicioProblema 8Pseudocodigo:
void al_cuadrado(double n1, double n2, double n3, double n4)
{
r1 double
r2 double
r3 double
r4 double
r1=pow(n1,2)
Print "El resultado del cuadrado del primer numero es: ", r1
r2=pow(n2,2)
Print "El resultado del cuadrado del segundo numero es: ", r2
r3=pow(n3,2)
Print "El resultado del cuadrado del tercer numero es: ", r3
r4=pow(n4,2)
Print "El resultado del cuadrado del cuarto numero es: ", r4
getch()
return
}
int main()
{
n1 double
n2 double
n3 double
n4 double
Print "Introduca el primer numero: "
read n1
Print "Introduca el segundo numero: "
read n2
Print "Introduca el terecero numero: "
read n3
Print "Introduca el cuarto numero: "
read n4
al_cuadrado(n1, n2, n3, n4)
}
Fin
Tarea 2
Cuestionario:
1- Al utilizar el metodo de transmitir datos la funcion llamada solo recibe?
Copias de los valores contenidos en los argumentos en el momento de la llamada.
2-Cuando se transmite un valor a una funcion invocada de esta manera el argumento transmitido se conoce como?
Transmitido por valor
3- Que puede procesar la funcion que recibe los argumentos transmitidos por valor?
Los valores que se le envien en cualquier forma deseada.
4-Que se requiere para devolver en forma directa una valor?
Que la interfaz entre la funcion llamada y la que llama se maneje en forma correcta.
5-Cuales son los 2 elementos que la funcion llamada debe proporcionar?
El tipo de datos del valor devuelto.
El valor real que se devuelve
6- Una funcion que devuelve un valor que debe especificar?
En su linea de encabezado, el tipo de datos del valor que se devolvera.
7-void encontrarmax(int x, int y) x Y y que son?
Son los nombres elegidos para los parametros de la funcion
8-Para devolver un valor, una funcion debe usar?
Una instruccion de devolucion
9-Al aplicarla en el programa que forma tiene?
return expresiom;
10-Para alertar a la funcion que llama acerca del tipo de valor devuelto que debe esperar se utiliza?
El prototipo de funcion
11- Que alerta lo siguiente a main()- int encontrarmax(int, int)?
Que encontrarmax es una funcion que devolvera un valor entero
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 valoresde 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- La transmision de direccion se conoce como funcion de?
Transmision por referencia
19-Cuales son los dos parametros de direccion que proporciona C++?
Referencias y apuntadores
20-Cuales son las precauciones al usar argumentos de referencia
No constantes, solo variables
Es que una llamda a funcion en si no da indicio de que la funcion llamada usara parametros de referenciaProblema 1Pseudocodigo:
Inicio funcion
void obtrec(double&, double&)
void polar(double, double, double&, double&)
void mostrarlo(double, double)
{
x double
y double
distancia double
angulo doubl
obtrec(x, y)
polar(x, y, distancia, angulo)
mostrarlo(distancia, angulo)
return 0
}
void obtrec(double& x, double& y)
{
Print "Programa de conversion de coordenadas", " rectangulares a polares",
Print "Introdusca la coordenada x: "
read x
Print "Introdusca la coordenada y: "
read y
return
}
void polar(double x, double y, double r, double theta)
Inicio programa
{
const double A_GRADOS=180.0/3.141593
r=sqrt(x*x+y*y)
theta=atan(y/x)*A_GRADOS
return
}
void mostrarlo(double radio, double angulo)
Final funcion
{
Print "Las coordenadas polares son: ",
Print "Distancia desde el origen: ", radio,
Print "Angulo(en grados) respecto al eje x: ", angulo,
return
}
FinProblema 2
Pseudocodigo:
Incio funcion
funcion void cargaC(float E,float A, float L, float r)
{
carga float
carga=pow(3.1416,2)*E*A/pow((L/r),2)
Print "La carga critica es de: ", carga
getch()
return
}
final funcion
Inicio programa
{
E float
A float
L float
r float
Print "Introduce la elasticidad del material usado=?”
read E
Print "introduce el area de corte transversal=?”
read A
Print "introduce el largo de la columna=?”
read L
Print "introduce el radio del giro=?”
read r
cargaC(E,A,L,r)
}
Fin
Problema 3
Pseudocodigo:
Incio funcion
funcion void cargaC(float E,float A, float L, float r)
{
carga float
carga=pow(3.1416,2)*E*A/pow((L/r),2)
Print "La carga critica es de: ", carga
getch()
return
}
final funcion
Inicio programa
{
I int
n int
j int
E float
A float
L float
r float
Print "Numero de cargas criticas a calcular=? "
read n
for(i=0 to n step i=i+1)
{
Print "Introduce la elastricidad del material usado=?”
read E
Print "introduce el area de corte transversal=?”
read A
Print "introduce el largo de la columna=?”
read L
Print "introduce el radio del giro=?”
read r
cargaC(E,A,L,r)
}
}
Fin
Problema 4
Pseudocodigo:
Inicio funcion
funcion void entero(int n)
{
print "El valor entero es: ", n
getch()
return
}
Final funcion
Inicio programa
{
n int
print "Introduce un valor=? "
read n
entero(n)
}
Fin
Problema 5
Pseudocodigo:
Inicio funcion
funcion void entero(int n)
{
print "El valor entero es: ", n
getch()
return
}
Final funcion
Inicio programa
{
I int
m int
n float
Print "Numero de valores=?”
read m
for(i=0 to m step i=i+1)
{
print "Introduce un valor=? "
read n
entero(n)
}
}
Fin
Problema 6
Pseudocodigo:
Inicio funcion
void cambio(int dolares,int cien=100,int cincuenta=50,int veinte=20,int diez=10,int cinco=5,int uno=1)
{
conv_dls float
switch(dolares)
{
case 100:
conv_dls=cien/11.00
print cien, " en cambio en dolares es: ", conv_dls, " dlls"
break
case 50:
conv_dls=cincuenta/11.00
print cincuenta, " en cambio en dolares es: ", conv_dls, " dlls"
break
case 20:
conv_dls=veinte/11.00
print veinte, " en cambio en dolares es: ", conv_dls, " dlls"
break
case 10:
conv_dls=diez/11.00
print diez, " en cambio en dolares es: ", conv_dls, " dlls"
break
case 5:
conv_dls=cinco/11.00
print cinco, " en cambio en dolares es: ", conv_dls, " dlls"
break
case 1:
conv_dls=uno/11.00
print uno, " en cambio en dolares es: ", conv_dls, " dlls"
break
default:
print "introduce otra cantidad”
getch()
return
}
}
Final funcion
Inicio programa
{
dolares int
print "Cantidades $100, $50, $20, $10, $5, $1 "
print "introdusca la cantidad de convertir de pesos a dolores"
read dolares
cambio(dolares)
getch()
}
Fin
Problema 7Pseudocodigo:
Inicio funcion
void tiempo(int segundos)
{
hora int
min int
seg int
if(segundos<=60)
{
print "Los segundos introducidos equivalen a ", segundos, " segundos",
}
else
{
if(segundos>=60)
{
min=segundos/60
print "Los segundos introducidos equivalen a ", min, " minutos",
}
else
{
if(min>=60)
{
hora=min/60
print hora
}
}
}
getch()
return
}
Final funcion
Inicio programa
{
hora int
min int
seg int
segundos int
print "Introdusca la cantidad de segundos=? "
read segundos
tiempo(segundos)
getch()
}Fin
Tarea 3Cuestionario:1- Que recibe en una invocación de una función típica la función llamada?
Recibe valores de la funcion que llama
2-Cuando se dice que es una transmision por valor?
Cuando se almacena y manipula los valores transmitidos y devuelve de forma directa un valor unico
3-Llamar a una funcion y transmitir argumentos por valor es una ventaja de que programador?
Programador C++
4- Como se conoce la transmision de direcciones?
Como funcion de transmision por referencia
5-Cuales son los dos tipos de parametros de direccion que proporciona C++?
Referencia y apuntadores
6-Que hace la instruccion valnuevo?
Llama a la funcion llamada valnuevo y le transmite dos argumentos
7-Cuales son unos de los primeros requisitos al escribir la instruccion valnuevo()?
Es declarar dos parametros de de referencia para aceptar direcciones transmitidas.
8-Da un ejemplo de la instruccion valnuevo en x programa?
void valnuevo(double& num1, double& num2)
9-Como es en forma escrita el esquema inicial de un programa de computadora?
Por lo general es una descripcion seudocodigoo un diagrama de estructura de primer nivel
10-Para que sirve ese esquema?
Hace un problema complicado en un conjunto de tareas mas pequeñas y manejables
11-Cual es el algoritmo de un esquema general aplicable a muchas tareas de ingenieria y cientificas?
Obtener las entradas del problema
-Calcular el resultado deseado
-Reportar los resultados del calculo
12- Obtener las entradas, calcular el resultado y reportar los resultados se le hace referencia a ese algoritmo como?
Algoritmo para resolver problemas
13-La funcion polar en su linea de encabezado que declara?
Si la funcion devolvera o no devolverda de forma directa algun valor
14-Como puede probarse la instruccion polar en el programa?
Escribiendo una funcion controladora dedicada que solo llama a polar
15-Cuales son los 2 compiladores de C++ para crear numeros?rand() y srand()
16-Que hace la funcion rand()?
Produce una serie de numeros aleatorios en el rango 0<rand<rand_max donde la constante rand_max sedefine en el archivo de encabezado cmath.
17-Que hace la funcion srand?
Produce un valor "semilla"inicial para rand()
18-Que pasa si no se usa srand o otra tecnica de sembrado?
Producira siempre la misma serie de numeros aleatorios
19-El metodo para ajustar los numeros aleatorios producidos por un generador de numeros aleatorios para que residan dentro de dichos rangos se llamaa?
Escalonamiento
20-Que expresion puede usarse para producir un numero entero aleatorio?
1+rand()%NProblema 6.3Pseudocodigo:funcion encontrarMax(int, int)
inicio funcion
{
primernum int
segundonum int
max int
print "Introduzca el primer numero: "
read primernum
print "Introduzca el segundo numero: "
read segundonum
max=encontrarMax(primernum, segundonum)
print "El maximo de los dos numeros es: ", max
print "EL valor almacenado en max es: ", max
final funcion
incio programa
funcion encontrarMax(int x, int y)
{
numMax int
if(x>=y)
{
numMax=x
}
else
{
numMax=y
}
return numMax
}
Fin
Problema 6.4Pseudocodigo:
Funcion calcradioarea(float r , float a)
inicio funcion
{
print "El radio es: ", r
print "El area es: ", a
}
final funcion
inicio programa
int main()
{
r float
a float
c float
print "Introduce la circuferencia del circulo: "
read c
r=c/(2*3.1416)
a=(3.1416)*pow(r,2)
calcradioarea(r , a)
FinProblema 6.5Pseudocodigo:
funcion encontrarDistancia(float d)
inicion funcion
{
print "La distancia entre los dos puntos es: ", d
}
final funcion
inicio programa
{
x1 float
y1 float
x2 float
y2 float
d float
print "Introdusca las coordenadas del primer punto: "
read x1
read y1
print "Introdusca las coordenadas del segundo punto: "
read x2
read y2
d=sqrt(pow(x2-x1,2)+pow(y2-y1,2))
encontrarDistancia(d)
FinTarea 4
Manejo de archivos en C++
1- Por que surge la necesidad de utilizar archivos?
Por que antes era difícil transportar la información de una computadora a otra.
2- Antes en que tipo de memoria se almacenaba la información?
En la memoria RAM
3- Que desventaja tiene la memoria RAM a comparación de el almacenamiento de datos?
De que si la computadora se apaga los datos se pierden por completo
4- Responda con si o no la sig. Pregunta. Los archivos procesan datos?
No
5- Que hacen los archivos?
Solo almacenan los datos
6- Mencione las tres partes que conforman a un microprosedor en la interacción entre la memoria principal El microprocesador y los archivos?
ALU, Unidad de control, Registros
7- Como se llama el proceso que enlaza a la memoria RAM con archivo?
Proceso de grabar datos en el archivo
8- Como se llama el proceso que enlaza a ARCHIVO con la memoria RAM?
Proceso de carga de datos a la memoria
9- Cuales son los dispositivos de almacenamiento secundario?
diskettes, discos duros, CDs, flash drives, etc.
10- Que hacen los dispositivos de almacenamiento secundario?
Estos dispositivos no procesan datos solo almacenan datos.
11- Que es un dato en computacion?se refiere a los testimonios individuales relacionados con hechos, ya sean características de ciertos objetos de estudio o condiciones particulares de situaciones dadas.
12- Que es registro en computacion?
Es el conjunto completo de datos relacionados pertenecientes a una entrada.
13- Que es archivo en computacion?
es una colección de datos que tiene un nombre y se guardan en dispositivos de almacenamiento secundario, los cuales pueden ser magnéticos, ópticos, electrónicos, etc.
14- El modo de operación de un archivo a que es asociado?
A un archivero de una oficina
15- Que es lo que requiere un archivo abierto para poder realizar operaciones en el?
Un alias
16- Cuales son las 2 clasificaciones de archivo por contenido?
Texto y binarios
17- Que son los archivos de texto?Son aquellos que pueden contener cualquier clase de datos y de tal manera que son “entendibles” por la gente.
18- Cual es el código para que los datos de un archivo de texto se almacenen?
ASCII
19- Que hacen los archivos binarios?
Este tipo de archivos almacenan los datos numéricos con su representación binaria.
20- Como se clasifica la forma de acceder los datos de los archivos?
Secuenciales y directos.
21- De que otra forma también se les conoce?
Acceso directo, relativo o aleatorio
22- Que son los archivos secuenciales?
En este tipo de archivos los registros se graban en secuencia o consecutivamente y deben accesarse de ese mismo modo.
23- Para que sirve la función EOF(endo of file)?
Para identificar donde termina el archivo en archivos secuenciales
24- Para que sirve el calculo de direcciónes físicas?
Para reposicionar el apuntador de un archivo en un registro especifico
25- Los archivos de lenguaje C++ que tipo de direccones usa?
Fisicas.Tarea 5Cuestionario:1- Que cosas se necesitan para almacenar y recuperar datos fuera de un programa en C++?
Un archivo y un objeto de flujo de archivos
2-Que es un archivo?
Es una coleccion de datos almacenados juntos bajo un nombre comun, por lo general en un disco, cinta magnetica o CD-ROM
3-De que forma se almacena un archivo en un medio externo como un disco?
De forma fisica.
4-Cada archivo tiene un nombre de archivo unico conocido como?Nombre externo del archivo
5-Que es el nombre externo de archivo?
Es la manera en que es conocido el archivo por el sistema operativo.
6-Desde hace cuando existian los archivos de datos?Desde antes que existieran las computadoras
7-Que es un flujo?
Es la ruta de transmision en un solo sentido entre una fuente y un destino.
8-Como se llama la ruta por donde se envian la informacion?
Ruta de transmison
9-Que proporciona el objeto cin?
Una ruta de transmision del teclado al programa
10- Que proporciona el objeto cout?
Una ruta de transmision del programa a la pantalla terminal/
11-Apartir de que clases son creados los objetos cin y cout?
Clases de flujo iostream y ostream
12-Cuales son los dos tipos de archivos basicos que existen?
Archivos de texto y archivos binarios
13-Que permite el uso de un codigo de caracteres?
A un procesador de palabras o a un editor de texto desplegar los archivos de modo que puedan ser leidos
14-Cual es la ventaja de los archivos binarios?
Que son mas compactos,usan menos espacio al almacenarlos
15-Que es un flujo de archivos?
Es una ruta de transmision unidireccional utilizada para conectar un archivo almacenado en un dispositivo fisico
16-Como se le conoce al flujo de archivos que recibe o lee datos de un archivo a un programa?
Flujo de archivos de entrada
17-Como se le conoce al flujo de archivos que envia o escribe datos en un archivo?
Flujo de archivos de salida
18-Con que metodo se cierra un archivo?
Con el metodo close()
19-Que hace el metodo close()?
Rompe la conexion entre el nombre externo del archivo y el objeto de flujo de archivos
20-Que hace el metodo peek?
Devuelve el siguiente caracter en el flujo de entrada sin extraerlo del flujoProblema 10a Seccion 6.8Pseudocodigo:Inicio
string nombre_archivo="datos.dat"
ofstream archivo_sal
archivo_sal.open(nombre_archivo.c_str())
if (archivo_sal.fail())
{
Print "el archivo no habrio con exito"
exit(1)
}
archivo_sal, setiosflags(ios::fixed), setiosflags(ios::showpoint), setprecision(3)
Print "Nombre", " ", " Tarifa", " ", "Horas"
Print "----------------------------"
Print "Callaway,G.", "", "6.00", "", "40"
Print "Hanson,P.", "", "5.00", "", "48"
Print "Lasard,D.", "", "6.50", "", "35"
Print "Stillman,W.", "", "8.00", "", "50"
archivo_sal, "Nombre", " ", " Tarifa", " ", "Horas"
archivo_sal, "-----------------------------"
archivo_sal, "Callaway,G.", "", "6.00", "", "40", " "
archivo_sal, "Hanson,P.", "", "5.00", "", "48"
archivo_sal, "Lasard,D.", "", "6.50", "", "35"
archivo_sal, "Stillman,W.", "", "8.00", "", "50"
archivo_sal.close()
Fin
Programacion Estructurada
jueves, 23 de mayo de 2013
PRACTICAS Y TAREAS
Suscribirse a:
Entradas (Atom)






































































































