Вы находитесь на странице: 1из 9

Informática y Telecomunicaciones

Analista Programador – Ingeniería en Informática

Guía de ejercicio N°1: Conversión de pseudocódigo a


código JAVA

I. Autores y validadores
AUTOR(ES)
Docente(s) elaborador(es) Nombre Apellido (materno-paterno) – Nombre Sede
Diseñador Instruccional (si Sin información
corresponde)
VALIDADOR(ES)
Instruccional Sin información
Disciplinar Sin información
Operativo Sin información

II. Antecedentes generales

Nombre y código Programación Orientada a Nombre de el/los alumno/s


de asignatura Objetos – TIDS02
Unidad de Aprendizaje esperado:
aprendizaje1
1.1. Desarrolla algoritmos en un lenguaje formal orientado a objetos
considerando la integración de estructuras de control (integrada
competencia genérica Comunicación Oral y Escrita).

Competencia genérica integrada: Comunicación Oral y Escrita, Nivel 1

Evaluación Formativa Sección: a completar por docente aula

III. Propósito de la actividad


El desarrollo de las actividades de esta guía, permitirán que puedas realizar una conexión entre lo
que aprendiste en Fundamentos de programación, realizando la conversión a este nuevo lenguaje
de programación.

Programación Orientada a Objetos - TIDS02


Informática y Telecomunicaciones
Analista Programador – Ingeniería en Informática

IV. Actividades
Para el desarrollo de este recurso deberás considerar la revisión de los siguientes materiales y/o
lecturas. Lee atenta y comprensivamente cada una de los ítems a desarrollar.
 Desarrolla los 3 ejercicios planteados, siguiendo las instrucciones enseñadas por el docente.
 Utiliza la IDE de programación dispuesta (Netbeans, Eclipse, o cualquier otra habilitada e
indicada por tu docente).
 Resuelve y Ejecuta.
 Apóyate en Java SE 7 Programming – Student Guide. Capítulo 2.

Actividad N°1: Leer 20 números e imprimir cuantos son positivos, cuantos negativos y cuantos
neutros.

Proceso Contabilizar
Definir numero como entero;
Definir cantpositivos, cantnegativos, cantneutros como enteros;
cantpositivos =0;
cantnegativos=0;
cantneutros=0;
Para i=1 Hasta 20 Hacer
Escribir "Ingrese un número:";
leer numero;
si numero = 0 Entonces
cantneutros = cantneutros + 1;
Sino
si numero > 0 Entonces
cantpositivos = cantpositivos + 1;
Sino
cantnegativos = cantnegativos + 1;
FinSi
FinSi
FinPara
FinProceso

Programación Orientada a Objetos - TIDS02


Informática y Telecomunicaciones
Analista Programador – Ingeniería en Informática

Actividad N°2: Supón que se tiene un conjunto de calificaciones de un grupo de 40 alumnos. Realizar
un algoritmo para calcular la calificación media y la calificación más baja de todo el grupo.

Proceso Calificación
Definir nota, media, masBaja Como Real;
definir cantidad como entero;
cantidad =1;
media=0;
masBaja =8; //asumiendo que las notas están entre 1.0 y 7.0
Mientras cantidad<=40 hacer
Escribir 'Analizando al alumno #',cantidad;
Escribir 'Ingrese calificación:';
Leer nota;
si masBaja >nota entonces
masBaja = nota;
FinSi
media = media + nota;
cantidad = cantidad + 1;
FinMientras
media = media /40;
Escribir "La nota más baja es: ", masBaja;
Escribir "La media de notas es:", media;
FinProceso

Programación Orientada a Objetos - TIDS02


Informática y Telecomunicaciones
Analista Programador – Ingeniería en Informática

Actividad N°3: Leer una cantidad de datos de personas, y obtener las estadísticas asociadas a ellos:
porcentaje de hombres y mujeres, y promedio de edad de los ingresados.

Proceso Ejercicio5
Definir respuesta,sexo Como Caracter;
Definir cantidad, porcHombres, promEdad, edad, porcentaje como real;
promEdad =0;
cantidad = 0;
repetir
Escribir "¿Existen personas para analizar? [S/N]";
leer respuesta;
Hasta Que respuesta="S" o respuesta = "N";
mientras respuesta="S" hacer
cantidad = cantidad + 1;
Escribir "Ingrese su edad:";
leer edad;
promEdad = promEdad +edad;
repetir
Escribir "Ingresar sexo [M/F]";
leer sexo;
Hasta Que respuesta="M" o respuesta = "F";
si sexo = "M" entonces
porcHombres = porcHombres + 1;
FinSi
repetir
Escribir "Existen personas para analizar? [S/N]";
leer respuesta;
Hasta Que respuesta="S" o respuesta = "N";
FinMientras
porcentaje = (porcHombres *100)/cantidad;
Escribir "Total de personas evaluadas:",cantidad;
Escribir "Edad promedio:", promEdad/cantidad;
Escribir "Promedio de Hombres:", porcentaje,"%";
Escribir "Promedio de Mujeres:",100-porcentaje,"%";
FinProceso

V. Referencias bibliográficas
Oracle Academy. (2012). Java SE 7 Programming Student Guide - Volumen I. s/i: s/i.

Programación Orientada a Objetos - TIDS02


Informática y Telecomunicaciones
Analista Programador – Ingeniería en Informática

VI. Solucionario
Actividad N°1: Leer 20 números e imprimir cuantos son positivos, cuantos negativos y cuantos
neutros.

