You are on page 1of 12

Lgica y Programacin

Instituto Tecnolgico 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 mtodo o funcin miembro, o a una clase Comentarios 1. Comentarios en una sola lnea // Este es un comentario de linea 2. Comentarios de varias lneas los programadores disean comentarios como el siguiente: /*----------------------------------------| | (C) Dario Lara Zapata | | fecha: Marzo 1999 | | programa: PrimerApp.java | |----------------------------------------*/ 3. Comentarios de documentacin // Usan Javadoc.exe para generar la documentacin con los comentarios Operadores La precedencia de operadores El lector conocer que los operadores aritmticos tienen distinta precedencia (raiz, exp, /, *, +, -), as la expresin a+b*c es equivalente a a+(b*c) Para realizar la operacin scribiremos a/(b*c); o bien, a/b/c; Operadores aritmeticos Java tiene cinco operadores aritmticos cuyo significado se muestra en la tabla adjunta Operador Nombre Ejemplo + Suma 3+4 Diferencia 3-4 * Producto 3*4 / Cociente 20/7 % Mdulo 20%7 Operador asignacin El operador asignacin se puede combinar con los operadores aritmticos Expresin 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; evala la expresin x+23, que es asignada de nuevo a x. El compilador lee primero el contenido de la porcin de memoria nombrada x, realiza la suma, y guarda el resultado en la misma porcin de memoria. Se puede escribir la sentencia anterior de una forma equivalente ms simple

www.dariolara.com

dariolara@hotmail.com

Lgica y Programacin

Instituto Tecnolgico 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 smbolo =, las comparaciones con ==. Los operadores lgicos Los operadores lgicos son: && AND (el resultado es verdadero si ambas expresiones son verdaderas) || OR (el resultado es verdadero si alguna expresin es verdadera) ! NOT (el resultado invierte la condicin de la expresin) La expresin "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 expresin es equivalente a (a!=b) Concatenacin de strings En Java se usa el operador + para concatenar cadenas de carcateres o strings System.out.println("la temperatura centgrada es "+C); La conversin automtica y promocin (casting) Cuando se realiza una operacin, 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 actan sobre un nico operando. Se trata de uno de los aspecto ms confusos para el programador, ya que el resultado de la operacin depende de que el operador est a la derecha i++ o a la izquierda ++i. i=i+1; //aadir 1 a i i++; i=i-1; //restar 1 a i i--; A la derecha j=i++; asigna a j, el valor que tena i. Por ejemplo, si i vala 3, despus 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 vala 3, despus 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-numricos son los mismos que los ASCII

www.dariolara.com

dariolara@hotmail.com

Lgica y Programacin

Instituto Tecnolgico Metropolitano

con el bit alto puesto a 0. El intervalo de valores va desde 0 hasta 65535 (valores de 16-bits sin signo). byte Tamao 8 bits. El intervalo de valores va desde -27 hasta 27 -1 (-128 a 127) short Tamao 16 bits. El intervalo de valores va desde -215 hasta 215-1 (-32768 a 32767) Tamao 32 bits. El intervalo de valores va desde -231 hasta 231-1 (-2147483648 a int 2147483647) Tamao 64 bits. El intervalo de valores va desde -263 hasta 263-1 (-9223372036854775808 long a 9223372036854775807) Tamao 32 bits. Nmeros en coma flotante de simple precisin. Estndar IEEE 754-1985 (de float 1.40239846e45f a 3.40282347e+38f) Tamao 64 bits. Nmeros en coma flotante de doble precisin. Estndar IEEE 754-1985. (de double 4.94065645841246544e324d a 1.7976931348623157e+308d.) Los tipos bsicos que utilizaremos en la mayor parte de los programas sern boolean, int y double Caracteres escape ( de rompimiento ) Carcter Secuencia de escape retorno de carro \r tabulador \t horizontal nueva lnea \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 nmeros enteros (byte, short, int, long), existe una clase denominada BigInteger , pueden guardar un nmero entero arbitrariamente grande. Variables en coma flotante float a=12.5f; float b=7f; double c=7.0; double d=7d; En la primera lnea 12.5 lleva el sufijo f, ya que por defecto 12.5 es double. En la segunda lnea 7 es un entero y por tanto 7f es un nmero 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 maysculas, 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 categoras: 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

