SlideShare una empresa de Scribd logo
1 de 12
Descargar para leer sin conexión
Lógica y Programación Instituto Tecnológico Metropolitano
Taller facil 1
CONCEPTOS DE JAVA
Registros basicos
1. Registro contador
A = A + 1
2. Registro acumulador
A = A + B
3. Registro centinela
Si Opcion = Valor Entonces Pare
Concepto de los espacios
En Java las instrucciones terminan en ; y pueden ser escritas en cualquier orden que conserve los espacios,
respetando los comentarios de una linea
public class PrimerApp{ public static void main(String[] args) { //imprime un mensaje
String mensaje="El primer programa"; System.out.println(mensaje); } }
Identificadores
Un nombre que identifica a una variable, a un método o función miembro, o a una clase
Comentarios
1. Comentarios en una sola línea // Este es un comentario de linea
2. Comentarios de varias líneas
los programadores diseñan comentarios como el siguiente:
/*----------------------------------------|
| (C) Dario Lara Zapata |
| fecha: Marzo 1999 |
| programa: PrimerApp.java |
|----------------------------------------*/
3. Comentarios de documentación // Usan Javadoc.exe para generar la documentación con los comentarios
Operadores
La precedencia de operadores
El lector conocerá que los operadores aritméticos tienen distinta precedencia (raiz, exp, /, *, +, -), así la
expresión
a+b*c
es equivalente a
a+(b*c)
Para realizar la operación scribiremos
a/(b*c);
o bien,
a/b/c;
Operadores aritmeticos
Java tiene cinco operadores aritméticos cuyo significado se muestra en la tabla adjunta
Operador Nombre Ejemplo
+ Suma 3+4
- Diferencia 3-4
* Producto 3*4
/ Cociente 20/7
% Módulo 20%7
Operador asignación
El operador asignación se puede combinar con los operadores aritméticos
Expresión Significado
x+=y x=x+y
x-=y x=x-y
x*=y x=x*y
x/=y x=x/y
Así, la sentencia
X = x + 23;
evalúa la expresión x+23, que es asignada de nuevo a x. El compilador lee primero el contenido de la porción de
memoria nombrada x, realiza la suma, y guarda el resultado en la misma porción de memoria. Se puede escribir la
sentencia anterior de una forma equivalente más simple
www.dariolara.com dariolara@hotmail.com
1
Lógica y Programación Instituto Tecnológico Metropolitano
x+=23;
Los operadores relacionales
Operador nombre ejemplo significado
< menor que a<b a es menor que b
> mayor que a>b a es mayor que b
== igual a a==b a es igual a b
!= no igual a a!=b a no es igual a b
<= menor que o igual a a<=5 a es menor que o igual a b
>= mayor que o igual a a>=b a es menor que o igual a b
Las asignaciones se realizan con el símbolo =, las comparaciones con ==.
Los operadores lógicos
Los operadores lógicos son:
• && AND (el resultado es verdadero si ambas expresiones son verdaderas)
• || OR (el resultado es verdadero si alguna expresión es verdadera)
• ! NOT (el resultado invierte la condición de la expresión)
La expresión "NO a es igual a b"
!(a==b)
es verdadera si a es distinto de b, y es falsa si a es igual a b. Esta expresión es equivalente a
(a!=b)
Concatenación de strings
En Java se usa el operador + para concatenar cadenas de carcateres o strings
System.out.println("la temperatura centígrada es "+C);
La conversión automática y promoción (casting)
Cuando se realiza una operación, si un operando es entero (int) y el otro es de coma flotante (double) el
resultado es en coma flotante (double).
int a=5;
double b=3.2;
double suma=a+b;
Los operadores unarios
son:
• ++ Incremento
• -- Decremento
actúan sobre un único operando. Se trata de uno de los aspecto más confusos para el programador, ya que
el resultado de la operación depende de que el operador esté a la derecha i++ o a la izquierda ++i.
i=i+1; //añadir 1 a i
i++;
i=i-1; //restar 1 a i
i--;
A la derecha
j=i++;
asigna a j, el valor que tenía i. Por ejemplo, si i valía 3, después de ejecutar la sentencia, j toma el valor de 3
e i el valor de 4. Lo que es equivalente a las dos sentencias
j=i;
i++;
A la izquierda
j=++i;
asigna a j el valor incrementado de i.
Por ejemplo, si i valía 3, después de ejecutar la sentencia j e i toman el valor de 4. Lo que es equivalente a
las dos sentencias
++i;
j=i;
Tipos de datos primitivos
Tipo Descripcion
boolean Tiene dos valores true o false.
char Caracteres Unicode de 16 bits Los caracteres alfa-numéricos son los mismos que los ASCII
www.dariolara.com dariolara@hotmail.com
2
Lógica y Programación Instituto Tecnológico Metropolitano
con el bit alto puesto a 0. El intervalo de valores va desde 0 hasta 65535 (valores de 16-bits
sin signo).
byte Tamaño 8 bits. El intervalo de valores va desde -27 hasta 27 -1 (-128 a 127)
short Tamaño 16 bits. El intervalo de valores va desde -215 hasta 215-1 (-32768 a 32767)
int
Tamaño 32 bits. El intervalo de valores va desde -231 hasta 231-1 (-2147483648 a
2147483647)
long
Tamaño 64 bits. El intervalo de valores va desde -263 hasta 263-1 (-9223372036854775808
a 9223372036854775807)
float
Tamaño 32 bits. Números en coma flotante de simple precisión. Estándar IEEE 754-1985 (de
1.40239846e–45f a 3.40282347e+38f)
double
Tamaño 64 bits. Números en coma flotante de doble precisión. Estándar IEEE 754-1985. (de
4.94065645841246544e–324d a 1.7976931348623157e+308d.)
Los tipos básicos que utilizaremos en la mayor parte de los programas serán boolean, int y double
Caracteres escape ( de rompimiento )
Carácter Secuencia de escape
retorno de carro r
tabulador
horizontal
t
nueva línea n
barra invertida 
Variables booleanas
En el lenguaje Java existe el tipo de dato boolean. Una variable booleana solamente puede guardar uno de
los dos posibles valores: true (verdadero) y false (falso).
boolean encontrado=false; {...} encontrado=true;
Variables enteras
tipos de números enteros (byte, short, int, long),
existe una clase denominada BigInteger , pueden guardar un número entero arbitrariamente grande.
Variables en coma flotante
float a=12.5f;
float b=7f;
double c=7.0;
double d=7d;
En la primera línea 12.5 lleva el sufijo f, ya que por defecto 12.5 es double. En la segunda línea 7 es un
entero y por tanto 7f es un número de tipo float. Y así el resto de los ejemplos.
Valores constantes
Cuando se declara una variable de tipo final,
final double PI=3.141592653589793; final int MAX_DATOS=150;
las constantes de un programa se suelen poner en letras mayúsculas, para distinguirlas de las que no son
constantes
Las cadenas de caracteres o strings
en Java son objetos de la clase String.
String mensaje="El primer programa";
public class PrimeroApp{
public static void main(String[] args) {
//imprime un mensaje
String mensaje="El primer programa";
System.out.println(mensaje);
}
}
Palabras reservadas
Aquellas que el programador no puede utilizar como identificadores
Las palabras reservadas se pueden clasificar en las siguientes categorías:
• Tipos de datos: boolean, float, double, int, char
• Sentencias condicionales: if, else, switch
• Sentencias iterativas: for, do, while, continue
www.dariolara.com dariolara@hotmail.com
3
Lógica y Programación Instituto Tecnológico Metropolitano
• Tratamiento de las excepciones: try, catch, finally, throw
• Estructura de datos: class, interface, implements, extends
• Modificadores y control de acceso: public, private, protected, transient
• Otras: super, null, this.
La sentencia if
if (condición){ sentencia1; sentencia2; }
if(numeroBoleto==numeroSorteo) System.out.println("has obtenido un premio");
if(numeroBoleto==numeroSorteo)
System.out.println("has obtenido un premio");
La sentencia if...else
if (condición){
sentencia1;
sentencia2;
}
else
{
sentencia3;
sentencia4;
sentencia5;
}
Forma especial abreviada
Existe una forma abreviada de escribir una sentencia condicional if...else
en una sola línea
premio=(numeroBoleto==numeroSoreteo) ? 1000 : 0;
Un ejemplo significativo es el siguiente: el signo de un número elevado a una potencia par es positivo, y es
negativo cuando está elevado a una potencia impar.
int signo=(exponente%2==0)?1:-1;
La sentencia switch
Por ejemplo, considérese las siguientes series de sentencias if...else
if(expresion==valor1)
sentencia1;
else if(expresion==valor2)
sentencia2;
else if(expresion==valor3)
sentencia3;
else
sentencia4;
El código resultante puede ser difícil de seguir y confuso incluso para el programador avanzado.
Java proporciona una solución la sentencia condicional switch para agrupar
switch(expresion){
case valor1:
sentencia1;
break; //sale de switch
case valor2:
sentencia2;
break; //sale switch
case valor3:
sentencia3;
break; //sale de switch
default:
sentencia4; }
Ejemplo
public class SwitchApp1 {
public static void main(String[] args) {
int mes=3;
switch (mes) {
case 1: System.out.println("Enero"); break;
www.dariolara.com dariolara@hotmail.com
4
Lógica y Programación Instituto Tecnológico Metropolitano
case 2: System.out.println("Febrero"); break;
case 3: System.out.println("Marzo"); break;
case 4: System.out.println("Abril"); break;
case 5: System.out.println("Mayo"); break;
case 6: System.out.println("Junio"); break;
case 7: System.out.println("Julio"); break;
case 8: System.out.println("Agosto"); break;
case 9: System.out.println("Septiembre"); break;
case 10: System.out.println("Octubre"); break;
case 11: System.out.println("Noviembre"); break;
case 12: System.out.println("Diciembre"); break;
default: System.out.println("Este mes no existe"); break;
}
}
}
La sentencia for
Ejemplo: Escribir un programa que imprima los primeros 10 primeros números enteros empezando
por el cero
for (int i = 0; i < 10; i++) {
System.out.println(i);
}
La sentencia while
Escribir un programa que imprima los primeros 10 primeros números enteros empezando por el cero,
empleando la sentencia iterativa while.
int i=0;
while (i<10) {
System.out.println(i);
i++;
}
La sentencia do...while
Escribir un programa que imprima los primeros 10 primeros números enteros empezando por el cero,
empleando la sentencia iterativa do..while.
int i=0;
do{
System.out.println(i);
i++;
}while(i < 10);
La sentencia break
for(int i = 0; i < 10; i++){ if (i == 8) break; System.out.println(i); } // Concepto de espacios
La sentencia continue
En la siguiente porción de código, se imprimen todos los números del 0 al 9 excepto el número 8.
for(int i = 0; i < 10; i++){
if (i == 8) continue;
System.out.println(i);
}
Etiquetas
Tanto break como continue pueden tener una etiqueta opcional que indica a Java hacia donde dirigirse cuando se
cumple una determinada condición.
salida:
for(int i=0; i<20; i++){ while(j<70){
if(i*j==500) break salida; // Si se cumple la condicion ir a la etiqueta salida:
} }
www.dariolara.com dariolara@hotmail.com
5
Lógica y Programación Instituto Tecnológico Metropolitano
TALLER DE LÓGICA Y PROGRAMACIÓN
Propuesta del Decano
Fray León Osorio
ENUNCIADOS
1. Un entrenador de un equipo de baloncesto desea reclutar personal para su semillero.
Los aspirantes deben cumplir los siguientes requisitos:
• Si es hombre: edad entre 14 y 18 años y estatura superior o igual a 1.80 metros.
• Si es mujer: edad entre 13 y 15 y estatura superior o igual a 1.70 metros.
Se debe mostrar cuantos aspirantes mujer y cuantos hombres fueron inscritos.
No se sabe cuántos aspirantes irán a la convocatoria.
2. Un número binario se obtiene a partir de un número decimal, realizando sucesivas divisiones
por 2 hasta que no se pueda seguir dividiendo (Cuando el resultado de la división da 1). Los
dígitos del número binario respectivo se muestran en el sentido inverso del cálculo y
corresponden a los residuos que siempre serán 1 ó 0 .
3. El valor de una llamada telefónica depende de los siguientes parámetros:
• Valor del minuto
• Duración de la llamada en minutos
• Descuento del 10 % si la llamada es internacional entre las 12:00 y 6:00 PM
Descuento del 5 % si la llamada es nacional entre las 10:00 PM y 9:00 AM
www.dariolara.com dariolara@hotmail.com
6
Lógica y Programación Instituto Tecnológico Metropolitano
TALLER DE LÓGICA Y PROGRAMACIÓN
SOLUCIONES
1. A. Enunciado del problema
Un entrenador de un equipo de baloncesto desea reclutar personal para su semillero.
Los aspirantes deben cumplir los siguientes requisitos:
• Si es hombre: edad entre 14 y 18 años y estatura superior o igual a 1.80 metros.
• Si es mujer: edad entre 13 y 15 y estatura superior o igual a 1.70 metros.
Se debe mostrar cuantos aspirantes mujer y cuantos hombres fueron inscritos.
No se sabe cuántos aspirantes irán a la convocatoria.
B. Solucion en Seudocodigo Analítico
Declaracion de variables
hombresAceptados Es Entero
mujeresAceptadas Es Entero
opcion Es Texto
edad Es Entero
estatura Es Real
Inicializacion de variables
hombresAceptados=0
mujeresAceptadas=0
opcion="s" // Usamos opcion como registro centinela
Cálculos, repeticiones y decisiones
Mientras opción="s"
Lea edad, estatura, sexo
Si edad>=14 Y edad<=18 Y estatura>=1.8 Y sexo="m" entonces
hombresAceptados = hombresAceptados + 1
FinSi
Si edad>=13 Y edad<=15 Y estatura>=1.7 Y sexo="f" entonces
mujeresAceptadas = mujeresAceptadas + 1
FinSi
Lea opcion
FinMientras
Impresión de resultados
Imprima hombresAceptados
Imprima mujeresAceptadas
Final
C. Solucion en Seudocodigo Orientado a Objetos
Clase Publico EquipoBaloncesto
Metodo Principal() Es RetornoVacio
hombresAceptados Es Entero
mujeresAceptadas Es Entero
opcion Es Texto
edad Es Entero
estatura Es Real
hombresAceptados=0
mujeresAceptadas=0
opcion="s"
Mientras opción="s"
Lea edad, estatura, sexo
Si edad>=14 Y edad<=18 Y estatura>=1.8 Y sexo="m" entonces
hombresAceptados = hombresAceptados + 1
FinSi
Si edad>=13 Y edad<=15 Y estatura>=1.7 Y sexo="f" entonces
mujeresAceptadas = mujeresAceptadas + 1
FinSi
Lea opcion
FinMientras
Imprima hombresAceptados
Imprima mujeresAceptadas
FinMetodo
FinClase
www.dariolara.com dariolara@hotmail.com
7
Lógica y Programación Instituto Tecnológico Metropolitano
D. Código en Java
public class EquipoBaloncesto {
public static void main(String[] args) {
int hombresAceptados=0;
int mujeresAceptadas=0;
String opcion="s";
while(opcion.equals("s")) {
//Lectura de la edad y estatura
int edad=LeerVariable.leerEntero("Edad?");
double estatura=LeerVariable.leerReal("Estatura (metros)?");
//lectura del sexo validada (solo acepta "f" o "m")
String sexo="";
while(!sexo.equals("f") && !sexo.equals("m"))
sexo=LeerVariable.leerTexto("Sexo (f/m)?").toLowerCase();
//Es una mujer que califica
if(edad>=14 && edad<=18 && estatura>=1.8 && sexo.equals("m"))
hombresAceptados++;
//Es un hombre que califica
if(edad>=13 && edad<=15 && estatura>=1.7 && sexo.equals("f"))
mujeresAceptadas++;
//lectura de la opción validada (solo acepta si comienza con "s" o "n")
opcion="";
while(!opcion.startsWith("s") && !opcion.startsWith("n"))
opcion=LeerVariable.leerTexto("Desea continuar (s/n)?").toLowerCase();
}
System.out.println("Total de hombres aceptados "+hombresAceptados);
System.out.println("Total de mujeres aceptadas "+mujeresAceptadas);
} }
2. A. Enunciado
Un número binario se obtiene a partir de un número decimal, realizando sucesivas divisiones por 2 hasta que no se
pueda seguir dividiendo (Cuando el resultado de la división da 1). Los dígitos del número binario respectivo se muestran
en el sentido inverso del cálculo y corresponden a los residuos que siempre serán 1 ó 0 .
B. Solucion en Seudocodigo Analítico
Declaracion de variables
decimal Es Entero
cociente Es Entero
digito Es Entero
binario Es Texto
Inicializacion de variables
Lea decimal
Cálculos, repeticiones y decisiones
cociente=decimal
binario=""
Mientras cociente>1
digito = cociente mod 2
cociente = (cociente - digito) / 2
binario = digito + binario
FinMientras
binario = cociente + binario
Impresión der resultados
Imprima binario
Final
C. Solucion en Seudocodigo Orientado a Objetos
Clase Publico DecimalABinario
Metodo Principal() Es RetornoVacio
decimal Es Entero
cociente Es Entero
digito Es Entero
binario Es Texto
Lea decimal
cociente=decimal
binario=""
Mientras cociente>1
digito = cociente mod 2
www.dariolara.com dariolara@hotmail.com
8
Lógica y Programación Instituto Tecnológico Metropolitano
cociente = (cociente - digito) / 2
binario = digito + binario
FinMientras
binario = cociente + binario
Imprima binario
FinMetodo
FinClase
D. Código en Java
public class DecimalABinario {
public static void main(String[] args) {
int decimal=LeerVariable.leerEntero("Numero decimal?");
//El cociente inicia con el valor del número decimal
int cociente=decimal;
//Inicio de la cifra binaria
String binario="";
//Repetir mientras el cociente de dividir por 2 sea mayor a 1
while(cociente>1)
{
//Obtener el residuo de dividir por 2. Este será el dígito binario
int digito=cociente%2;
//Obtener el cociente de la división entera por 2
cociente=(cociente-digito)/2;
//Agregar el dígito binario a la cifra
binario=digito+binario;
}
//Agregar el último cociente para completar la cifra
binario=cociente + binario;
System.out.println("El numero "+decimal+" en binario es "+binario);
}
}
EJERCICIO PARA COMPLETAR
3. El valor de una llamada telefónica depende de los siguientes parámetros:
• Valor del minuto
• Duración de la llamada en minutos
• Descuento del 10 % si la llamada es internacional entre las 12:00 y 6:00 PM
• Descuento del 5 % si la llamada es nacional entre las 10:00 PM y 9:00 AM
GENERAR SEUDOCODIGOS - ANALITICO Y OO
D. Código en Java
//Clase Publico DecimalABinario
public class ValorLlamada {
//Metodo Principal() Es RetornoVacio
public static void main(String args[]) {
Mientras hora <0 O hora >23 entonces
Lea hora
Tipo=0
//Duracion es entero
int duracion=LeerVariable.leerEntero("Duracion (minutos)?");
// ValorMinuto es entero
int valorMinuto=LeerVariable.leerEntero("Valor minuto (pesos)?");
// Hora es entero
// Hora = -1
int hora=-1;
// Mientras hora < 0 O hora > 23 entonces
while(hora<0 || hora>23)
// Lea hora
hora=LeerVariable.leerEntero("Hora [0 1 2 ... 11 12 13 ... 22 23]?");
// tipo = 0
int tipo=0;
// Mientras tipo < 1 O tipo > 2
while(tipo<1 || tipo>2)
// Lea Tipo
www.dariolara.com dariolara@hotmail.com
9
Lógica y Programación Instituto Tecnológico Metropolitano
tipo=LeerVariable.leerEntero("Tipo: [1] Nacional |[2] Internacional?");
int valorLlamada=duracion*valorMinuto;
if(tipo==2 && hora>=12 && hora<=18)
valorLlamada*=0.9;
if(tipo==1 && (hora>=22 || hora<=9))
valorLlamada*=0.95;
System.out.println();
System.out.println("El valor de llamada es $ "+valorLlamada);
}
}
PROBLEMAS PROPUESTOS
OBTENER
1. SEUDOCODIGO ANALITICO
2. SEUDOCODIGO OO
3. CODIGO JAVA
PARA CADA EJERCICIO PROPUESTO
4. Las calificaciones de un curso tienen asignados 4 porcentajes. Se deben leer las calificaciones que obtuvo cada
estudiante del curso y obtener su respectivo promedio basados en los anteriores porcentajes. Indicar el estudiante con
mejor promedio.
5. Dadas las estaturas de un conjunto de personas, calcular el promedio general.
6. Para un conocido número de llamadas se tienen los siguientes datos: Duración en minutos, valor del minuto y tipo de
destino (nacional e internacional). Calcular el valor total de las llamadas por cada tipo.
7. Para la realización de un pentatlón (competencia que consta de 5 pruebas a realizarse en un sólo día: tiro con pistola,
esgrima, natación 200 metros libres, equitación de obstáculos y carrera a campo-traviesa.) se inscriben determinado
número de participantes. De cada uno se obtiene el nombre, el puntaje en cada prueba y el sexo. Calcular
• Pruebas en que dominan las mujeres
• Nombre del ganador de cada prueba
8. En un censo barrial se desea determinar el nivel de escolaridad de sus habitantes. Cada uno de ellos deberá pasar a
decir cuál es su nivel (Primaria, Secundaria, Técnico, Tecnológico, Universitario y Postgrado) en el transcurso del día del
censo. Se conoce con anticipación el total de habitantes pero no el total de los que aportarán la información. Terminado
el día se deberá determinar si existe suficiente muestra para saber el nivel de escolaridad de los habitantes (si el total de
quienes aportaron información supera el 10% de la población total). Realizar el cálculo del nivel de escolaridad si la
muestra es suficiente.
9. Un banco tiene en su portafolio 4 tarjetas de crédito: MasterCard, Visa, Diners Club y American Express. Desea realizar
un proceso para determinar el nivel de uso de cada una y los montos que se manejan.
Para ello por cada cliente se lee que tarjetas tiene y por cada tarjeta, el número total de transacciones en el año y el
monto total por cada uno de los siguientes destinos: Educación, Restaurantes, Eventos y Comercio. Calcular
• La tarjeta que más transacciones presenta
• En cada tarjeta, el destino que mayores montos maneja
10. Una compañía desea evaluar el nivel de satisfacción de los clientes en una región. Para ello realiza una encuesta a un
indeterminado número de personas. En primer lugar se consulta si han adquirido sus productos con base en los
siguientes rangos:
• 0 a 2 productos (peso 15%)
• 2 a 10 productos (peso 40%)
• Más de 10 productos (peso 55%)
Seguido se les pide el nivel de conformidad con base en la siguiente lista:
• Inconforme (0)
• Conforme (1)
• Muy conforme (2)
•
www.dariolara.com dariolara@hotmail.com
10
Lógica y Programación Instituto Tecnológico Metropolitano
11. Las calificaciones de un curso tienen asignados 4 porcentajes. Se deben leer las calificaciones que obtuvo cada
estudiante del curso y obtener su respectivo promedio basados en los anteriores porcentajes. Indicar el estudiante con
mejor promedio.
12. Dadas las estaturas de un conjunto de personas, calcular el promedio general.
13. Para un conocido número de llamadas se tienen los siguientes datos: Duración en minutos, valor del minuto y tipo de
destino (nacional e internacional). Calcular el valor total de las llamadas por cada tipo.
14. Para la realización de un pentatlón (competencia que consta de 5 pruebas a realizarse en un sólo día: tiro con pistola,
esgrima, natación 200 metros libres, equitación de obstáculos y carrera a campo-traviesa.) se inscriben determinado
número de participantes. De cada uno se obtiene el nombre, el puntaje en cada prueba y el sexo. Calcular
• Pruebas en que dominan las mujeres
• Nombre del ganador de cada prueba
15. En un censo barrial se desea determinar el nivel de escolaridad de sus habitantes. Cada uno de ellos deberá pasar a
decir cuál es su nivel (Primaria, Secundaria, Técnico, Tecnológico, Universitario y Postgrado) en el transcurso del día del
censo. Se conoce con anticipación el total de habitantes pero no el total de los que aportarán la información. Terminado
el día se deberá determinar si existe suficiente muestra para saber el nivel de escolaridad de los habitantes (si el total de
quienes aportaron información supera el 10% de la población total). Realizar el cálculo del nivel de escolaridad si la
muestra es suficiente.
16. Un banco tiene en su portafolio 4 tarjetas de crédito: MasterCard, Visa, Diners Club y American Express. Desea realizar
un proceso para determinar el nivel de uso de cada una y los montos que se manejan.
Para ello por cada cliente se lee que tarjetas tiene y por cada tarjeta, el número total de transacciones en el año y el
monto total por cada uno de los siguientes destinos: Educación, Restaurantes, Eventos y Comercio. Calcular
• La tarjeta que más transacciones presenta
• En cada tarjeta, el destino que mayores montos maneja
17. Una compañía desea evaluar el nivel de satisfacción de los clientes en una región. Para ello realiza una encuesta a un
indeterminado número de personas. En primer lugar se consulta si han adquirido sus productos con base en los
siguientes rangos:
• 0 a 2 productos (peso 15%)
• 2 a 10 productos (peso 40%)
• Más de 10 productos (peso 55%)
Seguido se les pide el nivel de conformidad con base en la siguiente lista:
• Inconforme (0)
• Conforme (1)
• Muy conforme (2)
El nivel de satisfacción general se calcula totalizando los niveles elegidos en cada rango para hallar el de mayor
preferencia. Luego se multiplica cada nivel elegido por el respectivo peso. La suma de estas multiplicaciones define el
nivel de conformidad (se debe hacer un redondeo).
18. A un trabajador le pagan segun sus horas y una tarifa de pago por horas. si la cantidad de horas trabajadas es mayor a
40 horas. La tarifa se incrementa en un 50% para las horas extras. calcular el salario del trabajador dadas las horas
trabajadas y la tarifa.
Seudocodigo analitico tradicional
variables: horas_trabajadas,tarifa,horas_extras,salario,tarifa_e
inicio
leer: horas_trabajadas,tarifa
si: horas_trabajadas <= 40 entonces
salario <-- horas_trabajadas * tarifa
si_no
tarifa_extra <-- tarifa + 0.50 * tarifa
horas_extras <-- horas_trabajadas - 40
salario <-- horas_extras * tarifa_extra + 40 *
tarifa
fin_si
imprimir: salario.
www.dariolara.com dariolara@hotmail.com
11
Lógica y Programación Instituto Tecnológico Metropolitano
fin
19. A un trabajador le descuentan de su sueldo el 10% si su sueldo es menor o igual a 1000. por encima de 1000 y hasta
2000 el 5% del adicional, y por encima de 2000 el 3% del adicional. calcular el descuento y sueldo neto que recibe el
trabajador dado su sueldo.
Seudocodigo analitico tradicional
variables: sueldo,sueldo_neto,descuento
inicio
leer: sueldo
si: sueldo <= 1000 entonces
descuento <-- sueldo * 0.1
si_no
si: sueldo <= 2000 entonces
descuento <-- (sueldo - 1000) * 0.05 + 1000 * 0.1
si_no
descuento <-- (sueldo - 2000) * 0.03 + 1000 * 0.1
fin_si
imprimir: descuento.
fin
20. Dado un monto calcular el descuento considerando que por encima de 100 el descuento es el 10% y por debajo de 100
el descuento es el 2%.
Seudocodigo analitico tradicional
variables: monto,descuento
inicio
leer: monto
si: monto > 100 entonces
descuento <-- monto * 10 / 100
si_no
descuento <-- monto * 2 / 100
fin_si
imprimir: monto, descuento
fin
21. Dado un tiempo en segundos, calcular los segundos restantes que le correspondan para convertirse exactamente en
minutos.
Seudocodigo analitico tradicional
variables: tiempo_seg,minutos,segundos
inicio
leer: tiempo_seg
si minutos <-- tiempo_seg div 60 entonces
segundos <-- tiempo_seg mod 60
fin_si
imprimir: minutos,segundos.
fin
22. Dado un tiempo en minutos, calcular los dias, horas y minutos que le corresponden.
Seudocodigo analitico tradicional
variables: tiempo,dias,horas,minutos
inicio
leer: tiempo
si: dias <-- tiempo div 1440
x <-- tiempo mod 1440
horas <-- x div 60
minutos <-- x mod 60
imprimir: dias,minutos,horas
fin_si
fin
OJO: <-- esto es una asignacion
www.dariolara.com dariolara@hotmail.com
12

