0% encontró este documento útil (0 votos)
438 vistas14 páginas

Examen FINAL

Este documento presenta una solución en pseudocódigo y diagrama de flujo para un examen final de programación para electrónica que involucra leer y procesar los datos de 100 estudiantes, incluyendo nombres, notas, edad, semestre, y calcular estadísticas como promedios, edades mínimas y máximas, cantidad de estudiantes por semestre, y estado de descuento para la matrícula del próximo semestre basado en la nota final.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
438 vistas14 páginas

Examen FINAL

Este documento presenta una solución en pseudocódigo y diagrama de flujo para un examen final de programación para electrónica que involucra leer y procesar los datos de 100 estudiantes, incluyendo nombres, notas, edad, semestre, y calcular estadísticas como promedios, edades mínimas y máximas, cantidad de estudiantes por semestre, y estado de descuento para la matrícula del próximo semestre basado en la nota final.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 14

Universidad Nacional San Agustín

Ingeniería Electrónica
Docente: Mg. Milagros Zegarra Mejía Programación para Electrónica 2

EXAMEN FINAL GRUPO B

Nombre: GUIDO CHAMBILLA CONDORI Fecha: 18-12-2020

1) Leer los nombres, apellidos, edad, cui, distrito, semestre y las 4 notas de los 100 alumnos de un
salón, hallar el promedio de cada alumno teniendo en cuenta que las dos primeras notas tienen
un peso de 30% y las dos últimas de 20%, guardar cada elemento en un vector, mostrar el
promedio de las notas finales, luego aumentar 1 punto si la nota es menor a 13 y 1.5 si es mayor,
y volver a mostrar el promedio de las mismas. Al final volver a mostrar todos los vectores,
adicional a ello debe hallar el promedio más alto, el promedio más bajo, la cantidad de alumno en
cada semestre, el semestre con más alumnos, el semestre con menos alumnos, la máxima edad,
la menor edad, cuantos menores de 20 años, cuantos entre 21 y 30 y cuantos mayores de 30.
Finalmente, para el próximo semestre considerar un estado de descuento para la matricula
dependiendo de la nota final obtenida si es 11 o menos NO TIENE descuento, entre 12 y 15 un
15% y más de 15 un 25% de descuento, esto se quedará almacenado en un vector el cual se
hará efectivo cuando se vaya a matricular
Realizar Diagrama de flujo, diagrama NS, PSeudocódigo, Pseint

2) Explicar cómo se ha realizado la aplicación en Android, que software ha usado, cómo funciona el
software, que ventajas y desventajas tiene, que opciones adicionales en cuanto a software ha
investigado y porque decidió usar el software que finalmente uso. Incluir pantallazos y videos del
funcionamiento

SOLUCIÓN EJERCICIO N° 1

CODIGO PSEINT

Proceso PARCIAL_3
Dimension nombres[100], apellidos[100], edad[100], cui[100], distrito[100], semestre[100],
nota1[100], nota2[100], nota3[100], nota4[100], prom[100], prom2[100], sem[10], estado[100]
Definir nombres, apellidos, distrito, estado Como Texto
Definir edad, cui, semestre Como Entero;
Definir nota1, nota2, nota3, nota4, prom Como Real;
n=100
Para i<-1 hasta n Hacer
Mostrar "INGRESE SU NOMBRE"
Leer nombres[i];
Mostrar "INGRESE SU APELLIDO"
Leer apellidos[i];
Mostrar "INGRESE SU EDAD"
Leer edad[i];
Mostrar "INGRESE SU CUI"
Leer cui[i];
Mostrar "INGRESE EL DISTRITO EN EL QUE VIVE"
Leer distrito[i];
Mostrar "INGRESE EL SEMESTRE EN EL QUE ESTA"
Leer semestre[i];
Mostrar "INGRESE SUS 2 PRIMERAS NOTAS"
Leer nota1[i], nota2[i];
Mostrar "INGRESE SUS 2 SEGUNDAS NOTAS"
Leer nota3[i], nota4[i];
prom[i]=nota1[i]*0.3+nota2[i]*0.3+nota3[i]*0.2+nota4[i]*0.2;
Mostrar " SU PROMEDIO ES ", prom[i];
acum=acum+prom[i];
FinPara
promfinal=acum/n
Mostrar " EL PROMEDIO DE LAS NOTAS ES ", promfinal;
Para i<-1 hasta n Hacer
Si prom[i]<13
prom2[i]=prom[i]+1
SiNo
prom2[i]=prom[i]+1.5
FinSi
acum2<-acum2+prom2[i]
FinPara
promfinal2=acum2/n
Mostrar " EL PROMEDIO DE LAS NOTAS 2 ES ", promfinal2;
Para i<-1 hasta n Hacer
Mostrar " NOMBRES ", nombres[i];
Mostrar " APELLIDOS ", apellidos[i];
Mostrar " EDAD ", edad[i];
Mostrar " CUI ", cui[i];
Mostrar " VIVE EN ", distrito[i];
Mostrar " DEL SEMESTRE ", semestre[i];
FinPara
maximo=0
minimo=0
Para i<-1 Hasta n Hacer
Si prom2[i]>maximo Entonces
maximo=prom2[i]
FinSi
minimo<-maximo
Si prom2[i]<minimo Entonces
minimo=prom2[i]
FinSi
FinPara
Mostrar " EL PROMEDIO MAS ALTO ES ", maximo;
Mostrar " EL PROMEDIO MAS BAJO ES ", minimo;
Para i<-1 hasta n Hacer
Segun semestre[i]
1:sem[1]=sem[1]+1
2:sem[2]=sem[2]+1
3:sem[3]=sem[3]+1
4:sem[4]=sem[4]+1
5:sem[5]=sem[5]+1
6:sem[6]=sem[6]+1
7:sem[7]=sem[7]+1
8:sem[8]=sem[8]+1
9:sem[9]=sem[9]+1
10:sem[10]=sem[10]+1
FinSegun
FinPara
Para i<-1 hasta 10 Hacer
Mostrar "EL NUMERO DE ALUMNOS EN EL SEMESTRE ", i " ES ", sem[i]
FinPara
Para i<-1 Hasta n Hacer
Para j<-1 hasta 10 Hacer
Si sem[i]>maxsem Entonces
maxsem=sem[i]
semmax<-i
FinSi
minsem<-maxsem
Si sem[i]<minsem Entonces
minsem=sem[i]
semmin<-i
FinSi
FinPara
FinPara