Lgica y Programacin 4 Instituto Tecnolgico 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 (condicin){ 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 (condicin){ sentencia1; sentencia2; } else { sentencia3; sentencia4; sentencia5; } Forma especial abreviada Existe una forma abreviada de escribir una sentencia condicional if...else en una sola lnea premio=(numeroBoleto==numeroSoreteo) ? 1000 : 0; Un ejemplo significativo es el siguiente: el signo de un nmero 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, considrese las siguientes series de sentencias if...else if(expresion==valor1) sentencia1; else if(expresion==valor2) sentencia2; else if(expresion==valor3) sentencia3; else sentencia4; El cdigo resultante puede ser difcil de seguir y confuso incluso para el programador avanzado. Java proporciona una solucin 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

Lgica y Programacin

Instituto Tecnolgico 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 nmeros 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 nmeros 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 nmeros 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 porcin de cdigo, se imprimen todos los nmeros del 0 al 9 excepto el nmero 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 condicin. 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

Lgica y Programacin

Instituto Tecnolgico Metropolitano

TALLER DE LGICA Y PROGRAMACIN Propuesta del Decano Fray Len 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 aos 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 cuntos aspirantes irn a la convocatoria. 2. Un nmero binario se obtiene a partir de un nmero decimal, realizando sucesivas divisiones por 2 hasta que no se pueda seguir dividiendo (Cuando el resultado de la divisin da 1). Los dgitos del nmero binario respectivo se muestran en el sentido inverso del clculo y corresponden a los residuos que siempre sern 1 0 . 3. El valor de una llamada telefnica depende de los siguientes parmetros: Valor del minuto Duracin 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

Lgica y Programacin

Instituto Tecnolgico Metropolitano

TALLER DE LGICA Y PROGRAMACIN 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 aos 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 cuntos aspirantes irn a la convocatoria. B. Solucion en Seudocodigo Analtico 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 Clculos, repeticiones y decisiones Mientras opcin="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 Impresin 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 opcin="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

Lgica y Programacin

Instituto Tecnolgico Metropolitano

2.

D. Cdigo 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 opcin 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); } } A. Enunciado Un nmero binario se obtiene a partir de un nmero decimal, realizando sucesivas divisiones por 2 hasta que no se pueda seguir dividiendo (Cuando el resultado de la divisin da 1). Los dgitos del nmero binario respectivo se muestran en el sentido inverso del clculo y corresponden a los residuos que siempre sern 1 0 . B. Solucion en Seudocodigo Analtico Declaracion de variables decimal Es Entero cociente Es Entero digito Es Entero binario Es Texto Inicializacion de variables Lea decimal Clculos, repeticiones y decisiones cociente=decimal binario="" Mientras cociente>1 digito = cociente mod 2 cociente = (cociente - digito) / 2 binario = digito + binario FinMientras binario = cociente + binario Impresin 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

Lgica y Programacin

Instituto Tecnolgico Metropolitano

cociente = (cociente - digito) / 2 binario = digito + binario FinMientras binario = cociente + binario Imprima binario FinMetodo FinClase D. Cdigo en Java public class DecimalABinario { public static void main(String[] args) { int decimal=LeerVariable.leerEntero("Numero decimal?"); //El cociente inicia con el valor del nmero 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 dgito binario int digito=cociente%2; //Obtener el cociente de la divisin entera por 2 cociente=(cociente-digito)/2; //Agregar el dgito 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 telefnica depende de los siguientes parmetros: Valor del minuto Duracin 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. Cdigo 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

Lgica y Programacin

10

Instituto Tecnolgico 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. Dadas las estaturas de un conjunto de personas, calcular el promedio general. Para un conocido nmero de llamadas se tienen los siguientes datos: Duracin en minutos, valor del minuto y tipo de destino (nacional e internacional). Calcular el valor total de las llamadas por cada tipo. Para la realizacin de un pentatln (competencia que consta de 5 pruebas a realizarse en un slo da: tiro con pistola, esgrima, natacin 200 metros libres, equitacin de obstculos y carrera a campo-traviesa.) se inscriben determinado nmero de participantes. De cada uno se obtiene el nombre, el puntaje en cada prueba y el sexo. Calcular 8. Pruebas en que dominan las mujeres Nombre del ganador de cada prueba

5. 6. 7.

En un censo barrial se desea determinar el nivel de escolaridad de sus habitantes. Cada uno de ellos deber pasar a decir cul es su nivel (Primaria, Secundaria, Tcnico, Tecnolgico, Universitario y Postgrado) en el transcurso del da del censo. Se conoce con anticipacin el total de habitantes pero no el total de los que aportarn la informacin. Terminado el da se deber determinar si existe suficiente muestra para saber el nivel de escolaridad de los habitantes (si el total de quienes aportaron informacin supera el 10% de la poblacin total). Realizar el clculo del nivel de escolaridad si la muestra es suficiente. Un banco tiene en su portafolio 4 tarjetas de crdito: 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 nmero total de transacciones en el ao y el monto total por cada uno de los siguientes destinos: Educacin, Restaurantes, Eventos y Comercio. Calcular La tarjeta que ms transacciones presenta En cada tarjeta, el destino que mayores montos maneja

9.

10. Una compaa desea evaluar el nivel de satisfaccin de los clientes en una regin. Para ello realiza una encuesta a un indeterminado nmero 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%) Ms 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

Lgica y Programacin

11

Instituto Tecnolgico 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 nmero de llamadas se tienen los siguientes datos: Duracin 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 realizacin de un pentatln (competencia que consta de 5 pruebas a realizarse en un slo da: tiro con pistola, esgrima, natacin 200 metros libres, equitacin de obstculos y carrera a campo-traviesa.) se inscriben determinado nmero 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 cul es su nivel (Primaria, Secundaria, Tcnico, Tecnolgico, Universitario y Postgrado) en el transcurso del da del censo. Se conoce con anticipacin el total de habitantes pero no el total de los que aportarn la informacin. Terminado el da se deber determinar si existe suficiente muestra para saber el nivel de escolaridad de los habitantes (si el total de quienes aportaron informacin supera el 10% de la poblacin total). Realizar el clculo del nivel de escolaridad si la muestra es suficiente. 16. Un banco tiene en su portafolio 4 tarjetas de crdito: 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 nmero total de transacciones en el ao y el monto total por cada uno de los siguientes destinos: Educacin, Restaurantes, Eventos y Comercio. Calcular La tarjeta que ms transacciones presenta En cada tarjeta, el destino que mayores montos maneja

17. Una compaa desea evaluar el nivel de satisfaccin de los clientes en una regin. Para ello realiza una encuesta a un indeterminado nmero 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%) Ms 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 satisfaccin 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

Lgica y Programacin
fin

12

Instituto Tecnolgico Metropolitano

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

You might also like