Más contenido relacionado

La actualidad más candente

Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
Unidad 03 variables, constantes y operadores
Unidad 03   variables, constantes y operadoresUnidad 03   variables, constantes y operadores
Unidad 03 variables, constantes y operadoresLorenzo Alejo
 
Tema 2 tipos de datos y expresiones en java por gio
Tema 2   tipos de datos y expresiones en java por gioTema 2   tipos de datos y expresiones en java por gio
Tema 2 tipos de datos y expresiones en java por gioRobert Wolf
 
Variables y Constantes en C++
Variables y Constantes en C++Variables y Constantes en C++
Variables y Constantes en C++ivanjvic
 
Constante y variable
Constante y variableConstante y variable
Constante y variableAnthony Vera
 
Variables, Constantes y Tipos de datos en C
Variables, Constantes y Tipos de datos en CVariables, Constantes y Tipos de datos en C
Variables, Constantes y Tipos de datos en CMarvin Romero
 
Sintaxis en java
Sintaxis en javaSintaxis en java
Sintaxis en javapbcanessa
 
Variables y constantes
Variables y constantesVariables y constantes
Variables y constantesRonny Ure
 
3.2.- Identificadores, Variables y Constantes
3.2.- Identificadores, Variables y Constantes3.2.- Identificadores, Variables y Constantes
3.2.- Identificadores, Variables y ConstantesYenny Salazar
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programaciónnormaroldano
 