Mostrar " EL SEMESTRE QUE MAS ALUMNOS TIENE ES ", semmax;


Mostrar " EL SEMESTRE QUE MENOS ALUMNOS TIENE ES ", semmin;
Para i<-1 Hasta n Hacer
Si edad[i]>edadmax Entonces
edadmax=edad[i]
FinSi
edadmin<-edadmax
Si edad[i]<edadmin Entonces
edadmin=edad[i]
FinSi
FinPara
Mostrar " LA EDAD MAXIMA ES ", edadmax;
Mostrar " LA EDAD MINIMA ES ", edadmin;
Para i<-1 hasta n Hacer
si edad[i]<=20
men20=men20+1
SiNo
si edad[i]>20 y edad[i]<=30
men30=men30+1
SiNo
may30=may30+1
FinSi
FinSi
FinPara
Mostrar " MENORES DE 20 AÑOS SON ", men20;
Mostrar " ENTRE 21 Y 30 SON ", men30;
Mostrar " MAYORES DE 30 SON ", may30;
Para i<-1 hasta n Hacer
Si prom2[i]<=11
estado[i]= "NO TIENE DESCUENTO"
SiNo
si prom2[i]>=12 y nota2[i]<=15
estado[i]="15% DE DESCUENTO"
SiNo
estado[i]="25% DE DESCUENTO"
FinSi
FinSi
FinPara
FinProceso
INICIO

nombre, distrito; como


carácter
notas, n_notas, semestre,
cui, edad, max_est,
min_est; como entero
nota, prom_notas,
prom_final, nota_max,
nota_min, desc_matric,
n_notas, acum; como real

leer
nombre, edad, cui, distrito
semestre. notas 

notas= nota1, nota2,


nota3, nota4
n_notas=0,
acum=notas+1
respuesta="si"

Repetir desde
n_est=1 hasta
n_est=100

C
n_est = n_est + 1

leer
notas

prom_notas =
(nota1+nota2)*0.3 +
(nota3+nota4)*0.2

si
nota < 13 notas = notas1, notas2
entonces notas3, notas4

prom_notas = notas + 1

si
notas = notas1, notas2
nota > 14
notas3, notas4
entonces

prom_notas = notas +1.5

mostrar
prom_final = prom_notas

A
A

si prom_notas
prom_nota = nota_menor
>= nota_mayor

nota_mayor = prom_notas

escoger semestre

semestre1 semestre2 semestre3 semestre4 semestre5 semestre6 semestre7 semestre8 semestre9 semestre10

semestre >= cant_est

semestre < cant_est

C
mostrar
cant_est

si edad >21 y
cant_est = est_edad >30
edad < 30

total_est = cant_est
nota_final

mostrar
nro_estudiantes

si nota_final <11
entonces

si nota_final >= 12 y
nota_final < 15
des_matricula = 0 entoces
si nota_final > 15 desc_matricula =
entonces 0.25*matricula

desc_matricula = .015*matricula

B
B

mostrar
nota_final
pago_matric

FIN
INICIO

nombre, distrito; como notas, n_notas, semestre, nota, prom_notas, prom_final, nota_max,
variables cui, edad, max_est, nota_min, desc_matric,
carácter
min_est; como entero n_notas, acum; como real

leer nombre, edad, cui, distrito, semestre, notas


notas= nota1, nota2, nota3, nota4, n_notas=0,
acum=notas+1 respuesta="si"

n_est = n_est + 1

Repetir desde leer notas


n_est=1 hasta
n_est=100 mientras

si nota <
13
entonces

si nota > 14
prom_notas =
entonces
(nota1+nota2)*0.3
+
prom_notas
(nota3+nota4)*0.2 prom_notas = notas = notas1, notas2
= notas + 1
notas +1.5 notas3, notas4

mostrar
prom_final = prom_notas
si prom_notas
>= nota_mayor

nota_mayor = prom_notas prom_nota = nota_meno

mostrar
prom_final = prom_notas

escoger semestre
sem_1

sem_2

sem_3

sem_4

sem_5

sem_6

sem_7 sem_8
sem_9 sem_10 si no

ric
m m m m m m m m m
alu alu alu alu alu alu alu alu alu
at
n_alum
n_ n_ n_ n_ n_ n_ n_ n_ n_ _m
no

semestre >= cant_est

semestre < cant_est

mostrar cant_est
si edad >21 y
edad < 30

si nota_final <11
entonces
si nota_final >= 12 y total_est = cant_est
nota_final < 15 si nota_final > 15 nota_final
entonces

des_matricula = desc_matricula = desc_matricula =


0 .015*matricula 0.25*matricula

pago_matricula

mostrar nota_final
pago_matric
FIN
APLICACIÓN EN APP INVENTOR
Objetivos

Realizar una aplicación en APP Inventor para un sistema operativo Android, que permita programar una
agenda o libreta de notas, además guarde la fecha en el que se genera la nota y pueda ser modificada
una vez cumplida la actividad.

1° paso. - Empezaremos descargando el APP inventos en nuestro computador.


2° paso. - diseñamos nuestro portal aplicativo para nuestro Smartphone lo más versátil y
accesible para su manipulación.

Ventana principal:

3° paso. – una vez diseñado la ventana principal se genera la programación de bloques según
el lenguaje de programación en app inventor.

Diagrama de bloques de la ventana principal:

4° paso. – añadimos una ventana en el cual generaremos notas insertando un texto o actividad
programada el cual se guardará mediante el botón anotar y añadiremos un botón que nos
permita retroceder a la página principal.

Ventana generar notas:


5° paso. – realizar la programación para la ventana anotar mediante el diagrama de bloques de
app inventor el cual nos permitirá generar un texto para luego poder ser almacenado en otra
venta pera ello se genera un botón de anotar.

Diagrama de bloques para ventana anotar:


6° paso. – volvemos a generar una ventana ver notas que mostrará el texto generado en la
ventana anotar con la fecha y hora en el que se generó la nota, también añadiremos un botón
atrás que nos permite retornar a la ventana principal.

Ventana ver notas:

7° paso. – luego se realizará la programación del diagrama de bloques para la ventana ver
notas en el cual se utilizará diversas funciones de app inventor para que el aplicativo guarde las
notas generadas con un horario instantáneo.

Diagrama de bloques ver notas:


8° paso. – por ultimo generamos la aplicación para Android el cual posteriormente instalaremos
en cualquier teléfono con sistema operativo Android.

Funcionamiento de aplicativo Android en el Smartphone

una vez creada la aplicación en app inventor instalaremos nuestra aplicación en nuestro
teléfono con sistema operativo Android en el cual podremos generar ya nuestra agenda con
algunas actividades diarias.
Básicamente nuestra aplicación funciona de la siguiente manera:

Ingresamos a la aplicación y visualizaremos la ventana principal donde presionamos primero en


el botón anotar seguidamente se abrirá una nueva ventana donde podremos generar un texto o
actividad a programarse, para que el texto se guarde presionamos anotar donde de inmediato
aparece un mensaje ¡apuntado!, donde quedara guardado en otra ventana ver notas como se
ve en la última imagen del cual podemos retornar a la ventana principal con el botón atrás, por
ultimo tenemos un botón borrar notas el cual permite borrar todas las notas guardadas.

En el video podemos notar que nuestra aplicación funciona de forma exitosa, ahora probar en
el tiempo que tal útil puede resultar según un estudio estadístico.

Video elaboración de la APLICACIÓN:

https://drive.google.com/file/d/1-91BEo_zKKHuXW6lQUrGiIcMaxhmwuyJ/view?usp=sharing

Video demostrativo de la APLICACIÓN:

https://drive.google.com/file/d/1H4NoGykuUyoeseQh_XyymKE375c77MVN/view?usp=sharing

APLICACIÓN:

http://ai2.appinventor.mit.edu/b/2q5x












DIAGRAMA DE FLUJO DEL APLICATIVO
inicio

variables
nota, anotar, ver_notas,
apuntar, atras, borrar_notas,
salir, total_notas.

leer
notas,
total_notas

notas=1
total_notas=0

repetir notas > 0 hasta V


notas = total_notas + 1

mostrar F
si nota > 0
"!no hay notas¡"

total_nota = nota + 1

mostrar F
si nota >= 1
"!no hay notas¡"

ver_notas= total_notas + fecha

mostrar
total_notas

fin

También podría gustarte