Proceso Contabilizar
Definir numero como entero;
Definir cantpositivos, cantnegativos, cantneutros como enteros;
cantpositivos =0;
cantnegativos=0;
cantneutros=0;
Para i=1 Hasta 20 Hacer
Escribir "Ingrese un número:";
leer numero;
si numero = 0 Entonces
cantneutros = cantneutros + 1;
Sino
si numero > 0 Entonces
cantpositivos = cantpositivos + 1;
Sino
cantnegativos = cantnegativos + 1;
FinSi
FinSi
FinPara
FinProceso

Solución:
import java.io.*;

public class Contabilizar {

public static void main(String args[]) throws IOException {


BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));
int cantNegativos;
int cantNeutros;
int cantPositivos;
double i;
int numero;
cantPositivos = 0;
cantNegativos = 0;
cantNeutros = 0;
for (i=1; i<=20; i++) {
System.out.println("Ingrese un número:");
numero = Integer.parseInt(bufEntrada.readLine());

Programación Orientada a Objetos - TIDS02


Informática y Telecomunicaciones
Analista Programador – Ingeniería en Informática

if (numero==0)
cantNeutros ++;
else {
if (numero>0)
cantPositivos ++;
else
cantNegativos ++;
}
}
}
}

Actividad N°2: Supón que se tiene un conjunto de calificaciones de un grupo de 40 alumnos. Realizar
un algoritmo para calcular la calificación media y la calificación más baja de todo el grupo.

Proceso Calificación
Definir nota, media, masBaja Como Real;
definir cantidad como entero;
cantidad =1;
media=0;
masBaja =8; //asumiendo que las notas están entre 1.0 y 7.0
Mientras cantidad<=40 hacer
Escribir 'Analizando al alumno #',cantidad;
Escribir 'Ingrese calificación:';
Leer nota;
si masBaja >nota entonces
masBaja = nota;
FinSi
media = media + nota;
cantidad = cantidad + 1;
FinMientras
media = media /40;
Escribir "La nota más baja es: ", masBaja;
Escribir "La media de notas es:", media;
FinProceso

Programación Orientada a Objetos - TIDS02


Informática y Telecomunicaciones
Analista Programador – Ingeniería en Informática

Solución:
import java.io.*;

public class Calificacion{


public static void main(String args[]) throws IOException {
BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));
int cantidad;
double masBaja;
double media;
double nota;
cantidad = 1;
media = 0;
// asumiendo que las notas están entre 1.0 y 7.0
masBaja = 8;
while (cantidad<=40) {
System.out.println("Analizando al alumno #"+cantidad);
System.out.println("Ingrese calificación:");
nota = Double.parseDouble(bufEntrada.readLine());
if (masBaja >nota)
masBaja = nota;

media += nota;
cantidad ++;
}
media /=40;
System.out.println("La nota más baja es: "+ masBaja);
System.out.println("La media de notas es:"+media);
}
}

Actividad N°3: Leer una cantidad de datos de personas, y obtener las estadísticas asociadas a ellos:
porcentaje de hombres y mujeres, y promedio de edad de los ingresados.

Proceso Ejercicio5
Definir respuesta,sexo Como Caracter;
Definir cantidad, porcHombres, promEdad, edad, porcentaje como real;
promEdad =0;
cantidad = 0;
repetir
Escribir "¿Existen personas para analizar? [S/N]";
leer respuesta;
Hasta Que respuesta="S" o respuesta = "N";
mientras respuesta="S" hacer
cantidad = cantidad + 1;
Escribir "Ingrese su edad:";

Programación Orientada a Objetos - TIDS02


Informática y Telecomunicaciones
Analista Programador – Ingeniería en Informática

leer edad;
promEdad = promEdad +edad;
repetir
Escribir "Ingresar sexo [M/F]";
leer sexo;
Hasta Que respuesta="M" o respuesta = "F";
si sexo = "M" entonces
porcHombres = porcHombres + 1;
FinSi
repetir
Escribir "Existen personas para analizar? [S/N]";
leer respuesta;
Hasta Que respuesta="S" o respuesta = "N";
FinMientras
porcentaje = (porcHombres *100)/cantidad;
Escribir "Total de personas evaluadas:",cantidad;
Escribir "Edad promedio:", promEdad/cantidad;
Escribir "Promedio de Hombres:", porcentaje,"%";
Escribir "Promedio de Mujeres:",100-porcentaje,"%";
FinProceso

Solución:
import java.io.*;

public class Contar {


public static void main(String args[]) throws IOException {
BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));
double cantidad;
double edad;
double porcentaje;
double porcHombres;
double promedad;
String respuesta;
String sexo;
promedad = 0;
cantidad = 0;
do {
System.out.println("Existen personas para analizar? [S/N]");
respuesta = bufEntrada.readLine();
} while (!(respuesta.equals("S") || respuesta.equals("N")));
while (respuesta.equals("S")) {
cantidad = cantidad+1;
System.out.println("Ingrese su edad:");
edad =
Double.parseDouble(bufEntrada.readLine());
promedad = promedad+edad;
do {

Programación Orientada a Objetos - TIDS02


Informática y Telecomunicaciones
Analista Programador – Ingeniería en Informática

System.out.println("Ingrsar sexo [M/F]");


sexo = bufEntrada.readLine();
} while (!(respuesta.equals("M") ||
respuesta.equals("F")));
if (sexo.equals("M")) {
porcHombres ++;
}
do {
System.out.println("Existen personas para
analizar? [S/N]");
respuesta = bufEntrada.readLine();
} while (!(respuesta.equals("S") ||
respuesta.equals("N")));
}
porcentaje = (porchombres*100)/cantidad;
System.out.println("Total de personas evaluadas:"+cantidad);
System.out.println("Edad promedio:"+promedad/cantidad);
System.out.println("Promedio de Hombres:"+porcentaje+"%");
System.out.println("Promedio de Mujeres:"+100-porcentaje+"%");
}
}

Programación Orientada a Objetos - TIDS02