Introduccion Java
Introduccion JavaIntroduccion Java
Introduccion Javasvhurtado
 
Estructuras control java-
Estructuras control java-Estructuras control java-
Estructuras control java-SENA
 
Sintaxis Básica de Java
Sintaxis Básica de JavaSintaxis Básica de Java
Sintaxis Básica de JavaRay
 
Estructura general de un programa (Funciones Internas)
Estructura general de un programa (Funciones Internas) Estructura general de un programa (Funciones Internas)
Estructura general de un programa (Funciones Internas) Oswaldo Carlosama
 
Operadores y Expresiones
Operadores y ExpresionesOperadores y Expresiones
Operadores y ExpresionesCarlos Pes
 

La actualidad más candente (20)

Introduccion c
Introduccion cIntroduccion c
Introduccion c
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Unidad 03 variables, constantes y operadores
Unidad 03   variables, constantes y operadoresUnidad 03   variables, constantes y operadores
Unidad 03 variables, constantes y operadores
 
Tema 2 tipos de datos y expresiones en java por gio
Tema 2   tipos de datos y expresiones en java por gioTema 2   tipos de datos y expresiones en java por gio
Tema 2 tipos de datos y expresiones en java por gio
 
Variables y Constantes en C++
Variables y Constantes en C++Variables y Constantes en C++
Variables y Constantes en C++
 
Constante y variable
Constante y variableConstante y variable
Constante y variable
 
Variables, Constantes y Tipos de datos en C
Variables, Constantes y Tipos de datos en CVariables, Constantes y Tipos de datos en C
Variables, Constantes y Tipos de datos en C
 
Sintaxis en java
Sintaxis en javaSintaxis en java
Sintaxis en java
 
Elementos de programacion t1
Elementos de programacion t1Elementos de programacion t1
Elementos de programacion t1
 
Variables y constantes
Variables y constantesVariables y constantes
Variables y constantes
 
3.2.- Identificadores, Variables y Constantes
3.2.- Identificadores, Variables y Constantes3.2.- Identificadores, Variables y Constantes
3.2.- Identificadores, Variables y Constantes
 
Elemento1
Elemento1Elemento1
Elemento1
 
Transparencias4
Transparencias4Transparencias4
Transparencias4
 
Identificadores en Lógia de Programación
Identificadores en Lógia de ProgramaciónIdentificadores en Lógia de Programación
Identificadores en Lógia de Programación
 
Introduccion Java
Introduccion JavaIntroduccion Java
Introduccion Java
 
C# Diferencias
C# DiferenciasC# Diferencias
C# Diferencias
 
Estructuras control java-
Estructuras control java-Estructuras control java-
Estructuras control java-
 
Sintaxis Básica de Java
Sintaxis Básica de JavaSintaxis Básica de Java
Sintaxis Básica de Java
 
Estructura general de un programa (Funciones Internas)
Estructura general de un programa (Funciones Internas) Estructura general de un programa (Funciones Internas)
Estructura general de un programa (Funciones Internas)
 
Operadores y Expresiones
Operadores y ExpresionesOperadores y Expresiones
Operadores y Expresiones
 

Destacado

Ejercicio de programación en java Club futbool
Ejercicio de programación en java Club futboolEjercicio de programación en java Club futbool
Ejercicio de programación en java Club futboolManuel Fco
 
Sistemas numericos
Sistemas numericosSistemas numericos
Sistemas numericosOmar Sanchez
 
Casos Uso Ejercicios en java
Casos Uso Ejercicios en javaCasos Uso Ejercicios en java
Casos Uso Ejercicios en javajent46
 
Proyecto pasaje al instanste.v (7)
Proyecto pasaje al instanste.v (7)Proyecto pasaje al instanste.v (7)
Proyecto pasaje al instanste.v (7)Tory Ventura Choque
 
Programacion de SQL y MySQL
Programacion de SQL y MySQLProgramacion de SQL y MySQL
Programacion de SQL y MySQLhuritomo1998
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysqlI LG
 
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+Victor Aravena
 
Curso TIC de PHP y MSQL Parte 2
Curso TIC de PHP y MSQL Parte 2Curso TIC de PHP y MSQL Parte 2
Curso TIC de PHP y MSQL Parte 2Wilian
 
Curso TIC de PHP y MSQL
Curso TIC de PHP y MSQLCurso TIC de PHP y MSQL
Curso TIC de PHP y MSQLWilian
 
desarrolo de sitios web php y mysql
desarrolo de sitios web php y mysqldesarrolo de sitios web php y mysql
desarrolo de sitios web php y mysqlJuan Timoteo Cori
 
Guardar en base de datos MySQL desde HTML con PHP.
Guardar en base de datos MySQL desde HTML con PHP.Guardar en base de datos MySQL desde HTML con PHP.
Guardar en base de datos MySQL desde HTML con PHP.yanburbano
 

Destacado (20)

Ejercicio de programación en java Club futbool
Ejercicio de programación en java Club futboolEjercicio de programación en java Club futbool
Ejercicio de programación en java Club futbool
 
Sistemas numericos
Sistemas numericosSistemas numericos
Sistemas numericos
 
Casos Uso Ejercicios en java
Casos Uso Ejercicios en javaCasos Uso Ejercicios en java
Casos Uso Ejercicios en java
 
Proyecto pasaje al instanste.v (7)
Proyecto pasaje al instanste.v (7)Proyecto pasaje al instanste.v (7)
Proyecto pasaje al instanste.v (7)
 
Mysql
MysqlMysql
Mysql
 
Programacion de SQL y MySQL
Programacion de SQL y MySQLProgramacion de SQL y MySQL
Programacion de SQL y MySQL
 
PHP MySql FIEI - UNFV Clase05
PHP MySql FIEI - UNFV Clase05PHP MySql FIEI - UNFV Clase05
PHP MySql FIEI - UNFV Clase05
 
PHP MySql - FIEI - UNFVClase06
PHP MySql - FIEI - UNFVClase06PHP MySql - FIEI - UNFVClase06
PHP MySql - FIEI - UNFVClase06
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysql
 
PPH MySql - FIEI - UNFV Clase02
PPH MySql - FIEI - UNFV Clase02PPH MySql - FIEI - UNFV Clase02
PPH MySql - FIEI - UNFV Clase02
 
PHP MySql - FIEI - UNFV Clase07
PHP MySql - FIEI - UNFV Clase07PHP MySql - FIEI - UNFV Clase07
PHP MySql - FIEI - UNFV Clase07
 
PHP MYSQL - FIEI-UNFV Clase 01
PHP MYSQL - FIEI-UNFV Clase 01PHP MYSQL - FIEI-UNFV Clase 01
PHP MYSQL - FIEI-UNFV Clase 01
 
PHP MySql - FIEI - UNFV Clase03
PHP MySql - FIEI - UNFV Clase03PHP MySql - FIEI - UNFV Clase03
PHP MySql - FIEI - UNFV Clase03
 
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+
Insertar Elemento de Contenido PHP en Typo3 6.0+ 6.2+
 
Curso TIC de PHP y MSQL Parte 2
Curso TIC de PHP y MSQL Parte 2Curso TIC de PHP y MSQL Parte 2
Curso TIC de PHP y MSQL Parte 2
 
PHP Y MYSQL
PHP Y MYSQLPHP Y MYSQL
PHP Y MYSQL
 
Curso TIC de PHP y MSQL
Curso TIC de PHP y MSQLCurso TIC de PHP y MSQL
Curso TIC de PHP y MSQL
 
desarrolo de sitios web php y mysql
desarrolo de sitios web php y mysqldesarrolo de sitios web php y mysql
desarrolo de sitios web php y mysql
 
Php.y.my sql
Php.y.my sqlPhp.y.my sql
Php.y.my sql
 
Guardar en base de datos MySQL desde HTML con PHP.
Guardar en base de datos MySQL desde HTML con PHP.Guardar en base de datos MySQL desde HTML con PHP.
Guardar en base de datos MySQL desde HTML con PHP.
 

Similar a 2685008 taller-java

Lenguaje latino
Lenguaje latinoLenguaje latino
Lenguaje latinoReneSergio
 
Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015Renny Batista
 
Programacion en java_inicio apeuntes para ems
Programacion en java_inicio apeuntes para emsProgramacion en java_inicio apeuntes para ems
Programacion en java_inicio apeuntes para emsCBTis
 
tutorial y Guia de fundamentos drscheme
tutorial y Guia de fundamentos drschemetutorial y Guia de fundamentos drscheme
tutorial y Guia de fundamentos drschemeHospital de Yumbo
 
Apuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cApuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cZalimanunezc
 
Javacript: expresiones e instrucciones
Javacript: expresiones e instruccionesJavacript: expresiones e instrucciones
Javacript: expresiones e instruccionesjcremiro
 
Tipos de dato y expresiones en C++
Tipos de dato y expresiones en C++Tipos de dato y expresiones en C++
Tipos de dato y expresiones en C++Obmaro García
 
Capítulo ii elementos java
Capítulo ii elementos javaCapítulo ii elementos java
Capítulo ii elementos javasaimaga30
 
Fundamentos de programacion en java
Fundamentos de programacion en javaFundamentos de programacion en java
Fundamentos de programacion en javaJefferson Sarmiento
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxxMar15marian
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxxMar15marian
 
Clase lenguaje c
Clase lenguaje c Clase lenguaje c
Clase lenguaje c Mar15marian
 
ESTRUCTURA DE CONTROLYoselyn garcia trabajo
ESTRUCTURA DE CONTROLYoselyn garcia trabajoESTRUCTURA DE CONTROLYoselyn garcia trabajo
ESTRUCTURA DE CONTROLYoselyn garcia trabajoDANNYOSE
 
UT2. Elementos básicos de programación en Java.pdf
UT2. Elementos básicos de programación en Java.pdfUT2. Elementos básicos de programación en Java.pdf
UT2. Elementos básicos de programación en Java.pdfcRSt6
 

Similar a 2685008 taller-java (20)

Lenguaje latino
Lenguaje latinoLenguaje latino
Lenguaje latino
 
Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015Java - Sintaxis Básica 2015
Java - Sintaxis Básica 2015
 
Programacion en java_inicio apeuntes para ems
Programacion en java_inicio apeuntes para emsProgramacion en java_inicio apeuntes para ems
Programacion en java_inicio apeuntes para ems
 
tutorial y Guia de fundamentos drscheme
tutorial y Guia de fundamentos drschemetutorial y Guia de fundamentos drscheme
tutorial y Guia de fundamentos drscheme
 
tutorial de drscheme
tutorial de drscheme tutorial de drscheme
tutorial de drscheme
 
Apuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cApuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje c
 
Tutorial pseudocodigo11
Tutorial pseudocodigo11Tutorial pseudocodigo11
Tutorial pseudocodigo11
 
Progra
PrograProgra
Progra
 
Actividad N° 7 - Unidad 4
Actividad N° 7 - Unidad 4 Actividad N° 7 - Unidad 4
Actividad N° 7 - Unidad 4
 
Javacript: expresiones e instrucciones
Javacript: expresiones e instruccionesJavacript: expresiones e instrucciones
Javacript: expresiones e instrucciones
 
Tipos de dato y expresiones en C++
Tipos de dato y expresiones en C++Tipos de dato y expresiones en C++
Tipos de dato y expresiones en C++
 
Capítulo ii elementos java
Capítulo ii elementos javaCapítulo ii elementos java
Capítulo ii elementos java
 
Introduccions a java
Introduccions a javaIntroduccions a java
Introduccions a java
 
Fundamentos de programacion en java
Fundamentos de programacion en javaFundamentos de programacion en java
Fundamentos de programacion en java
 
PHP
PHPPHP
PHP
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
 
Clase lenguaje c xxxxxx
Clase lenguaje c xxxxxxClase lenguaje c xxxxxx
Clase lenguaje c xxxxxx
 
Clase lenguaje c
Clase lenguaje c Clase lenguaje c
Clase lenguaje c
 
ESTRUCTURA DE CONTROLYoselyn garcia trabajo
ESTRUCTURA DE CONTROLYoselyn garcia trabajoESTRUCTURA DE CONTROLYoselyn garcia trabajo
ESTRUCTURA DE CONTROLYoselyn garcia trabajo
 
UT2. Elementos básicos de programación en Java.pdf
UT2. Elementos básicos de programación en Java.pdfUT2. Elementos básicos de programación en Java.pdf
UT2. Elementos básicos de programación en Java.pdf
 

Último

PARTES y Anatomía de la ESCÁPULA.descrpcion, fncinalidad
PARTES y Anatomía de la ESCÁPULA.descrpcion, fncinalidadPARTES y Anatomía de la ESCÁPULA.descrpcion, fncinalidad
PARTES y Anatomía de la ESCÁPULA.descrpcion, fncinalidadeumartinezvete
 
Irrigacion e Inervacion de la articulación mandibular
Irrigacion e Inervacion de la articulación mandibularIrrigacion e Inervacion de la articulación mandibular
Irrigacion e Inervacion de la articulación mandibularAdrinCrdenas9
 
AA. VV. - Historia mínima del Confucianismo [2021].pdf
AA. VV. - Historia mínima del Confucianismo [2021].pdfAA. VV. - Historia mínima del Confucianismo [2021].pdf
AA. VV. - Historia mínima del Confucianismo [2021].pdffrank0071
 
Virus del dengue perú 2024 diagnostico,manejo,
Virus del dengue perú 2024 diagnostico,manejo,Virus del dengue perú 2024 diagnostico,manejo,
Virus del dengue perú 2024 diagnostico,manejo,KiaraIbaezParedes
 
CUADERNILLO DE RESPUESTAS DEL TEST DE BOSTON FORMATO ABREVIADO
CUADERNILLO DE RESPUESTAS DEL TEST DE BOSTON FORMATO ABREVIADOCUADERNILLO DE RESPUESTAS DEL TEST DE BOSTON FORMATO ABREVIADO
CUADERNILLO DE RESPUESTAS DEL TEST DE BOSTON FORMATO ABREVIADOCONSTANZAALEJANDRAMU3
 
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdfTEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdfrobertocarlosbaltaza
 
Dupey & Pinzón (coords.) - De olfato. Aproximaciones a los olores en la histo...
Dupey & Pinzón (coords.) - De olfato. Aproximaciones a los olores en la histo...Dupey & Pinzón (coords.) - De olfato. Aproximaciones a los olores en la histo...
Dupey & Pinzón (coords.) - De olfato. Aproximaciones a los olores en la histo...frank0071
 
Mapa conceptual de la Cristalografía .pdf
Mapa conceptual de la Cristalografía .pdfMapa conceptual de la Cristalografía .pdf
Mapa conceptual de la Cristalografía .pdfHeidyYamileth
 
DIAPOSITIVAS - PARASITOSIS intestibal .pptx
DIAPOSITIVAS - PARASITOSIS intestibal .pptxDIAPOSITIVAS - PARASITOSIS intestibal .pptx
DIAPOSITIVAS - PARASITOSIS intestibal .pptxGermnIsaccPazmio
 
¿QUÉ ES UN Eclipse solar? Y TODO LO QUE DEBE DE SABER
¿QUÉ ES UN Eclipse solar? Y TODO LO QUE DEBE DE SABER¿QUÉ ES UN Eclipse solar? Y TODO LO QUE DEBE DE SABER
¿QUÉ ES UN Eclipse solar? Y TODO LO QUE DEBE DE SABERGloriaLucreciaPascac
 
Urgencias y emergencias cardiovasculares.pptx
Urgencias y emergencias cardiovasculares.pptxUrgencias y emergencias cardiovasculares.pptx
Urgencias y emergencias cardiovasculares.pptxCarlosEncarnacin3
 
REVISTA DE BIOLOGIA E CIÊNCIAS DA TERRA ISSN 1519-5228 - Artigo_Bioterra_V24_...
REVISTA DE BIOLOGIA E CIÊNCIAS DA TERRA ISSN 1519-5228 - Artigo_Bioterra_V24_...REVISTA DE BIOLOGIA E CIÊNCIAS DA TERRA ISSN 1519-5228 - Artigo_Bioterra_V24_...
REVISTA DE BIOLOGIA E CIÊNCIAS DA TERRA ISSN 1519-5228 - Artigo_Bioterra_V24_...Universidade Federal de Sergipe - UFS
 
fisilogia y anatomia del oido y el equilibrio
fisilogia y anatomia del oido y el equilibriofisilogia y anatomia del oido y el equilibrio
fisilogia y anatomia del oido y el equilibrioyanezevelyn0
 
Descubrimiento de la Penicilina y su uso en la seguna guerra mundial.pdf
Descubrimiento de la Penicilina y su uso en la seguna guerra mundial.pdfDescubrimiento de la Penicilina y su uso en la seguna guerra mundial.pdf
Descubrimiento de la Penicilina y su uso en la seguna guerra mundial.pdfjavisoad
 
Tortosa et al. 2º Simposio Internacional Composta.pdf
Tortosa et al. 2º Simposio Internacional Composta.pdfTortosa et al. 2º Simposio Internacional Composta.pdf
Tortosa et al. 2º Simposio Internacional Composta.pdfGermán Tortosa
 
INTRODUCCIÓN A LAS CIENCIAS SOCIALES.pdf
INTRODUCCIÓN A LAS CIENCIAS SOCIALES.pdfINTRODUCCIÓN A LAS CIENCIAS SOCIALES.pdf
INTRODUCCIÓN A LAS CIENCIAS SOCIALES.pdfelsithakookmin
 
propiedades y clasificacion de los materiales metalicos
propiedades y clasificacion de los materiales metalicospropiedades y clasificacion de los materiales metalicos
propiedades y clasificacion de los materiales metalicosOmarazahiSalinasLpez
 
CLASE 2- INFECCIONES nosocomialescesalud.pptx
CLASE 2- INFECCIONES nosocomialescesalud.pptxCLASE 2- INFECCIONES nosocomialescesalud.pptx
CLASE 2- INFECCIONES nosocomialescesalud.pptxLuisaPerdomo16
 
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptxCEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptxfranciscofernandez106395
 
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdfINTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdfGuillermoCamino4
 

Último (20)

PARTES y Anatomía de la ESCÁPULA.descrpcion, fncinalidad
PARTES y Anatomía de la ESCÁPULA.descrpcion, fncinalidadPARTES y Anatomía de la ESCÁPULA.descrpcion, fncinalidad
PARTES y Anatomía de la ESCÁPULA.descrpcion, fncinalidad
 
Irrigacion e Inervacion de la articulación mandibular
Irrigacion e Inervacion de la articulación mandibularIrrigacion e Inervacion de la articulación mandibular
Irrigacion e Inervacion de la articulación mandibular
 
AA. VV. - Historia mínima del Confucianismo [2021].pdf
AA. VV. - Historia mínima del Confucianismo [2021].pdfAA. VV. - Historia mínima del Confucianismo [2021].pdf
AA. VV. - Historia mínima del Confucianismo [2021].pdf
 
Virus del dengue perú 2024 diagnostico,manejo,
Virus del dengue perú 2024 diagnostico,manejo,Virus del dengue perú 2024 diagnostico,manejo,
Virus del dengue perú 2024 diagnostico,manejo,
 
CUADERNILLO DE RESPUESTAS DEL TEST DE BOSTON FORMATO ABREVIADO
CUADERNILLO DE RESPUESTAS DEL TEST DE BOSTON FORMATO ABREVIADOCUADERNILLO DE RESPUESTAS DEL TEST DE BOSTON FORMATO ABREVIADO
CUADERNILLO DE RESPUESTAS DEL TEST DE BOSTON FORMATO ABREVIADO
 
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdfTEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
TEMA 4 TEORIAS SOBRE EL ORIGEN DE LA VIDA.pdf
 
Dupey & Pinzón (coords.) - De olfato. Aproximaciones a los olores en la histo...
Dupey & Pinzón (coords.) - De olfato. Aproximaciones a los olores en la histo...Dupey & Pinzón (coords.) - De olfato. Aproximaciones a los olores en la histo...
Dupey & Pinzón (coords.) - De olfato. Aproximaciones a los olores en la histo...
 
Mapa conceptual de la Cristalografía .pdf
Mapa conceptual de la Cristalografía .pdfMapa conceptual de la Cristalografía .pdf
Mapa conceptual de la Cristalografía .pdf
 
DIAPOSITIVAS - PARASITOSIS intestibal .pptx
DIAPOSITIVAS - PARASITOSIS intestibal .pptxDIAPOSITIVAS - PARASITOSIS intestibal .pptx
DIAPOSITIVAS - PARASITOSIS intestibal .pptx
 
¿QUÉ ES UN Eclipse solar? Y TODO LO QUE DEBE DE SABER
¿QUÉ ES UN Eclipse solar? Y TODO LO QUE DEBE DE SABER¿QUÉ ES UN Eclipse solar? Y TODO LO QUE DEBE DE SABER
¿QUÉ ES UN Eclipse solar? Y TODO LO QUE DEBE DE SABER
 
Urgencias y emergencias cardiovasculares.pptx
Urgencias y emergencias cardiovasculares.pptxUrgencias y emergencias cardiovasculares.pptx
Urgencias y emergencias cardiovasculares.pptx
 
REVISTA DE BIOLOGIA E CIÊNCIAS DA TERRA ISSN 1519-5228 - Artigo_Bioterra_V24_...
REVISTA DE BIOLOGIA E CIÊNCIAS DA TERRA ISSN 1519-5228 - Artigo_Bioterra_V24_...REVISTA DE BIOLOGIA E CIÊNCIAS DA TERRA ISSN 1519-5228 - Artigo_Bioterra_V24_...
REVISTA DE BIOLOGIA E CIÊNCIAS DA TERRA ISSN 1519-5228 - Artigo_Bioterra_V24_...
 
fisilogia y anatomia del oido y el equilibrio
fisilogia y anatomia del oido y el equilibriofisilogia y anatomia del oido y el equilibrio
fisilogia y anatomia del oido y el equilibrio
 
Descubrimiento de la Penicilina y su uso en la seguna guerra mundial.pdf
Descubrimiento de la Penicilina y su uso en la seguna guerra mundial.pdfDescubrimiento de la Penicilina y su uso en la seguna guerra mundial.pdf
Descubrimiento de la Penicilina y su uso en la seguna guerra mundial.pdf
 
Tortosa et al. 2º Simposio Internacional Composta.pdf
Tortosa et al. 2º Simposio Internacional Composta.pdfTortosa et al. 2º Simposio Internacional Composta.pdf
Tortosa et al. 2º Simposio Internacional Composta.pdf
 
INTRODUCCIÓN A LAS CIENCIAS SOCIALES.pdf
INTRODUCCIÓN A LAS CIENCIAS SOCIALES.pdfINTRODUCCIÓN A LAS CIENCIAS SOCIALES.pdf
INTRODUCCIÓN A LAS CIENCIAS SOCIALES.pdf
 
propiedades y clasificacion de los materiales metalicos
propiedades y clasificacion de los materiales metalicospropiedades y clasificacion de los materiales metalicos
propiedades y clasificacion de los materiales metalicos
 
CLASE 2- INFECCIONES nosocomialescesalud.pptx
CLASE 2- INFECCIONES nosocomialescesalud.pptxCLASE 2- INFECCIONES nosocomialescesalud.pptx
CLASE 2- INFECCIONES nosocomialescesalud.pptx
 
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptxCEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
CEREBRO Y CONDUCTA ESPECIALIDAD GM_091358.pptx
 
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdfINTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
INTRODUCCIÓN A LAS DISPENSACIONES abril 2024.pdf
 

2685008 taller-java

  • 1. Lógica y Programación Instituto Tecnológico Metropolitano Taller facil 1 CONCEPTOS DE JAVA Registros basicos 1. Registro contador A = A + 1 2. Registro acumulador A = A + B 3. Registro centinela Si Opcion = Valor Entonces Pare Concepto de los espacios En Java las instrucciones terminan en ; y pueden ser escritas en cualquier orden que conserve los espacios, respetando los comentarios de una linea public class PrimerApp{ public static void main(String[] args) { //imprime un mensaje String mensaje="El primer programa"; System.out.println(mensaje); } } Identificadores Un nombre que identifica a una variable, a un método o función miembro, o a una clase Comentarios 1. Comentarios en una sola línea // Este es un comentario de linea 2. Comentarios de varias líneas los programadores diseñan comentarios como el siguiente: /*----------------------------------------| | (C) Dario Lara Zapata | | fecha: Marzo 1999 | | programa: PrimerApp.java | |----------------------------------------*/ 3. Comentarios de documentación // Usan Javadoc.exe para generar la documentación con los comentarios Operadores La precedencia de operadores El lector conocerá que los operadores aritméticos tienen distinta precedencia (raiz, exp, /, *, +, -), así la expresión a+b*c es equivalente a a+(b*c) Para realizar la operación scribiremos a/(b*c); o bien, a/b/c; Operadores aritmeticos Java tiene cinco operadores aritméticos cuyo significado se muestra en la tabla adjunta Operador Nombre Ejemplo + Suma 3+4 - Diferencia 3-4 * Producto 3*4 / Cociente 20/7 % Módulo 20%7 Operador asignación El operador asignación se puede combinar con los operadores aritméticos Expresión Significado x+=y x=x+y x-=y x=x-y x*=y x=x*y x/=y x=x/y Así, la sentencia X = x + 23; evalúa la expresión x+23, que es asignada de nuevo a x. El compilador lee primero el contenido de la porción de memoria nombrada x, realiza la suma, y guarda el resultado en la misma porción de memoria. Se puede escribir la sentencia anterior de una forma equivalente más simple www.dariolara.com dariolara@hotmail.com 1
  • 2. Lógica y Programación Instituto Tecnológico Metropolitano x+=23; Los operadores relacionales Operador nombre ejemplo significado < menor que a<b a es menor que b > mayor que a>b a es mayor que b == igual a a==b a es igual a b != no igual a a!=b a no es igual a b <= menor que o igual a a<=5 a es menor que o igual a b >= mayor que o igual a a>=b a es menor que o igual a b Las asignaciones se realizan con el símbolo =, las comparaciones con ==. Los operadores lógicos Los operadores lógicos son: • && AND (el resultado es verdadero si ambas expresiones son verdaderas) • || OR (el resultado es verdadero si alguna expresión es verdadera) • ! NOT (el resultado invierte la condición de la expresión) La expresión "NO a es igual a b" !(a==b) es verdadera si a es distinto de b, y es falsa si a es igual a b. Esta expresión es equivalente a (a!=b) Concatenación de strings En Java se usa el operador + para concatenar cadenas de carcateres o strings System.out.println("la temperatura centígrada es "+C); La conversión automática y promoción (casting) Cuando se realiza una operación, si un operando es entero (int) y el otro es de coma flotante (double) el resultado es en coma flotante (double). int a=5; double b=3.2; double suma=a+b; Los operadores unarios son: • ++ Incremento • -- Decremento actúan sobre un único operando. Se trata de uno de los aspecto más confusos para el programador, ya que el resultado de la operación depende de que el operador esté a la derecha i++ o a la izquierda ++i. i=i+1; //añadir 1 a i i++; i=i-1; //restar 1 a i i--; A la derecha j=i++; asigna a j, el valor que tenía i. Por ejemplo, si i valía 3, después de ejecutar la sentencia, j toma el valor de 3 e i el valor de 4. Lo que es equivalente a las dos sentencias j=i; i++; A la izquierda j=++i; asigna a j el valor incrementado de i. Por ejemplo, si i valía 3, después de ejecutar la sentencia j e i toman el valor de 4. Lo que es equivalente a las dos sentencias ++i; j=i; Tipos de datos primitivos Tipo Descripcion boolean Tiene dos valores true o false. char Caracteres Unicode de 16 bits Los caracteres alfa-numéricos son los mismos que los ASCII www.dariolara.com dariolara@hotmail.com 2
  • 3. Lógica y Programación Instituto Tecnológico Metropolitano con el bit alto puesto a 0. El intervalo de valores va desde 0 hasta 65535 (valores de 16-bits sin signo). byte Tamaño 8 bits. El intervalo de valores va desde -27 hasta 27 -1 (-128 a 127) short Tamaño 16 bits. El intervalo de valores va desde -215 hasta 215-1 (-32768 a 32767) int Tamaño 32 bits. El intervalo de valores va desde -231 hasta 231-1 (-2147483648 a 2147483647) long Tamaño 64 bits. El intervalo de valores va desde -263 hasta 263-1 (-9223372036854775808 a 9223372036854775807) float Tamaño 32 bits. Números en coma flotante de simple precisión. Estándar IEEE 754-1985 (de 1.40239846e–45f a 3.40282347e+38f) double Tamaño 64 bits. Números en coma flotante de doble precisión. Estándar IEEE 754-1985. (de 4.94065645841246544e–324d a 1.7976931348623157e+308d.) Los tipos básicos que utilizaremos en la mayor parte de los programas serán boolean, int y double Caracteres escape ( de rompimiento ) Carácter Secuencia de escape retorno de carro r tabulador horizontal t nueva línea n barra invertida Variables booleanas En el lenguaje Java existe el tipo de dato boolean. Una variable booleana solamente puede guardar uno de los dos posibles valores: true (verdadero) y false (falso). boolean encontrado=false; {...} encontrado=true; Variables enteras tipos de números enteros (byte, short, int, long), existe una clase denominada BigInteger , pueden guardar un número entero arbitrariamente grande. Variables en coma flotante float a=12.5f; float b=7f; double c=7.0; double d=7d; En la primera línea 12.5 lleva el sufijo f, ya que por defecto 12.5 es double. En la segunda línea 7 es un entero y por tanto 7f es un número de tipo float. Y así el resto de los ejemplos. Valores constantes Cuando se declara una variable de tipo final, final double PI=3.141592653589793; final int MAX_DATOS=150; las constantes de un programa se suelen poner en letras mayúsculas, para distinguirlas de las que no son constantes Las cadenas de caracteres o strings en Java son objetos de la clase String. String mensaje="El primer programa"; public class PrimeroApp{ public static void main(String[] args) { //imprime un mensaje String mensaje="El primer programa"; System.out.println(mensaje); } } Palabras reservadas Aquellas que el programador no puede utilizar como identificadores Las palabras reservadas se pueden clasificar en las siguientes categorías: • Tipos de datos: boolean, float, double, int, char • Sentencias condicionales: if, else, switch • Sentencias iterativas: for, do, while, continue www.dariolara.com dariolara@hotmail.com 3
  • 4. Lógica y Programación Instituto Tecnológico Metropolitano • Tratamiento de las excepciones: try, catch, finally, throw • Estructura de datos: class, interface, implements, extends • Modificadores y control de acceso: public, private, protected, transient • Otras: super, null, this. La sentencia if if (condición){ sentencia1; sentencia2; } if(numeroBoleto==numeroSorteo) System.out.println("has obtenido un premio"); if(numeroBoleto==numeroSorteo) System.out.println("has obtenido un premio"); La sentencia if...else if (condición){ sentencia1; sentencia2; } else { sentencia3; sentencia4; sentencia5; } Forma especial abreviada Existe una forma abreviada de escribir una sentencia condicional if...else en una sola línea premio=(numeroBoleto==numeroSoreteo) ? 1000 : 0; Un ejemplo significativo es el siguiente: el signo de un número elevado a una potencia par es positivo, y es negativo cuando está elevado a una potencia impar. int signo=(exponente%2==0)?1:-1; La sentencia switch Por ejemplo, considérese las siguientes series de sentencias if...else if(expresion==valor1) sentencia1; else if(expresion==valor2) sentencia2; else if(expresion==valor3) sentencia3; else sentencia4; El código resultante puede ser difícil de seguir y confuso incluso para el programador avanzado. Java proporciona una solución la sentencia condicional switch para agrupar switch(expresion){ case valor1: sentencia1; break; //sale de switch case valor2: sentencia2; break; //sale switch case valor3: sentencia3; break; //sale de switch default: sentencia4; } Ejemplo public class SwitchApp1 { public static void main(String[] args) { int mes=3; switch (mes) { case 1: System.out.println("Enero"); break; www.dariolara.com dariolara@hotmail.com 4
  • 5. Lógica y Programación Instituto Tecnológico Metropolitano case 2: System.out.println("Febrero"); break; case 3: System.out.println("Marzo"); break; case 4: System.out.println("Abril"); break; case 5: System.out.println("Mayo"); break; case 6: System.out.println("Junio"); break; case 7: System.out.println("Julio"); break; case 8: System.out.println("Agosto"); break; case 9: System.out.println("Septiembre"); break; case 10: System.out.println("Octubre"); break; case 11: System.out.println("Noviembre"); break; case 12: System.out.println("Diciembre"); break; default: System.out.println("Este mes no existe"); break; } } } La sentencia for Ejemplo: Escribir un programa que imprima los primeros 10 primeros números enteros empezando por el cero for (int i = 0; i < 10; i++) { System.out.println(i); } La sentencia while Escribir un programa que imprima los primeros 10 primeros números enteros empezando por el cero, empleando la sentencia iterativa while. int i=0; while (i<10) { System.out.println(i); i++; } La sentencia do...while Escribir un programa que imprima los primeros 10 primeros números enteros empezando por el cero, empleando la sentencia iterativa do..while. int i=0; do{ System.out.println(i); i++; }while(i < 10); La sentencia break for(int i = 0; i < 10; i++){ if (i == 8) break; System.out.println(i); } // Concepto de espacios La sentencia continue En la siguiente porción de código, se imprimen todos los números del 0 al 9 excepto el número 8. for(int i = 0; i < 10; i++){ if (i == 8) continue; System.out.println(i); } Etiquetas Tanto break como continue pueden tener una etiqueta opcional que indica a Java hacia donde dirigirse cuando se cumple una determinada condición. salida: for(int i=0; i<20; i++){ while(j<70){ if(i*j==500) break salida; // Si se cumple la condicion ir a la etiqueta salida: } } www.dariolara.com dariolara@hotmail.com 5
  • 6. Lógica y Programación Instituto Tecnológico Metropolitano TALLER DE LÓGICA Y PROGRAMACIÓN Propuesta del Decano Fray León Osorio ENUNCIADOS 1. Un entrenador de un equipo de baloncesto desea reclutar personal para su semillero. Los aspirantes deben cumplir los siguientes requisitos: • Si es hombre: edad entre 14 y 18 años y estatura superior o igual a 1.80 metros. • Si es mujer: edad entre 13 y 15 y estatura superior o igual a 1.70 metros. Se debe mostrar cuantos aspirantes mujer y cuantos hombres fueron inscritos. No se sabe cuántos aspirantes irán a la convocatoria. 2. Un número binario se obtiene a partir de un número decimal, realizando sucesivas divisiones por 2 hasta que no se pueda seguir dividiendo (Cuando el resultado de la división da 1). Los dígitos del número binario respectivo se muestran en el sentido inverso del cálculo y corresponden a los residuos que siempre serán 1 ó 0 . 3. El valor de una llamada telefónica depende de los siguientes parámetros: • Valor del minuto • Duración de la llamada en minutos • Descuento del 10 % si la llamada es internacional entre las 12:00 y 6:00 PM Descuento del 5 % si la llamada es nacional entre las 10:00 PM y 9:00 AM www.dariolara.com dariolara@hotmail.com 6
  • 7. Lógica y Programación Instituto Tecnológico Metropolitano TALLER DE LÓGICA Y PROGRAMACIÓN SOLUCIONES 1. A. Enunciado del problema Un entrenador de un equipo de baloncesto desea reclutar personal para su semillero. Los aspirantes deben cumplir los siguientes requisitos: • Si es hombre: edad entre 14 y 18 años y estatura superior o igual a 1.80 metros. • Si es mujer: edad entre 13 y 15 y estatura superior o igual a 1.70 metros. Se debe mostrar cuantos aspirantes mujer y cuantos hombres fueron inscritos. No se sabe cuántos aspirantes irán a la convocatoria. B. Solucion en Seudocodigo Analítico Declaracion de variables hombresAceptados Es Entero mujeresAceptadas Es Entero opcion Es Texto edad Es Entero estatura Es Real Inicializacion de variables hombresAceptados=0 mujeresAceptadas=0 opcion="s" // Usamos opcion como registro centinela Cálculos, repeticiones y decisiones Mientras opción="s" Lea edad, estatura, sexo Si edad>=14 Y edad<=18 Y estatura>=1.8 Y sexo="m" entonces hombresAceptados = hombresAceptados + 1 FinSi Si edad>=13 Y edad<=15 Y estatura>=1.7 Y sexo="f" entonces mujeresAceptadas = mujeresAceptadas + 1 FinSi Lea opcion FinMientras Impresión de resultados Imprima hombresAceptados Imprima mujeresAceptadas Final C. Solucion en Seudocodigo Orientado a Objetos Clase Publico EquipoBaloncesto Metodo Principal() Es RetornoVacio hombresAceptados Es Entero mujeresAceptadas Es Entero opcion Es Texto edad Es Entero estatura Es Real hombresAceptados=0 mujeresAceptadas=0 opcion="s" Mientras opción="s" Lea edad, estatura, sexo Si edad>=14 Y edad<=18 Y estatura>=1.8 Y sexo="m" entonces hombresAceptados = hombresAceptados + 1 FinSi Si edad>=13 Y edad<=15 Y estatura>=1.7 Y sexo="f" entonces mujeresAceptadas = mujeresAceptadas + 1 FinSi Lea opcion FinMientras Imprima hombresAceptados Imprima mujeresAceptadas FinMetodo FinClase www.dariolara.com dariolara@hotmail.com 7
  • 8. Lógica y Programación Instituto Tecnológico Metropolitano D. Código en Java public class EquipoBaloncesto { public static void main(String[] args) { int hombresAceptados=0; int mujeresAceptadas=0; String opcion="s"; while(opcion.equals("s")) { //Lectura de la edad y estatura int edad=LeerVariable.leerEntero("Edad?"); double estatura=LeerVariable.leerReal("Estatura (metros)?"); //lectura del sexo validada (solo acepta "f" o "m") String sexo=""; while(!sexo.equals("f") && !sexo.equals("m")) sexo=LeerVariable.leerTexto("Sexo (f/m)?").toLowerCase(); //Es una mujer que califica if(edad>=14 && edad<=18 && estatura>=1.8 && sexo.equals("m")) hombresAceptados++; //Es un hombre que califica if(edad>=13 && edad<=15 && estatura>=1.7 && sexo.equals("f")) mujeresAceptadas++; //lectura de la opción validada (solo acepta si comienza con "s" o "n") opcion=""; while(!opcion.startsWith("s") && !opcion.startsWith("n")) opcion=LeerVariable.leerTexto("Desea continuar (s/n)?").toLowerCase(); } System.out.println("Total de hombres aceptados "+hombresAceptados); System.out.println("Total de mujeres aceptadas "+mujeresAceptadas); } } 2. A. Enunciado Un número binario se obtiene a partir de un número decimal, realizando sucesivas divisiones por 2 hasta que no se pueda seguir dividiendo (Cuando el resultado de la división da 1). Los dígitos del número binario respectivo se muestran en el sentido inverso del cálculo y corresponden a los residuos que siempre serán 1 ó 0 . B. Solucion en Seudocodigo Analítico Declaracion de variables decimal Es Entero cociente Es Entero digito Es Entero binario Es Texto Inicializacion de variables Lea decimal Cálculos, repeticiones y decisiones cociente=decimal binario="" Mientras cociente>1 digito = cociente mod 2 cociente = (cociente - digito) / 2 binario = digito + binario FinMientras binario = cociente + binario Impresión der resultados Imprima binario Final C. Solucion en Seudocodigo Orientado a Objetos Clase Publico DecimalABinario Metodo Principal() Es RetornoVacio decimal Es Entero cociente Es Entero digito Es Entero binario Es Texto Lea decimal cociente=decimal binario="" Mientras cociente>1 digito = cociente mod 2 www.dariolara.com dariolara@hotmail.com 8
  • 9. Lógica y Programación Instituto Tecnológico Metropolitano cociente = (cociente - digito) / 2 binario = digito + binario FinMientras binario = cociente + binario Imprima binario FinMetodo FinClase D. Código en Java public class DecimalABinario { public static void main(String[] args) { int decimal=LeerVariable.leerEntero("Numero decimal?"); //El cociente inicia con el valor del número decimal int cociente=decimal; //Inicio de la cifra binaria String binario=""; //Repetir mientras el cociente de dividir por 2 sea mayor a 1 while(cociente>1) { //Obtener el residuo de dividir por 2. Este será el dígito binario int digito=cociente%2; //Obtener el cociente de la división entera por 2 cociente=(cociente-digito)/2; //Agregar el dígito binario a la cifra binario=digito+binario; } //Agregar el último cociente para completar la cifra binario=cociente + binario; System.out.println("El numero "+decimal+" en binario es "+binario); } } EJERCICIO PARA COMPLETAR 3. El valor de una llamada telefónica depende de los siguientes parámetros: • Valor del minuto • Duración de la llamada en minutos • Descuento del 10 % si la llamada es internacional entre las 12:00 y 6:00 PM • Descuento del 5 % si la llamada es nacional entre las 10:00 PM y 9:00 AM GENERAR SEUDOCODIGOS - ANALITICO Y OO D. Código en Java //Clase Publico DecimalABinario public class ValorLlamada { //Metodo Principal() Es RetornoVacio public static void main(String args[]) { Mientras hora <0 O hora >23 entonces Lea hora Tipo=0 //Duracion es entero int duracion=LeerVariable.leerEntero("Duracion (minutos)?"); // ValorMinuto es entero int valorMinuto=LeerVariable.leerEntero("Valor minuto (pesos)?"); // Hora es entero // Hora = -1 int hora=-1; // Mientras hora < 0 O hora > 23 entonces while(hora<0 || hora>23) // Lea hora hora=LeerVariable.leerEntero("Hora [0 1 2 ... 11 12 13 ... 22 23]?"); // tipo = 0 int tipo=0; // Mientras tipo < 1 O tipo > 2 while(tipo<1 || tipo>2) // Lea Tipo www.dariolara.com dariolara@hotmail.com 9
  • 10. Lógica y Programación Instituto Tecnológico Metropolitano tipo=LeerVariable.leerEntero("Tipo: [1] Nacional |[2] Internacional?"); int valorLlamada=duracion*valorMinuto; if(tipo==2 && hora>=12 && hora<=18) valorLlamada*=0.9; if(tipo==1 && (hora>=22 || hora<=9)) valorLlamada*=0.95; System.out.println(); System.out.println("El valor de llamada es $ "+valorLlamada); } } PROBLEMAS PROPUESTOS OBTENER 1. SEUDOCODIGO ANALITICO 2. SEUDOCODIGO OO 3. CODIGO JAVA PARA CADA EJERCICIO PROPUESTO 4. Las calificaciones de un curso tienen asignados 4 porcentajes. Se deben leer las calificaciones que obtuvo cada estudiante del curso y obtener su respectivo promedio basados en los anteriores porcentajes. Indicar el estudiante con mejor promedio. 5. Dadas las estaturas de un conjunto de personas, calcular el promedio general. 6. Para un conocido número de llamadas se tienen los siguientes datos: Duración en minutos, valor del minuto y tipo de destino (nacional e internacional). Calcular el valor total de las llamadas por cada tipo. 7. Para la realización de un pentatlón (competencia que consta de 5 pruebas a realizarse en un sólo día: tiro con pistola, esgrima, natación 200 metros libres, equitación de obstáculos y carrera a campo-traviesa.) se inscriben determinado número de participantes. De cada uno se obtiene el nombre, el puntaje en cada prueba y el sexo. Calcular • Pruebas en que dominan las mujeres • Nombre del ganador de cada prueba 8. En un censo barrial se desea determinar el nivel de escolaridad de sus habitantes. Cada uno de ellos deberá pasar a decir cuál es su nivel (Primaria, Secundaria, Técnico, Tecnológico, Universitario y Postgrado) en el transcurso del día del censo. Se conoce con anticipación el total de habitantes pero no el total de los que aportarán la información. Terminado el día se deberá determinar si existe suficiente muestra para saber el nivel de escolaridad de los habitantes (si el total de quienes aportaron información supera el 10% de la población total). Realizar el cálculo del nivel de escolaridad si la muestra es suficiente. 9. Un banco tiene en su portafolio 4 tarjetas de crédito: MasterCard, Visa, Diners Club y American Express. Desea realizar un proceso para determinar el nivel de uso de cada una y los montos que se manejan. Para ello por cada cliente se lee que tarjetas tiene y por cada tarjeta, el número total de transacciones en el año y el monto total por cada uno de los siguientes destinos: Educación, Restaurantes, Eventos y Comercio. Calcular • La tarjeta que más transacciones presenta • En cada tarjeta, el destino que mayores montos maneja 10. Una compañía desea evaluar el nivel de satisfacción de los clientes en una región. Para ello realiza una encuesta a un indeterminado número de personas. En primer lugar se consulta si han adquirido sus productos con base en los siguientes rangos: • 0 a 2 productos (peso 15%) • 2 a 10 productos (peso 40%) • Más de 10 productos (peso 55%) Seguido se les pide el nivel de conformidad con base en la siguiente lista: • Inconforme (0) • Conforme (1) • Muy conforme (2) • www.dariolara.com dariolara@hotmail.com 10
  • 11. Lógica y Programación Instituto Tecnológico Metropolitano 11. Las calificaciones de un curso tienen asignados 4 porcentajes. Se deben leer las calificaciones que obtuvo cada estudiante del curso y obtener su respectivo promedio basados en los anteriores porcentajes. Indicar el estudiante con mejor promedio. 12. Dadas las estaturas de un conjunto de personas, calcular el promedio general. 13. Para un conocido número de llamadas se tienen los siguientes datos: Duración en minutos, valor del minuto y tipo de destino (nacional e internacional). Calcular el valor total de las llamadas por cada tipo. 14. Para la realización de un pentatlón (competencia que consta de 5 pruebas a realizarse en un sólo día: tiro con pistola, esgrima, natación 200 metros libres, equitación de obstáculos y carrera a campo-traviesa.) se inscriben determinado número de participantes. De cada uno se obtiene el nombre, el puntaje en cada prueba y el sexo. Calcular • Pruebas en que dominan las mujeres • Nombre del ganador de cada prueba 15. En un censo barrial se desea determinar el nivel de escolaridad de sus habitantes. Cada uno de ellos deberá pasar a decir cuál es su nivel (Primaria, Secundaria, Técnico, Tecnológico, Universitario y Postgrado) en el transcurso del día del censo. Se conoce con anticipación el total de habitantes pero no el total de los que aportarán la información. Terminado el día se deberá determinar si existe suficiente muestra para saber el nivel de escolaridad de los habitantes (si el total de quienes aportaron información supera el 10% de la población total). Realizar el cálculo del nivel de escolaridad si la muestra es suficiente. 16. Un banco tiene en su portafolio 4 tarjetas de crédito: MasterCard, Visa, Diners Club y American Express. Desea realizar un proceso para determinar el nivel de uso de cada una y los montos que se manejan. Para ello por cada cliente se lee que tarjetas tiene y por cada tarjeta, el número total de transacciones en el año y el monto total por cada uno de los siguientes destinos: Educación, Restaurantes, Eventos y Comercio. Calcular • La tarjeta que más transacciones presenta • En cada tarjeta, el destino que mayores montos maneja 17. Una compañía desea evaluar el nivel de satisfacción de los clientes en una región. Para ello realiza una encuesta a un indeterminado número de personas. En primer lugar se consulta si han adquirido sus productos con base en los siguientes rangos: • 0 a 2 productos (peso 15%) • 2 a 10 productos (peso 40%) • Más de 10 productos (peso 55%) Seguido se les pide el nivel de conformidad con base en la siguiente lista: • Inconforme (0) • Conforme (1) • Muy conforme (2) El nivel de satisfacción general se calcula totalizando los niveles elegidos en cada rango para hallar el de mayor preferencia. Luego se multiplica cada nivel elegido por el respectivo peso. La suma de estas multiplicaciones define el nivel de conformidad (se debe hacer un redondeo). 18. A un trabajador le pagan segun sus horas y una tarifa de pago por horas. si la cantidad de horas trabajadas es mayor a 40 horas. La tarifa se incrementa en un 50% para las horas extras. calcular el salario del trabajador dadas las horas trabajadas y la tarifa. Seudocodigo analitico tradicional variables: horas_trabajadas,tarifa,horas_extras,salario,tarifa_e inicio leer: horas_trabajadas,tarifa si: horas_trabajadas <= 40 entonces salario <-- horas_trabajadas * tarifa si_no tarifa_extra <-- tarifa + 0.50 * tarifa horas_extras <-- horas_trabajadas - 40 salario <-- horas_extras * tarifa_extra + 40 * tarifa fin_si imprimir: salario. www.dariolara.com dariolara@hotmail.com 11
  • 12. Lógica y Programación Instituto Tecnológico Metropolitano fin 19. A un trabajador le descuentan de su sueldo el 10% si su sueldo es menor o igual a 1000. por encima de 1000 y hasta 2000 el 5% del adicional, y por encima de 2000 el 3% del adicional. calcular el descuento y sueldo neto que recibe el trabajador dado su sueldo. Seudocodigo analitico tradicional variables: sueldo,sueldo_neto,descuento inicio leer: sueldo si: sueldo <= 1000 entonces descuento <-- sueldo * 0.1 si_no si: sueldo <= 2000 entonces descuento <-- (sueldo - 1000) * 0.05 + 1000 * 0.1 si_no descuento <-- (sueldo - 2000) * 0.03 + 1000 * 0.1 fin_si imprimir: descuento. fin 20. Dado un monto calcular el descuento considerando que por encima de 100 el descuento es el 10% y por debajo de 100 el descuento es el 2%. Seudocodigo analitico tradicional variables: monto,descuento inicio leer: monto si: monto > 100 entonces descuento <-- monto * 10 / 100 si_no descuento <-- monto * 2 / 100 fin_si imprimir: monto, descuento fin 21. Dado un tiempo en segundos, calcular los segundos restantes que le correspondan para convertirse exactamente en minutos. Seudocodigo analitico tradicional variables: tiempo_seg,minutos,segundos inicio leer: tiempo_seg si minutos <-- tiempo_seg div 60 entonces segundos <-- tiempo_seg mod 60 fin_si imprimir: minutos,segundos. fin 22. Dado un tiempo en minutos, calcular los dias, horas y minutos que le corresponden. Seudocodigo analitico tradicional variables: tiempo,dias,horas,minutos inicio leer: tiempo si: dias <-- tiempo div 1440 x <-- tiempo mod 1440 horas <-- x div 60 minutos <-- x mod 60 imprimir: dias,minutos,horas fin_si fin OJO: <-- esto es una asignacion www.dariolara.com dariolara@hotmail.com 12