Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TEMA:
“DESARROLLO DE PROYECTOS
TRABAJO: RESPONSABILIDA SOCIAL
DE ALGORITMOS PROPUESTOS”
INTEGRANTES:
CUSCO – PERU
Datos
N: representa al N del tamaño de los nombres y las notas ingresadas; entero
nombres: representa los primeros nombres ingresados; cadena
notas: representa a las primeras notas ingresadas; entero
Proceso
i: representa al arreglo del contador de la estructura repetitiva; entero
Salida
mensaje: representa al mensaje obtenido con arreglo; entero
III. DISEÑO
3.1 Pseudocódigo
INICIO
Leer datos
Leer proceso
resultado(mensaje)
FIN
Módulo Principal
Inicio
ImprimirNota(N)
Fin_móduloprincipal
Módulo ImprimirNombre
Procedimiento ImprimirNombre( N entero)
Inicio
declarar i
para(i0, i≤ N, i i+1)
incio
escribir “ingrese las notas y los nombres de los alumnos”
fin_para
fin
import java.util.Scanner;
/**
*
* @author ZARETH HUAMAN Y YOHELMIR CCAPA
* FECHA: 18/12/2019
* ACCION:
* a) Permita crear un arreglo de notas y arreglo de nombres de tamaño N
*/
public class JavaApplication34 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int N;
int i;
double[] notas;
String[] nombres;
Scanner sc = new Scanner(System.in);
// Indicar que hace el programa
System.out.print("Ingrese Tamaño de los arreglos N: ");
// Leer datos: El usuario define el tamaño del arreglo
N = sc.nextInt();
COMPROBANDO:
b) Muestre los nombres y la nota de los alumnos aprobados
I. ANALISIS
1.1 ENTENDER EL PROBLEMA
Datos
N: representa al N del tamaño de los nombres y las notas ingresadas; entero
nombres: representa los primeros nombres ingresados; cadena
notas: representa a las primeras notas ingresadas; entero
Proceso
i: representa al arreglo del contador de la estructura repetitiva; entero
Salida
aprobados: representa el resultado obtenido del arreglo; entero
III. DISEÑO
3.1 Pseudocódigo
INICIO
Leer datos
Leer proceso
resultado(mensaje)
FIN
Módulo Principal
Inicio
ImprimirNota(N)
Fin_móduloprincipal
Módulo ImprimirNombre
Procedimiento ImprimirNombre( N entero)
Inicio
declarar i
para(i0, i≤ N, i i+1)
incio
escribir “ingrese las notas y nombres de los alumnos aprobados”
fin_para
import java.util.Scanner;
/**
*
* @author ZARETH HUAMAN Y YOHELMIR CCAPA
* FECHA: 18/12/2019
* ACCION:
* b) Muestre los nombres y la nota de los alumnos aprobados
*/
public class JavaApplication34 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int i = 0;
int N;
double[] notas;
String[] nombres;
Scanner sc = new Scanner(System.in);
System.out.println("Ingrese Tamaño de los arreglos N: ");
// Leer datos:El usuario define
N = sc.nextInt();
notas = new double[N];
// Crear el arreglo
nombres = new String[N];
}
COMPROBANDO:
c) Muestre los nombres y la nota de los alumnos desaprobados
I. ANALISIS
1.1 ENTENDER EL PROBLEMA
Datos
N: representa al N del tamaño de los nombres y las notas ingresadas; entero
nombres: representa los primeros nombres ingresados; cadena
notas: representa a las primeras notas ingresadas; entero
Proceso
i: representa al arreglo del contador de la estructura repetitiva; entero
Salida
desaprobados: representa el resultado obtenido del arreglo; entero
III. DISEÑO
3.1 Pseudocódigo
INICIO
Leer datos
Leer proceso
resultado(mensaje)
FIN
Módulo Principal
Inicio
ImprimirNota(N)
Fin_móduloprincipal
Módulo ImprimirNombre
Procedimiento ImprimirNombre( N entero)
Inicio
declarar i
para(i0, it≤ N, i i+1)
incio
escribir “ingrese las notas y nombres de los alumnos desaprobados”
fin_para
import java.util.Scanner;
/**
*
* @author ZARETH HUAMAN Y YOHELMIR CCAPA
* FECHA: 18/12/2019
* ACCION:
* c) Muestre los nombres y la nota de los alumnos desaprobados
*/
public class JavaApplication34 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int i = 0;
int N;
double[] notas;
String[] nombres;
Scanner sc = new Scanner(System.in);
System.out.println("Ingrese Tamaño de los arreglos N: ");
// Leer datos:El usuario define
N = sc.nextInt();
notas = new double[N];
// Crear el arreglo
nombres = new String[N];
}
COMPROBANDO:
EJERCICIO Nº 2: Elaborar algoritmo que en una universidad se ha establecido los
siguientes puntajes de ingreso para sus respectivas facultades.
I. ANALISIS
1.1 ENTENDER EL PROBLEMA
Datos Proceso Resultado
puntajes facultades
70,79 Si (puntajes=70,79 ) Ciencia
80,89 Si (puntaje=80,89) Industrial
90,99 Si (puntaje=90,99 ) Electrónica
100 Si (puntaje=100 ) sistemas
Datos
puntajes: representa los puntajes de las facultades ingresados; entero
Proceso
No existe en este caso
Salida
facultades: representa al mensaje obtenido con arreglo; entero
III. DISEÑO
3.1 Pseudocódigo
INICIO
Leer datos
Leer resultado(mensaje)
FIN
Módulo Principal
Inicio
Imprimirfacultades(N)
Fin_móduloprincipal
Módulo ImprimirPuntajes
Procedimiento ImprimirPuntajes( N entero)
Inicio
caso 1: facultades =”ciencias”
caso 2: facultades =”industrial”
caso 3: facultades =”electronica”
caso 4: facultades =”sistemas”
caso contrario : facultades =”puntajes no valido”
incio
escribir “facultades”
fin
fin
III. CODIFICACION EN JAVA
package javaapplication32;
import java.util.Scanner;
/**
*
* @author ZARETH HUAMAN Y YOHELMIR CCAPA
* FECHA: 18/12/2019
* ACCION: Elaborar algoritmo que en una universidad se ha establecido los siguientes
puntajes de ingreso para sus respectivas facultades.
*/
public class JavaApplication32 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int p;
String f;
// leer datos}
Scanner sc = new Scanner(System.in);
System.out.print("ingrese puntajes para el ingreso de facultades: ");
p = sc.nextInt();
if (p >=70 && p <=79)
f = "ciencias";
else if (p >=80 && p <=89)
f = "industrial";
else if (p >=90 && p <=99)
f = "electronica";
else if (p >=100)
f = "sistemas";
else
f = "ninguna";
System.out.print("facultad: "+f);
}
}
COMPROBANDO:
EJERCICIO Nº 3: Escribir un algoritmo que obtenga el cociente y el residuo de una
división mediante restas sucesivas.
I. ANALISIS
1.1 ENTENDER EL PROBLEMA
Datos Proceso Resultado
numero Cociente residuo
20 20 / 5 = 4 4 0
3478 3478 / 26 =133 133 20
347 347 / 3 = 115 115 02
Datos
numero: representa los primeros numeros ingresados; entero
Proceso
No existe en este caso
Salida
cociente: representa el cociente obtenido; entero
residuo: representa el residuo obtenido de la division; entero
III. DISEÑO
3.1 Pseudocódigo
INICIO
Leer datos
Leer resultado(mensaje)
FIN
Módulo Principal
Inicio
ImprimirCociente y Residuo(N)
Fin_móduloprincipal
Módulo ImprimirNumero
Procedimiento ImprimirNumero( N entero)
Inicio
n←0
Mientras (n>=d)
Incio
n←n-d
escribir “ingrese cociente y residuo”
fin
fin
import java.util.Scanner;
/**
*
* @author ZARETH HUAMAN Y YOHELMIR CCAPA
* FECHA: 18/12/2019
* ACCION: Escribir un algoritmo que obtenga el cociente y el residuo de una división
mediante restas sucesivas.
*/
public class JavaApplication32 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int n;
int d;
int c=0;
int r = 0;
Scanner sc = new Scanner(System.in);
System.out.print("ingrese numero: ");
n = sc.nextInt();
System.out.print("ingrese denominador: ");
d = sc.nextInt();
System.out.print("ingrese cociente: ");
c = sc.nextInt();
while (n>=d){
n=n-d;
c++;
}
r=n;
System.out.print(""+c);
System.out.print(""+r);
}
}
COMPROBANDO:
EJERCICIO Nº 4: Escriba un algoritmo que muestre cuantos múltiplos de 3 existen entre
el 10 y el 70.
I. ANALISIS
1.1 ENTENDER EL PROBLEMA
Datos Proceso Resultado
numero i mensaje
1 1 MOD 3 = 3 0 3
145 145 MOD 3 = 48 1 48
10 10 MOD 3 = 3 2 3
Datos
numero: representa los números que se va a ingresar; entero
Proceso
i: representa al contador que se realizara en la estructura repetitiva; entero
Salida
mensaje: representa los mensaje (múltiplos) obtenido; entero
III. DISEÑO
3.1 Pseudocódigo
INICIO
Leer datos
Leer proceso
Leer resultado(mensaje)
FIN
Módulo Principal
Inicio
Imprimirmultiplo(N)
Fin_móduloprincipal
Módulo ImprimirNumero
Procedimiento ImprimirNumero( N entero)
Inicio
n←0
Si mod 3=0
cont←Cont+1
Incio
n←n-d
escribir “multiplo”
Cont←Cont+1
Fin
Mientras que (i>70 ) Hacer
fin
/**
*
* @author ZARETH HUAMAN Y YOHELMIR CCAPA
* FECHA: 18/12/2019
* ACCION: Escriba un algoritmo que muestre cuantos múltiplos de 3 existen entre el 10 y el 70.
*/
public class JavaApplication32 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int i = 10 ;
int cont = 0;
Scanner sc = new Scanner(System.in);
System.out.print("ingrese multiplos: ");
i = sc.nextInt();
cont = sc.nextInt();
do{
if (i % 3 == 0){
cont++;
}
i++;
}while (i<=70);
System.out.println("los multiplos de 3 es: "+cont);
}
}
COMPROBANDO:
EJERCICIO Nº 5: Elaborar algoritmo que ingrese una letra a y e y reportar el mensaje
de acuerdo a: “a” excelente; “b” bueno; “c” regular; “d” malo; “e” pésimo
I. ANALISIS
1.1 ENTENDER EL PROBLEMA
Datos Proceso Resultado
letra mensaje
a Si (letra= a) Excelente
b Si (letra= b) Bueno
c Si (letra= c) Regular
d Si (letra= d) Malo
e Si (letra= e) Pésimo
Datos
letras: representa las letras de las vocales ingresados; entero
Proceso
No existe en este caso
Salida
mensaje: representa al mensaje obtenido con arreglo; entero
III. DISEÑO
3.1 Pseudocódigo
INICIO
Leer datos
Leer resultado(mensaje)
FIN
Módulo Principal
Inicio
Imprimirletras(N)
Fin_móduloprincipal
Módulo Imprimirmensaje
Procedimiento ImprimirMensaje( N entero)
Inicio
caso 1: mensaje=”excelente”
caso 2: mensaje=”bueno”
caso 3: mensaje=”regular”
caso 4: mensaje=”malo”
caso 5: mensaje=”pésimo”
caso contrario : mensaje =”letra no valido”
incio
escribir “letra”
fin
fin
/**
*
* @author ZARETH HUAMAN Y YOHELMIR CCAPA
* FECHA: 18/12/2019
* ACCION: Elaborar algoritmo que ingrese una letra a y e y reportar el mensaje de acuerdo a:
* “a” excelente; “b” bueno; “c” regular; “d” malo; “e” pésimo
*/
public class JavaApplication32 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
String mensaje;
int letra;
// leer datos}
case'a': case'A':
System.out.println("excelente");
break;
case'b': case'B':
System.out.println("bueno");
break;
case'c': case'C':
System.out.println("regular");
break;
case'd': case'D':
System.out.println("malo");
break;
case'e': case'E':
System.out.println("pesimo");
break;
default:
System.out.println("opcion equivocada");
}
}
}
COMPROBANDO:
EJERCICIO Nº 6: Elaborar el factorial de un numero ingresado
I. ANALISIS
1.1 ENTENDER EL PROBLEMA
Datos Proceso Resultado
numero i factorial
2! 2*1 0 2
4! 4*3*2*1 1 24
3! 3*2*1 2 6
Datos
numero: representa los números ingresados; entero
Proceso
i : representa al contador de la estructura repetitiva; entero
Salida
factorial: representa al mensaje obtenido con arreglo; entero
III. DISEÑO
3.1 Pseudocódigo
INICIO
Leer datos
Leer proceso
Leer resultado(mensaje)
FIN
Módulo Principal
Inicio
ImprimirNumero(N)
Fin_móduloprincipal
Módulo ImprimirFactorial
Procedimiento ImprimirFactorial( N entero)
Inicio
Declarar i
para(i1, i≤ numero, ii+1)
incio
escribir “el numero factorial”
fin_para
Fin_procedimiento
import java.util.Scanner;
/**
*
* @author ZARETH HUAMAN Y YOHELMIR CCAPA
* FECHA: 18/12/2019
* ACCION: Elaborar el factorial de un numero ingresado
*/
public class JavaApplication32 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int i;
int factorial = 1;
int n;
Scanner sc = new Scanner(System.in);
System.out.print("escribir el numero: ");
n = sc.nextInt();
// imprimir factorial
for(i = 1; i<=n; i++)
{
factorial = factorial *i;
}
System.out.println("el factorial es: "+factorial);
}
}
COMPROBANDO: