problemas en java resueltos codigo fuente y prueba de escritorio para mejor entendimiento de las personas
autor: Josue Pedro Ramos Quispe
de: universidad nacional de moquegua
Tecnológico Nacional de México
Ingeniería en Sistemas Computacionales
Simulación
Algoritmo de productos medios
Ejemplo de aplicación que genera 10 número pseudoaleatorios basándose en el algoritmo de Productos Medios. También, ordena el arreglo resultante por medio del algoritmo de la Burbuja.
El documento describe un algoritmo lineal para generar números pseudoaleatorios. El algoritmo usa una ecuación recursiva que toma como entrada una semilla inicial, constantes multiplicativa y aditiva, y un módulo para generar cada número siguiente. Después, ordena los números generados usando el método Shell Sort para mostrarlos ordenados.
El documento habla sobre el uso de la segunda derivada para determinar la concavidad, máximos y mínimos y puntos de inflexión de una función. Explica que si la segunda derivada es positiva en un intervalo, la función es cóncava hacia arriba, y si es negativa es cóncava hacia abajo. También indica que si la segunda derivada es cero en un punto, puede haber un máximo o mínimo relativo, y si cambia de signo hay un punto de inflexión. Presenta ejemplos para ilustrar estos conceptos.
Este documento contiene 20 problemas y sus respectivos programas en Java como solución. Los problemas van desde cálculos matemáticos simples como conversiones de unidades y cálculo de áreas, hasta problemas más complejos que involucran ecuaciones, funciones trigonométricas y logaritmos. Cada problema presenta un breve enunciado y a continuación incluye el programa completo escrito en Java para resolverlo.
Este documento presenta un programa en C++ que genera números pseudoaleatorios utilizando el método de productos medios. El programa pide al usuario el número de números que desea generar y las semillas iniciales de 1 y 2. Luego muestra los resultados, incluyendo las semillas, los números X generados y los números r con formato decimal.
El documento introduce el concepto de programación lineal, que involucra asignar recursos para resolver problemas describibles mediante ecuaciones y desigualdades lineales. Presenta un ejemplo práctico de maximizar la utilidad mensual de una empresa que fabrica dos productos usando tres máquinas, sujeto a restricciones en el tiempo disponible de cada máquina. Resuelve el problema gráficamente determinando la región factible y la línea de utilidad máxima para encontrar la solución óptima.
Este documento describe cómo trazar curvas de una función gráficamente. Explica cómo una tabla de valores de x e y permite visualizar el comportamiento de una función y encontrar sus puntos críticos derivando la función para determinar dónde se iguala a cero. También describe cómo encontrar el punto de inflexión derivando la función por segunda vez y igualándola a cero.
4ta parte expresiones y funciones matemáticasyuli02
El documento describe diferentes funciones matemáticas predefinidas en C++, incluyendo funciones matemáticas básicas como abs y sqrt, funciones trigonométricas como cos y tan, funciones logarítmicas y exponenciales como log y exp, y también define qué son expresiones y cómo se construyen en C++.
Tecnológico Nacional de México
Ingeniería en Sistemas Computacionales
Simulación
Algoritmo de productos medios
Ejemplo de aplicación que genera 10 número pseudoaleatorios basándose en el algoritmo de Productos Medios. También, ordena el arreglo resultante por medio del algoritmo de la Burbuja.
El documento describe un algoritmo lineal para generar números pseudoaleatorios. El algoritmo usa una ecuación recursiva que toma como entrada una semilla inicial, constantes multiplicativa y aditiva, y un módulo para generar cada número siguiente. Después, ordena los números generados usando el método Shell Sort para mostrarlos ordenados.
El documento habla sobre el uso de la segunda derivada para determinar la concavidad, máximos y mínimos y puntos de inflexión de una función. Explica que si la segunda derivada es positiva en un intervalo, la función es cóncava hacia arriba, y si es negativa es cóncava hacia abajo. También indica que si la segunda derivada es cero en un punto, puede haber un máximo o mínimo relativo, y si cambia de signo hay un punto de inflexión. Presenta ejemplos para ilustrar estos conceptos.
Este documento contiene 20 problemas y sus respectivos programas en Java como solución. Los problemas van desde cálculos matemáticos simples como conversiones de unidades y cálculo de áreas, hasta problemas más complejos que involucran ecuaciones, funciones trigonométricas y logaritmos. Cada problema presenta un breve enunciado y a continuación incluye el programa completo escrito en Java para resolverlo.
Este documento presenta un programa en C++ que genera números pseudoaleatorios utilizando el método de productos medios. El programa pide al usuario el número de números que desea generar y las semillas iniciales de 1 y 2. Luego muestra los resultados, incluyendo las semillas, los números X generados y los números r con formato decimal.
El documento introduce el concepto de programación lineal, que involucra asignar recursos para resolver problemas describibles mediante ecuaciones y desigualdades lineales. Presenta un ejemplo práctico de maximizar la utilidad mensual de una empresa que fabrica dos productos usando tres máquinas, sujeto a restricciones en el tiempo disponible de cada máquina. Resuelve el problema gráficamente determinando la región factible y la línea de utilidad máxima para encontrar la solución óptima.
Este documento describe cómo trazar curvas de una función gráficamente. Explica cómo una tabla de valores de x e y permite visualizar el comportamiento de una función y encontrar sus puntos críticos derivando la función para determinar dónde se iguala a cero. También describe cómo encontrar el punto de inflexión derivando la función por segunda vez y igualándola a cero.
4ta parte expresiones y funciones matemáticasyuli02
El documento describe diferentes funciones matemáticas predefinidas en C++, incluyendo funciones matemáticas básicas como abs y sqrt, funciones trigonométricas como cos y tan, funciones logarítmicas y exponenciales como log y exp, y también define qué son expresiones y cómo se construyen en C++.
Este programa permite sumar y multiplicar dos números decimales introducidos por el usuario utilizando funciones como scanf para la entrada de datos y printf para mostrar los resultados. Las variables a y b almacenan los números introducidos, c almacena la suma y e almacena el producto. Finalmente, el programa imprime la suma y multiplicación con dos decimales.
La función lineal se representa como y=mx+b, donde m es la pendiente y b es el corte con el eje y. Su gráfica es una línea recta. La función cuadrática se representa como f(x)=ax2+bx+c, donde a determina si es cóncava o convexa. Su gráfica es una parábola definida por su vértice, puntos de corte con los ejes x e y, y dominio y recorrido sobre los números reales. El documento explica estas funciones polinómicas de primer y segundo grado a través
El programa permite al usuario introducir dos números, los suma y multiplica, y muestra los resultados con dos decimales. Primero pide los números, luego los suma y almacena el resultado en la variable c, también multiplica los números y almacena el resultado en e, finalmente imprime "La suma es" seguido de c y "La multiplicación es" seguido de e.
Este documento presenta un algoritmo para resolver ecuaciones cuadráticas. El algoritmo primero ingresa los valores de a, b y c. Luego calcula las raíces x1 y x2 usando las fórmulas apropiadas. Finalmente, muestra los resultados de x1 y x2. El documento también incluye una tabla que describe el objetivo y las entradas y salidas del algoritmo, así como instrucciones para implementar el algoritmo en pseudocódigo y en el lenguaje de programación PseInt.
Este documento describe un programa que calcula la hipotenusa de un triángulo rectángulo dados los catetos opuesto y adyacente. Primero se piden los valores de los catetos al usuario, luego se elevan al cuadrado y se suman, y finalmente se calcula la raíz cuadrada de la suma para obtener la hipotenusa. El programa utiliza la famosa fórmula de Pitágoras para resolver este problema básico de triángulos rectángulos.
Este documento presenta los resultados de una práctica de introducción a MATLAB para generar y graficar señales continuas. Se desarrollaron programas para generar ondas seno, cuadrada, diente de sierra y combinaciones de estas. El documento concluye que MATLAB es una herramienta útil para procesamiento de señales, y que permite generar y visualizar gráficamente señales a través de comandos como plot, grid y funciones internas como sin, square y sawtooth.
Los documentos presentan 21 programas en C de diferentes ejercicios de programación. Los programas resuelven tareas como sumar números, calcular el perímetro de un círculo, comparar números, realizar operaciones aritméticas basadas en un operador ingresado, mostrar tablas de multiplicar, series de Fibonacci, verificar fechas, y más. Cada programa contiene el código fuente en C para resolver el ejercicio correspondiente.
El documento presenta los pasos para hallar la serie de Taylor de la función f(x)=sin(x). Inicialmente, se desarrolla la serie de Taylor y se expresa como una sumatoria. Luego, se calcula el valor de la integral mediante el teorema fundamental del cálculo y el programa Derive 5.0 para obtener el valor real de la función f(x)=sin(x). Finalmente, se incluye una gráfica del área bajo la curva de la integral.
Este documento explica diferentes tipos de funciones polinomiales, incluyendo funciones constantes, lineales y de segundo grado. Define conceptos clave como el grado de un polinomio, el coeficiente principal, ceros y raíces. Incluye ejemplos de cómo graficar funciones constantes, lineales y de segundo grado, así como actividades para practicar la identificación del grado, coeficiente principal y graficación de estas funciones.
El documento presenta 10 ejercicios de programación en lenguaje C resueltos por el alumno Oswaldo Ibarra para la asignatura de lenguaje de programación. Cada ejercicio consiste en desarrollar un programa corto en C para realizar operaciones matemáticas o de conversión de unidades, como sumar números, calcular promedios, IVA, áreas, conversiones de temperatura y distancia.
Este programa permite al usuario ingresar dos valores enteros que son elevados a la tercera potencia y multiplicados. Luego, la expresión (0.5)*(x*x*x)*(y*y*y) se calcula y despliega el resultado. El programa utiliza funciones como scanf, printf y getch para leer los valores ingresados, mostrar mensajes y resultados, y pausar la ejecución.
Este documento explica cómo resolver sistemas de ecuaciones lineales mediante el método de Gauss. Primero se introducen los conceptos básicos de sistemas compatibles determinados y la matriz A. Luego, describe el proceso de Gauss para poner la matriz en forma escalonada reducida haciendo ceros debajo de la diagonal principal mediante combinaciones lineales de filas. Finalmente, presenta un algoritmo completo para resolver sistemas de ecuaciones por el método de Gauss, incluyendo un paso para intercambiar filas cuando se obtiene un cero en la diagonal principal.
El documento presenta 15 programas básicos en lenguaje C que incluyen imprimir texto, sumar y restar números, calcular áreas, resolver ecuaciones de segundo grado, evaluar si el usuario es mayor de edad, mostrar menús de operaciones matemáticas, tablas de multiplicar, pirámides de números y calcular promedios; todos ellos con el objetivo de introducir conceptos básicos de programación en C.
El documento presenta un programa en C++ que permite sumar y multiplicar dos números decimales introducidos por el usuario utilizando funciones. El programa solicita los números, muestra un menú de opciones para seleccionar sumar o multiplicar, llama a las funciones correspondientes y muestra el resultado.
Ejercicios de programación en C (Estructuras condicionales-Selectivas)Maynor Mendoza
Los documentos presentan programas en C para resolver diferentes problemas matemáticos y lógicos mediante el uso de condicionales y estructuras de control. Los programas incluyen cálculos de áreas geométricas, conversión de caracteres, cálculo de descuentos y obsequios, evaluación de índices de masa corporal, cálculo de días transcurridos, ordenamiento y comparación de números, y cálculo de costos de alquiler.
Una función cuadrática es una función de la forma f(x) = a x^2 + b x + c, donde a ≠ 0 y a, b y c son números. La función f(x) = x^2 - 2x - 3 tiene una parábola como gráfica, con valores de y de 0, -3, -4, -3, 0 y 5 para valores de x de 1, 0, -1, -2, -3 y -4 respectivamente.
Este documento contiene 13 reportes de prácticas de programación de José Fernando Ruiz C., donde describe problemas y algoritmos para multiplicar números, obtener el área de un trapecio, intercambiar valores, sumar y multiplicar números, convertir centímetros a metros, cobrar por horas de estacionamiento y metros cuadrados, convertir grados centígrados a Fahrenheit, calcular el cubo de un número, y resolver un sistema de ecuaciones lineales. Cada reporte incluye la definición del problema, análisis de datos de entrada y salida, algorit
Este documento presenta dos ejercicios de programación en Java. El primer ejercicio convierte un número decimal a binario y octal utilizando vectores. El segundo ejercicio toma un vector de n elementos ingresados y crea un nuevo vector con solo los elementos que se repiten en el primer vector.
Este documento presenta dos ejercicios de programación en Java. El primer ejercicio convierte un número decimal a binario y octal utilizando vectores. El segundo ejercicio toma un vector de n elementos ingresados y crea un nuevo vector con solo los elementos que se repiten en el primer vector.
Este documento contiene 35 preguntas de opción múltiple sobre conceptos básicos del lenguaje de programación C. Las preguntas cubren temas como tipos de instrucciones, operadores, funciones matemáticas, arreglos, funciones y prototipos. El objetivo es evaluar los conocimientos del estudiante sobre la sintaxis y estructura básica de programas en C.
Ejercicios introduccion a la programación en Chack3 Org
El documento contiene una serie de preguntas sobre programación en C y Python. Se piden comparaciones entre los lenguajes, traducciones de código Python a C, y explicaciones sobre código C. También incluye ejercicios para que el lector diseñe programas C sencillos.
Este programa permite sumar y multiplicar dos números decimales introducidos por el usuario utilizando funciones como scanf para la entrada de datos y printf para mostrar los resultados. Las variables a y b almacenan los números introducidos, c almacena la suma y e almacena el producto. Finalmente, el programa imprime la suma y multiplicación con dos decimales.
La función lineal se representa como y=mx+b, donde m es la pendiente y b es el corte con el eje y. Su gráfica es una línea recta. La función cuadrática se representa como f(x)=ax2+bx+c, donde a determina si es cóncava o convexa. Su gráfica es una parábola definida por su vértice, puntos de corte con los ejes x e y, y dominio y recorrido sobre los números reales. El documento explica estas funciones polinómicas de primer y segundo grado a través
El programa permite al usuario introducir dos números, los suma y multiplica, y muestra los resultados con dos decimales. Primero pide los números, luego los suma y almacena el resultado en la variable c, también multiplica los números y almacena el resultado en e, finalmente imprime "La suma es" seguido de c y "La multiplicación es" seguido de e.
Este documento presenta un algoritmo para resolver ecuaciones cuadráticas. El algoritmo primero ingresa los valores de a, b y c. Luego calcula las raíces x1 y x2 usando las fórmulas apropiadas. Finalmente, muestra los resultados de x1 y x2. El documento también incluye una tabla que describe el objetivo y las entradas y salidas del algoritmo, así como instrucciones para implementar el algoritmo en pseudocódigo y en el lenguaje de programación PseInt.
Este documento describe un programa que calcula la hipotenusa de un triángulo rectángulo dados los catetos opuesto y adyacente. Primero se piden los valores de los catetos al usuario, luego se elevan al cuadrado y se suman, y finalmente se calcula la raíz cuadrada de la suma para obtener la hipotenusa. El programa utiliza la famosa fórmula de Pitágoras para resolver este problema básico de triángulos rectángulos.
Este documento presenta los resultados de una práctica de introducción a MATLAB para generar y graficar señales continuas. Se desarrollaron programas para generar ondas seno, cuadrada, diente de sierra y combinaciones de estas. El documento concluye que MATLAB es una herramienta útil para procesamiento de señales, y que permite generar y visualizar gráficamente señales a través de comandos como plot, grid y funciones internas como sin, square y sawtooth.
Los documentos presentan 21 programas en C de diferentes ejercicios de programación. Los programas resuelven tareas como sumar números, calcular el perímetro de un círculo, comparar números, realizar operaciones aritméticas basadas en un operador ingresado, mostrar tablas de multiplicar, series de Fibonacci, verificar fechas, y más. Cada programa contiene el código fuente en C para resolver el ejercicio correspondiente.
El documento presenta los pasos para hallar la serie de Taylor de la función f(x)=sin(x). Inicialmente, se desarrolla la serie de Taylor y se expresa como una sumatoria. Luego, se calcula el valor de la integral mediante el teorema fundamental del cálculo y el programa Derive 5.0 para obtener el valor real de la función f(x)=sin(x). Finalmente, se incluye una gráfica del área bajo la curva de la integral.
Este documento explica diferentes tipos de funciones polinomiales, incluyendo funciones constantes, lineales y de segundo grado. Define conceptos clave como el grado de un polinomio, el coeficiente principal, ceros y raíces. Incluye ejemplos de cómo graficar funciones constantes, lineales y de segundo grado, así como actividades para practicar la identificación del grado, coeficiente principal y graficación de estas funciones.
El documento presenta 10 ejercicios de programación en lenguaje C resueltos por el alumno Oswaldo Ibarra para la asignatura de lenguaje de programación. Cada ejercicio consiste en desarrollar un programa corto en C para realizar operaciones matemáticas o de conversión de unidades, como sumar números, calcular promedios, IVA, áreas, conversiones de temperatura y distancia.
Este programa permite al usuario ingresar dos valores enteros que son elevados a la tercera potencia y multiplicados. Luego, la expresión (0.5)*(x*x*x)*(y*y*y) se calcula y despliega el resultado. El programa utiliza funciones como scanf, printf y getch para leer los valores ingresados, mostrar mensajes y resultados, y pausar la ejecución.
Este documento explica cómo resolver sistemas de ecuaciones lineales mediante el método de Gauss. Primero se introducen los conceptos básicos de sistemas compatibles determinados y la matriz A. Luego, describe el proceso de Gauss para poner la matriz en forma escalonada reducida haciendo ceros debajo de la diagonal principal mediante combinaciones lineales de filas. Finalmente, presenta un algoritmo completo para resolver sistemas de ecuaciones por el método de Gauss, incluyendo un paso para intercambiar filas cuando se obtiene un cero en la diagonal principal.
El documento presenta 15 programas básicos en lenguaje C que incluyen imprimir texto, sumar y restar números, calcular áreas, resolver ecuaciones de segundo grado, evaluar si el usuario es mayor de edad, mostrar menús de operaciones matemáticas, tablas de multiplicar, pirámides de números y calcular promedios; todos ellos con el objetivo de introducir conceptos básicos de programación en C.
El documento presenta un programa en C++ que permite sumar y multiplicar dos números decimales introducidos por el usuario utilizando funciones. El programa solicita los números, muestra un menú de opciones para seleccionar sumar o multiplicar, llama a las funciones correspondientes y muestra el resultado.
Ejercicios de programación en C (Estructuras condicionales-Selectivas)Maynor Mendoza
Los documentos presentan programas en C para resolver diferentes problemas matemáticos y lógicos mediante el uso de condicionales y estructuras de control. Los programas incluyen cálculos de áreas geométricas, conversión de caracteres, cálculo de descuentos y obsequios, evaluación de índices de masa corporal, cálculo de días transcurridos, ordenamiento y comparación de números, y cálculo de costos de alquiler.
Una función cuadrática es una función de la forma f(x) = a x^2 + b x + c, donde a ≠ 0 y a, b y c son números. La función f(x) = x^2 - 2x - 3 tiene una parábola como gráfica, con valores de y de 0, -3, -4, -3, 0 y 5 para valores de x de 1, 0, -1, -2, -3 y -4 respectivamente.
Este documento contiene 13 reportes de prácticas de programación de José Fernando Ruiz C., donde describe problemas y algoritmos para multiplicar números, obtener el área de un trapecio, intercambiar valores, sumar y multiplicar números, convertir centímetros a metros, cobrar por horas de estacionamiento y metros cuadrados, convertir grados centígrados a Fahrenheit, calcular el cubo de un número, y resolver un sistema de ecuaciones lineales. Cada reporte incluye la definición del problema, análisis de datos de entrada y salida, algorit
Este documento presenta dos ejercicios de programación en Java. El primer ejercicio convierte un número decimal a binario y octal utilizando vectores. El segundo ejercicio toma un vector de n elementos ingresados y crea un nuevo vector con solo los elementos que se repiten en el primer vector.
Este documento presenta dos ejercicios de programación en Java. El primer ejercicio convierte un número decimal a binario y octal utilizando vectores. El segundo ejercicio toma un vector de n elementos ingresados y crea un nuevo vector con solo los elementos que se repiten en el primer vector.
Este documento contiene 35 preguntas de opción múltiple sobre conceptos básicos del lenguaje de programación C. Las preguntas cubren temas como tipos de instrucciones, operadores, funciones matemáticas, arreglos, funciones y prototipos. El objetivo es evaluar los conocimientos del estudiante sobre la sintaxis y estructura básica de programas en C.
Ejercicios introduccion a la programación en Chack3 Org
El documento contiene una serie de preguntas sobre programación en C y Python. Se piden comparaciones entre los lenguajes, traducciones de código Python a C, y explicaciones sobre código C. También incluye ejercicios para que el lector diseñe programas C sencillos.
El documento presenta una serie de preguntas sobre la traducción de programas de Python a C y sobre conceptos básicos de C como comentarios, tipos de datos, operadores, etc. Se piden detalles como las diferencias entre los bucles for de Python y C, la función de las llaves y puntos y coma en C, y cómo traducir constructos comunes de Python como entrada de datos, condicionales if/else, funciones matemáticas y bucles while al lenguaje C.
Este documento contiene 51 preguntas de opción múltiple y verdadero/falso sobre conceptos básicos de programación y algoritmos. También incluye algunos ejercicios de desarrollo y segmentos de código para evaluar. El documento parece ser parte de una evaluación para un curso de sistemas sobre los fundamentos de la programación.
Este documento presenta información sobre la resolución de determinantes de 3x3 usando la regla de Cramer. También incluye ejemplos de uso de funciones matemáticas como pow() y sqrt() en C para resolver expresiones. Finalmente, proporciona ejemplos de generación de números aleatorios y cálculo de promedios usando funciones aleatorias en C.
Este documento presenta 12 problemas resueltos con pseudocódigo, diagramas de flujo y código Java. Cada problema contiene las especificaciones, el pseudocódigo para resolverlo algorítmicamente, un diagrama de flujo y el código Java correspondiente. Los problemas resueltos incluyen cálculos matemáticos, conversión de unidades, y uso de funciones matemáticas como logaritmos y raíces cuadradas.
El primer documento presenta un problema de sumar las columnas de una matriz cuadrada de tamaño n. El segundo documento presenta un problema de crear una clase calculadora que realice las cuatro operaciones básicas. El tercer documento presenta un problema de girar una matriz 90 grados a la derecha.
Este documento presenta 9 problemas de programación con sus respectivas soluciones. Los problemas van desde determinar si un número es positivo, negativo o neutro; hasta convertir una cantidad de segundos a horas, minutos y segundos. Cada problema incluye un enunciado, análisis, diseño de interfaz, algoritmo y codificación en C.
El documento presenta varios ejemplos de código en Java para resolver problemas matemáticos utilizando estructuras de control como bucles for y while. Se muestran algoritmos para calcular sumas, promedios, máximos, mínimos, factoriales y series numéricas utilizando ciclos y condicionales.
El documento contiene varios ejemplos de código Java que resuelven problemas utilizando bucles como while, do-while y for. Los ejemplos incluyen calcular series numéricas, sumatorias, promedios, máximos y mínimos, tablas de multiplicar, factoriales y la serie de Fibonacci. El código muestra diferentes formas de ingresar y procesar datos utilizando bucles en Java.
Este documento contiene 39 preguntas sobre programación en Python relacionadas con conceptos matemáticos como representación de números, álgebra booleana, cálculo de áreas y perímetros geométricos, expresiones y operaciones aritméticas, cadenas y tipos de datos. Las preguntas van desde definir algoritmos hasta evaluar expresiones, pasando por analizar la validez de identificadores y operadores.
Este documento contiene 39 preguntas sobre programación en Python relacionadas con conceptos matemáticos como representación de números, álgebra booleana, cálculo de áreas y perímetros geométricos, expresiones y operaciones aritméticas, cadenas y tipos de datos. Las preguntas van desde definir algoritmos hasta evaluar expresiones, pasando por diseñar programas sencillos y analizar su funcionamiento.
El documento presenta 10 algoritmos desarrollados por José Manuel Plata Cabello para un proyecto de programación. Cada algoritmo calcula una operación matemática diferente (área de figuras, promedio, conversión de unidades, etc.) y describe los pasos, variables de entrada/salida, y reflexiones personales de Plata Cabello sobre lo aprendido al crear cada algoritmo.
El documento presenta 10 algoritmos desarrollados por un estudiante como parte de un proyecto de programación. Cada algoritmo describe un problema matemático diferente como calcular áreas, promedios, conversiones de unidades, etc. Al final de cada algoritmo, el estudiante incluye reflexiones sobre lo que aprendió al desarrollarlo.
Este documento describe operadores y la estructura secuencial en algoritmos. Explica diferentes tipos de operadores como aritméticos, lógicos y relacionales. Luego presenta ejemplos de algoritmos secuenciales que suman números ingresados por el usuario y calculan el área de un círculo. Finalmente, discute las pruebas de escritorio para verificar el comportamiento de los algoritmos.
El documento presenta varios problemas de programación en Java resueltos por Noe Emanuel Lopez Velazquez. Incluye problemas como sumar las columnas de una matriz, realizar operaciones matemáticas básicas con una clase calculadora, girar una matriz 90 grados y determinar la longitud de malla necesaria para cercar un terreno.
Este documento presenta el código de un programa en C++ que permite realizar diferentes operaciones con vectores, como suma, producto escalar, módulo, ángulo entre vectores, vector unitario, entre otras. El programa solicita los datos de dos vectores A y B e implementa un menú de opciones para seleccionar qué operación realizar con dichos vectores.
Este documento presenta dos algoritmos: uno para sumar dos números y otro para calcular el área de un triángulo. Ambos algoritmos definen el problema, analizan las entradas y salidas, y diseñan los pasos del proceso de cálculo requerido.
Este documento contiene cuatro problemas de programación relacionados con estructuras de datos y algoritmos numéricos. El primer problema involucra el cálculo del número de pasos necesarios para cambiar entre dos precios mostrados en carretes giratorios. El segundo problema implica la impresión de la transpuesta de una matriz dada. El tercer problema pide imprimir los números no fibonacci menores a un límite dado. El cuarto problema consiste en generar ciclos numéricos tomando solo el digito de la suma.
Ejercicios de aplicación de las instrucciones de entrada y salida en C++Ales Sandro Gaibor
El documento presenta 15 programas en C de ejercicios de entrada y salida de datos que resuelven problemas matemáticos como calcular la suma, media, área de triángulos, verificar números primos, calcular factoriales, mostrar números naturales, pares y múltiplos, realizar cuentas regresivas, determinar si un número es par o impar, mayor a 100, calcular raíces cuadradas y restos de divisiones. Los programas fueron desarrollados por 3 autores.
El crecimiento urbano de las ciudades latinoamericanas ha sido muy rápido en las últimas décadas, debido a factores como el crecimiento demográfico, la migración del campo a la ciudad, y el desarrollo económico. Este crecimiento ha llevado a la expansión de las ciudades hacia las áreas periféricas, creando problemas como la falta de infraestructura adecuada, la congestión del tráfico, la contaminación ambiental, y la segregación social.
En muchas ciudades latinoamericanas, el crecimiento urbano ha sido desorganizado y ha resultado en la formación de asentamientos informales o barrios marginales, donde las condiciones de vida son precarias y la población carece de servicios básicos como agua potable, electricidad y transporte público.
Además, el crecimiento urbano descontrolado ha llevado a la destrucción de áreas verdes, la deforestación y la pérdida de biodiversidad, lo que tiene un impacto negativo en el medio ambiente y en la calidad de vida de los habitantes de las ciudades.
Para hacer frente a estos desafíos, las ciudades latinoamericanas están implementando políticas de planificación urbana sostenible, promoviendo la densificación urbana, la revitalización de áreas degradadas, la preservación de espacios verdes y la mejora de la infraestructura y los servicios públicos. También se están llevando a cabo programas de vivienda social y de regularización de asentamientos informales, con el objetivo de mejorar la calidad de vida de los habitantes de estas áreas.
Catalogo General Grespania Ceramica Amado Salvador Distribuidor Oficial ValenciaAMADO SALVADOR
Descarga el catálogo general de productos cerámicos Grespania, presentado por Amado Salvador, distribuidor oficial de cerámica Grespania. Explora la amplia selección de productos Grespania de alta calidad diseñados para brindar belleza y durabilidad a tus proyectos de construcción y diseño.
Grespania es reconocida por la excelencia en productos cerámicos. Como distribuidor oficial de cerámica Grespania, Amado Salvador te ofrece acceso a una variedad de productos que cumplen con los más altos estándares de calidad.
En este catálogo encontrarás una amplia gama de opciones en azulejos, pavimentos y revestimientos cerámicos, todos ellos fabricados con la alta calidad que caracteriza a Grespania. Desde diseños modernos hasta clásicos atemporales, los productos satisfacen las necesidades de cualquier proyecto.
Confía en Amado Salvador como tu distribuidor oficial de cerámica Grespania para encontrar los productos perfectos que se adapten a tus proyectos. Descarga el catálogo ahora y descubre los productos de Grespania. Amado Salvador distribuidor oficial Grespania en Valencia.
Catalogo General Cosmic Amado Salvador distribuidor oficial ValenciaAMADO SALVADOR
El catálogo general de Cosmic, disponible en Amado Salvador, distribuidor oficial de Cosmic, presenta una amplia variedad de accesorios, complementos y mobiliario de baño que destacan por su calidad, estética y diseño. En este catálogo, se pueden encontrar modelos innovadores diseñados para satisfacer las necesidades de cualquier cuarto de baño, asegurando la elegancia y la durabilidad en cada pieza.
Amado Salvador, como distribuidor oficial de Cosmic, ofrece a sus clientes productos que redefinirán la estética y el confort de sus cuartos de baño. Los accesorios de baño de Cosmic están fabricadas con materiales de alta calidad que garantizan resistencia y un acabado impecable, ideal para cualquier proyecto de decoración o renovación. La colaboración entre Amado Salvador y Cosmic asegura que los clientes reciban productos de primera categoría.
Este catálogo es una herramienta esencial para quienes buscan una fusión única de formas elegantes y una atención meticulosa a los detalles que aporten un valor añadido al cuarto de baño. Cosmic, a través de Amado Salvador, distribuidor oficial, pone a disposición una selección variada que incluye diferentes estilos, acabados y opciones, todas pensadas para adaptarse a las preferencias de los clientes.
La distribución oficial de Cosmic por parte de Amado Salvador garantiza acceso a las últimas novedades y tendencias en complementos para baño. Cada producto ha sido seleccionado minuciosamente para ofrecer lo mejor en términos de diseño y funcionalidad. Descubre en este catálogo cómo Amado Salvador, distribuidor oficial de Cosmic, puede transformar el cuarto de baño de tu hogar brindando una funcionalidad excepcional para satisfacer tus necesidades diarias. Amado Salvador distribuidor oficial de Cosmic en Valencia.
Manual.pdfsoporte y mantenimientode equipo de computo
Josue pedro ramos quispe
1. PRIMER INFORME DE LABORATORIO
DESARROLLO DE LOS EJERCICIOS
1. Diseñar el algoritmo y programa para hallar el cociente y residuo de dos números enteros.
I. Análisis:
a) Datos de entrada: a, b.
b) Datos de salida: c, r.
c) Modelo matemático/lógico:
c=a divb
r=a modb
II. Diseño
a) Diagrama de flujo
inicio
a, b lee
c=a/b
r=a%b
c, r imp.
fin
2. b) Pseudocódigo:
Inicio
Entrada: lee: a, b
Proceso:
c=a/b
r=a%b
in=(r1*10000)+(r2*1000)+(r3*100)+(r4*10)+r5
Salida: imprime: c, r
Fin
III. Aplicación
a) Codificación:
1. package ejercicios;
2. importjava.util.Scanner;
3. publicclassEjercicios{
4. publicstaticvoidmain(String[] args) {
5. inta=0,b=0,c=0,r=0;
6. Scannerentrada=new Scanner(System.in);
7. System.out.println("ingrese el primernumero");
8. a=entrada.nextInt();
9. System.out.println("ingrese el primernumero");
10. b=entrada.nextInt();
11. c=a/b;
12. r=a%b;
13. System.out.println("el residuoes:"+r);
14. System.out.println("el cociente es:"+c);
15. }
16. }
b) Pruebade escritorio
4. b) Pseudocódigo:
Inicio
Entrada: lee: n
Proceso:
n1=n/10
r1=n%10
n2=n1/10
r2=n1%10
n3=n2/10
r3=n2%10
n4=n3/10
r4=n3%10
r5=n4%10
in=(r1*10000)+(r2*1000)+(r3*100)+(r4*10)+r5
Salida: imprime: in
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio2;
2. import java.util.Scanner;
3. public class Ejercicio2 {
4. public static void main(String[] args) {
5. int n,r1,r2,r3,r4,r5,in,n1,n2,n3,n4;
6. System.out.println("ingrese un número con cinco dígitos");
7. Scanner num=new Scanner (System.in);
8. n=num.nextInt ();
9. n1=n/10;
10. r1=n%10;
11. n2=n1/10;
12. r2=n1%10;
13. n3=n2/10;
14. r3=n2%10;
5. 15. n4=n3/10;
16. r4=n3%10;
17. r5=n4%10;
18. in=(r1*10000)+(r2*1000)+(r3*100)+(r4*10)+r5;
19. System.out.println("El número con cinco dígitos inversamente es:");
20. if(n%10==0)
21. {
22. System.out.println("0"+in);
23. }
24. else
25. {
26. System.out.println(in);
27. }
28. }
29. }
b) Prueba de escritorio:
3. Diseñarel algoritmoyprogramaque permitacrear un programapara convertirunacantidad
dada ensegundosahoras, minutosysegundos.
I. Análisis
a) Datos de entrada:s
b) Datos de salida:h,m, sf
c) ModeloM. /L.:
h=s div3600
s=s mod 3600
6. m=s div60
s=s mod 60
sf=s
II. Diseño:
a) Diagrama de flujo:
b) Pseudocódigo:
inicio
datosde entrada:s
proceso:
h=s/3600
s=s%3600
m=s/60
s=s%60
sf=s
datosde salida:h,m, sf
fin
III. Aplicación:
a) Codificación:
1. package ejercicio.pkg3;
Inicio
s lee
c, r imp.
h=s/3600
s=s%3600
m=s/60
s=s%60
sf=s
Fin
7. 2. importjava.util.Scanner;
3. publicclassEjercicio3{
4. publicstaticvoidmain(String[] args) {
5. ints=0, h=0,m=0,sf=0 ;
6. Scannerentrada=new Scanner(System.in);
7. System.out.println("ingrese lacantidad de segundos");
8. s=entrada.nextInt();
9. h=s/3600;
10. s=s%3600;
11. m=s/60;
12. s=s%60;
13. sf=s;
14. System.out.println("hay"+h+"horas"+m+" minutos"+sf+"segundos");
15. }
16. }
b) Pruebade escritorio
4. Diseñarel algoritmoyprogramapara determinarsi unnúmeroenteroespositivo,negativoo
neutro.
I. Análisis:
a) Datos de entrada: x.
b) Datos de salida: “positivo”, “negativo”, “neutro”.
c) Modelo matemático/lógico:
if(x==0)
Verdad: “El número es neutro”
Falso: if(x>0)
Verdad: “El número es positivo”
Falso: “El número es negativo”
8. II. Diseño:
a) Diagrama de flujo:
“negativo”“positivo”
inicio
x lee
fin
if
x==0
if
x>0
V F
V
F
“neutro”
9. b) Pseudocódigo:
Inicio
Entrada: lee: x
Proceso:
if(x==0)
Verdad: “El número es neutro”
Falso: if(x>0)
Verdad: “El número es positivo”
Falso: “El número es negativo”
Salida: imprime: “neutro”, “positivo”, “negativo”.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio4;
2. import java.util.Scanner;
3. public class Ejercicio4 {
4. public static void main(String[] args) {
5. int x;
6. System.out.println("Ingrese un número entero");
7. Scanner num=new Scanner(System.in);
8. x=num.nextInt();
9. if(x==0)
10. {
11. System.out.println("El número es neutro");
12. }
13. else
14. {
15. if(x>0)
16. {
17. System.out.println("El número es positivo");
18. }
19. else
20. {
21. System.out.println("El número es negativo");
22. }
23. }
10. 24. }
25. }
b) Prueba de escritorio:
5. Diseñarel algoritmoyprogramatal que dado tresnúmerosenterosdevolverel número
mayor.
I. Análisis
a) Datos de entrada:a, b, c
b) Datos de salida:a
c) ModeloM. /L.:
Si a<b
V:aux=a
a=b
b=aux
Si a<c
V:aux=a
a=c
c=aux
II. Diseño:
a) Diagrama de flujo:
11. b) Pseudocódigo:
inicio
datosde entrada:a, b, c
proceso:
if(a<b)
aux=a
a=b
b=aux
if(a<c)
inicio
a,b,c lee
fin
a imp.
aux=a
a=b
b=aux
if
a<b
aux=a
a=c
c=aux
if
a<c
V
F
V
F
13. 6. Diseñarel algoritmoyprogramatal que dado lahora, minutoysegundo,encuentre lahora
del siguientesegundo.
I. Análisis:
a) Datos de entrada: h,m,s.
b) Datos de salida:hn,mn,sn.
c) Modelomatemático/lógico:
t=h*3600+m*60+s+1
hn=t/3600
r=t%3600
mn=r/60
r1=r%60
sn=r1
II. Diseño:
a) Diagrama de flujo:
t=h*3600+m*60+s+1
hn=t/3600
r=t%3600
mn=r/60
r1=r%60
sn=r1
fin
Inicio
h,m,s lee
Hn,mn,sn
14. c) Pseudocódigo:
Inicio
Entrada: lee: h,m,s.
Proceso:
t=h*3600+m*60+s+1
hn=t/3600
r=t%3600
mn=r/60
r1=r%60
sn=r1
Salida: imprime: hn,mn,sn.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio6;
2. import java.util.Scanner;
3. public class Ejercicio6 {
4. public static void main(String[] args) {
5. int h,m,s,t,r,hn,mn,sn,r1;
6. System.out.println("Ingrese la hora");
7. Scanner num=new Scanner(System.in);
8. h=num.nextInt();
9. System.out.println("Ingrese el minuto");
10. Scanner num1=new Scanner(System.in);
11. m=num.nextInt();
12. System.out.println("Ingrese los segundos");
13. Scanner num2=new Scanner(System.in);
14. s=num.nextInt();
15. t=h*3600+m*60+s+1;
16. hn=t/3600;
17. r=t%3600;
18. mn=r/60;
19. r1=r%60;
20. sn=r1;
21. System.out.println("La hora del siguiente segundo es:");
15. 22. System.out.println(hn+":"+mn+":"+sn);
23. }
24. }
c) Prueba de escritorio:
7. Diseñar el algoritmo y programa tal que dada la fecha (D,M,A) encuentre la fecha del día
siguiente.
I. Análisis:
a) Datos de entrada: d, m, a.
b) Datos de salida: d, m, a.
c) Modelo matemático/lógico:
if(d>=28)
switch (m)
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
if(d==31)
d=d-30
m=m+1
else
d=d+1
case 2:
r=a%4
if(r==0)
16. d=29
else
d=d-27
m=m+1
case 4:
case 6:
case 9:
case 11:
if(d==30)
d=d-29
m=m+1
else
d=d+1
case 12:
if(d==31)
d=1
m=1
a=a+1
else
d=d+1
else
d=d+1
II. Diseño
a) Diagrama de flujo
18. b) Pseudocódigo:
Inicio
Entrada: lee: d, m, a
Proceso:
if(d>=28)
{
switch (m)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
{
if(d==31)
{
d=d-30;
m=m+1;
}
else
{
d=d+1;
}
}
break;
case 2:
{
r=a%4;
if(r==0)
{
d=29;
}
else
{
d=d-27;
m=m+1;
}
}
break;
case 4:
case 6:
case 9:
22. 8. Diseñarel algoritmoyprogramaque permitadeterminarsi unalumnoapruebaorepruebaun
curso,sabiendoque aprobarási su promediode trescalificacionesesmayoroigual a 70;
repruebaencaso contrario.
I. Análisis:
a) Datos de entrada: n1,n2,n3.
b) Datos de salida: “aprueba”, “reprueba”.
c) Modelo matemático/lógico:
P=(n1+n2+n3)/3
if(P>=70)
Verdad: “aprueba”
Falso: “reprueba”
II. Diseño:
a) Diagrama de flujo:
“aprueba” “reprueba”
inicio
n1,n2,n3
fin
if
P>=70
V
P=(n1+n2+n3)/3
F
23. c) Pseudocódigo:
Inicio
Entrada: lee: n1, n2, n3.
Proceso:
P=(n1+n2+n3)/3
if(P>=70)
Verdad: “aprueba”
Falso: “reprueba”
Salida: imprime: “aprueba”, “reprueba”.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio8;
2. import java.util.Scanner;
3. public class Ejercicio8 {
4. public static void main(String[] args) {
5. int n1,n2,n3,p;
6. System.out.println("Ingrese la pimera nota");
7. Scanner num=new Scanner(System.in);
8. n1=num.nextInt();
9. System.out.println("Ingrese la segunda nota");
10. Scanner num1=new Scanner(System.in);
11. n2=num.nextInt();
12. System.out.println("Ingrese la tercera nota");
13. Scanner num2=new Scanner(System.in);
14. n3=num.nextInt();
15. p=(n1+n2+n3)/3;
16. if(p>=70)
17. {
18. System.out.println("Aprueba el curso");
19. }
20. else
24. 21. {
22. System.out.println("Reprueba el curso");
23. }
24. }
25. }
b) Prueba de escritorio:
9. Diseñarel algoritmoyprogramaque permitaobtenercuantodinerose le descuentaal
cliente,bajolassiguientescondiciones:enunsupermercadose hace unapromoción,
mediante lacual el cliente obtiene undescuento,dependiendode unnúmeroque se escoge
al azar. Si el numeroescogidoesmenorque 74 el descuentoesde 15% sobre el total de la
compra,si esmayor o igual a 74 el descuentoesde 20%.
I) Análisis:
a) Datos de entrada: a, b.
b) Datos de salida: tp.
c) Modelo matemático/lógico:
si b>=74
v:tp= (a*0.8)
else
f: tp=(a*0.85)
II) Diseño
a) Diagrama de flujo
25. b) Pseudocódigo:
Inicio
Entrada: lee: a, b
Proceso:
If b>=74
v:tp=(int) (a*0.8)
else
v: tp=(int) (a*0.85)
Salida: imprime: tp
Fin
III) Aplicación
a) Codificación:
1. package ejercicio.pkg9;
2. importjava.util.Scanner;
3. publicclassEjercicio9{
4. publicstaticvoidmain(String[] args) {
5. inta=0,b=0;
inicio
a,b lee
if
b>=74
tp=(a*0.85)tp= (a*0.8)
fin
d,m,a imp.
FV
26. 6. inttp=0;
7. Scannerentrada=new Scanner(System.in);
8. System.out.println("ingrese el montoapagar");
9. a=entrada.nextInt();
10. System.out.println("ingrese unnumeroal azar");
11. b=entrada.nextInt();
12. if(b>=74)
13. {
14. tp=(int) (a*0.8);
15. }
16. else
17. {
18. tp=(int) (a*0.85);
19. }
20. System.out.println("el montoapagar es:"+tp);
21. }
22. }
b) Pruebade escritorio
10. Diseñarel algoritmoyprogramaque determine lacantidadde dineroque recibiráun
trabajadorpor conceptode las horasextrastrabajadasque determine laremuneraciónde un
trabajador,ingresandototal de horastrabajadasy el pago porhora. Consideraque porcada
hora extraenel trabajo se le abonará el importe de unahora y media.El tiempoextrase
consideracuandoel total de horas seamayor a 40 horas.
I. Análisis:
a) Datos de entrada: tht,ph.
b) Datos de salida: dht.
c) Modelo matemático/lógico:
if(tht>40)
Verdad: t=tht-40
dht=t(3ph/2)
28. Falso:
dht=0
Salida: imprime: dht.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio10;
2. import java.util.Scanner;
3. public class Ejercicio10 {
4. public static void main(String[] args) {
5. int tht,ph,t,dht;
6. System.out.println("Ingrese el total de horas trabajadas");
7. Scanner num=new Scanner(System.in);
8. tht=num.nextInt();
9. System.out.println("Ingrese el pago por hora");
10. Scanner num1=new Scanner(System.in);
11. ph=num1.nextInt();
12. if(tht>40)
13. {
14. t=tht-40;
15. dht=t*(3*ph/2);
16. }
17. else
18. {
19. dht=0;
20. }
21. System.out.println("La cantidad de dinero que recibirá por horas extras
trabajadas es:");
22. System.out.println(dht+" soles");
23. }
24. }
b) Prueba de escritorio:
29. 11. Diseñar el algoritmo y programa que determine la cantidad de dinero que recibirá un
trabajadorpor conceptode las horasextrastrabajadasen unaempresa,sabiendoque cuando
lashoras de trabajo excedende 40,el resto se considera horas extras y que estas se pagan al
doble de unahora normal cuando no exceden de 8; si las horas extras superan de 8 se pagan
las primeras 8 al doble de lo que se pagan las horas normales y el resto al triple.
I. Análisis:
a) Datos de entrada: ht, ph.
b) Datos de salida: st.
c) Modelo matemático/lógico:
Si ht>=41
V: hx=ht-40;
si hx>=9
v: int s1=0,s2=0,s3=0;
s1=8*2*ph;
hx=hx-8;
s2=hx*ph*3;
s3=40*ph;
st=s1+s2+s3;
F: st=(hx*ph*2)+(40*ph);
F: st=ht*ph;
II. Diseño
a) Diagrama de flujo
33. 12. Diseñarel algoritmoyprogramapara calcularla utilidadque untrabajadorrecibe enel
repartoanual de utilidadessi este se le asignaunporcentaje de susalariomensual que
depende de suantigüedadenlaempresade acuerdoconlasiguiente tabla:
I. Análisis:
a) Datos de entrada: sm,ant.
b) de salida: u.
c) Modelo matemático/lógico:
if(ant<1)
Verdad:
u=sm/20
Falso:
If(ant>=1&&ant<2)
Verdad:
u=(7/100)sm
falso:
If(ant>=2&&ant<5)
Verdad:
u=sm/10
falso:
If(ant>=5&&ant<10)
Verdad:
u=3sm/20
falso:
If(ant>=10&&ant<20)
Verdad:
u=sm/5
II. Diseño:
a) Diagrama de flujo:
Tiempo Utilidad
Menosde 1 año
1 año o másy menosde 2 años
2 añoso más y menosde 5 años
5 añoso más y menosde 10 años
10 años o más y menosde 20 años
5% del salario
7% del salario
10% del salario
15% del salario
20% del salario
35. b) Pseudocódigo:
Inicio
Entrada: lee: sm, ant .
Proceso:
if(ant<1)
Verdad:
u=sm/20
Falso:
If(ant>=1&&ant<2)
Verdad:
u=(7/100)sm
falso:
If(ant>=2&&ant<5)
Verdad:
u=sm/10
falso:
If(ant>=5&&ant<10)
Verdad:
u=3sm/20
falso:
If(ant>=10&&ant<20)
Verdad:
u=sm/5
Salida: imprime: u.
Fin
IV. Aplicación:
a) Codificación:
1. package ejercicio.pkg12;
2. import java.util.Scanner;
3. public class Ejercicio12 {
4. public static void main(String[] args) {
5. double sm,ant;
6. double u;
36. 7. System.out.println("Ingrese su salario mensual");
8. Scanner num=new Scanner(System.in);
9. sm=num.nextDouble();
10. System.out.println("Ingrese el tiempo de trabajo en la empresa en años");
11. Scanner num1=new Scanner(System.in);
12. ant=num1.nextDouble();
13. if(ant<1)
14. {
15. u=sm/20;
16. System.out.println("La utilidad que recibe en el reparto anual es:");
17. System.out.print(u+" soles");
18. }
19. else
20. { if(ant>=1&&ant<2)
21. {
22. u=(7/100)*sm;
23. System.out.println("La utilidad que recibe en el reparto anual es:");
24. System.out.print(u+"soles");
25. }
26. else{
27. if(ant>=2&&ant<5)
28. {
29. u=sm/10;
30. System.out.println("La utilidad que recibe en el reparto anual es:");
31. System.out.print(u+"soles");
32. }
33. else {
34. if(ant>=5&&ant<10)
35. {
36. u=3*sm/20;
37. System.out.println("La utilidad que recibe en el reparto anual es:");
38. System.out.print(u+"soles");
39. }
40. else {
41. if(ant>=10&&ant<20)
42. {
43. u=sm/5;
44. System.out.println("La utilidad que recibe en el reparto anual es:");
45. System.out.print(u+"soles");
46. }
47. }
48. }
49. }
37. 50. }
51. }
52. }
b) Prueba de escritorio:
13. Una personaenferma,que pesa70 Kg, se encuentraenreposoydeseasabercuántascalorías
consume sucuerpodurante todo el tiempoque realice unamismaactividad.Lasactividades
que tiene permitidorealizarsonúnicamentedormiroestarsentadoenreposo.Losdatos que
tiene sonque estandoendormidoconsume 1.08calorías por minutoy estandosentadoen
reposoconsume 1.66 calorías por minuto.
I) Análisis:
a) Datos de entrada: h.
b) Datos de salida: c.
c) Modelo matemático/lógico:
si h==0
v: h=h*60
c=h*1.08
si h==1
v: h=h*60;
c= h*1.66
II) Diseño
a) Diagrama de flujo
40. 23. System.out.println("consume "+c+"sentado");
24. }
25. }
b) Pruebade escritorio
14. Una empresaquiere hacerunacompra de variaspiezas de la mismaclase a una fábricade
refacciones. Laempresa,dependiendodel montototal de lacompra,decidiráquehacerpara
pagar al fabricante.Si el montototal de la compraexcede de $500 000 la empresatendrála
capacidadde invertirde supropiodineroun55 % del montode la compra, pedirprestadoal
banco un30 %y el resto lopagará solicitandouncréditoal fabricante.Si el montototal de la
compra no excede de $500 000 la empresatendrácapacidadde invertirde supropiodinero
un 70% y el restante 30% lo pagará solicitandocréditoal fabricante.El fabricante cobrapor
conceptode interésun20% la cantidadque se le pague a crédito.
I. Análisis:
a) Datos de entrada:mtc.
b) Datos de salida: pd,b,c,cpcf.
c) Modelo matemático/lógico:
if(mtc>50000)
Verdad: pd=(11*mtc)/20
b =(3*mtc)/10
c =(3*mtc)/20
cpcf=c/5
Falso: pd=(7*mtc)/10
b =0
c =(3*mtc)/10
cpcf=c/5
41. II. Diseño:
a) Diagrama de flujo:
b) Pseudocódigo:
Inicio
Entrada: lee: mtc.
Proceso:
if(mtc>50000)
Verdad: pd=(11*mtc)/20
b =(3*mtc)/10
c =(3*mtc)/20
cpcf=c/5
Falso: pd=(7*mtc)/10
pd=(11*mtc)/20
b=(3*mtc)/10
c=(3*mtc)/20
cpcf=c/5
mtc >500 000
ant<1
I
pd=(7*mtc)/20
b=0
c=(3*mtc)/10
cpcf=c/5
pd,b, c,cpcf
inicio
mtc
fin
V F
42. b =0
c =(3*mtc)/10
cpcf=c/5
Salida: imprime: pd,b,c,cpcf.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio14;
2. import java.util.Scanner;
3. public class Ejercicio14 {
4. public static void main(String[] args) {
5. double mtc,c,b,pd,cpcf;
6. System.out.println("Ingrese el monto total de la compra");
7. Scanner num=new Scanner(System.in);
8. mtc=num.nextInt();
9. if(mtc>500000)
10. {
11. pd=(double)11*mtc/20;
12. b=(double)3*mtc/10;
13. c=(double)3*mtc/20;
14. cpcf=(double)c/5;
15. }
16. else
17. {
18. pd=(double)7*mtc/20;
19. b=0;
20. c=(double)3*mtc/10;
21. cpcf=(double)c/5;
22. }
23. System.out.println("La empresa invertirá de su propio dinero: "+pd+"
soles");
24. System.out.println("La empresa pedirá prestado al banco: "+b+" soles");
25. System.out.println("La empresa solicitará un crédito de: "+c+" soles al
fabricante");
26. System.out.println("El fabricante le cobrará:"+cpcf+" solesde interés a la
empresa por dicho crédito");
27. }
28. }
43. b) Prueba de escritorio:
15. Que permitaingresarel preciounitarioylacantidadde un artículo.Se requiere determinarel
importe de ventabruto,el descuentoyel importe de ventaneto.El descuentoseráde
acuerdoa la escalasiguiente:
IMPORTE DE VENTA BRUTO DESCUENTO
<500.00 5%
>=500.00 y <=750.00 8%
>750.00 10%
I. Análisis:
a) Datos de entrada: a, b.
b) Datos de salida: vb, d, vn.
c) Modelo matemático/lógico:
vb=a*b;
si vb<500
v: d=vb*0.05
vn=vb-d;
si vb>=500&&vb<=750
v: d=vb*0.08
vn=vb-d;
si vb>750
{
d=(int) (vb*0.1);
vn=vb-d;
}
44. I) Diseño
a) Diagrama de flujo
inicio
ht, th lee
if
vb<500
fin
c imp.
F
V
vb>=500&
&vb<=750
F
V
d= (vb*0.05);
vn=vb-d
d= (vb*0.08)
vn=vb-d
vb=a*b
vb>75
0
F
V
d= (vb*0.1)
vn=vb-d
46. 18. {
19. d=(int) (vb*0.08);
20. vn=vb-d;
21. }
22. if(vb>750)
23. {
24. d=(int) (vb*0.1);
25. vn=vb-d;
26. }
27. System.out.println("ventaenbruto:"+vb+"descuento:"+d+"importe de
ventaneta:"+vn);
28. }
29. }
b) Pruebade escritorio
16. Una compañía de segurosestáabriendounDpto.de Finanzasyestablecióunprogramapara
captar clientes,que consisteenlosiguiente¨:Si el montoporel que se efectúalafianzaen
menorque $50 000 la cuota a pagar será por el 3% del monto,ysi el montoesmayor de $500
000 lacuota a para pagar seráel 2% del monto.La afianzadoradeseadeterminarcuál serála
cuota que debe pagarun cliente.
I. Análisis:
a) Datos de entrada: m.
b) Datos de salida: c.
c) Modelo matemático/lógico:
If (m<500000)
47. inicio
m
fin
V Fm<50 000
ant<1
I
C=(m*3)/100 C=m/50
c
Verdad:
C=(m*3)/100
Falso:
C=m/50
II. Diseño:
a) Diagrama de flujo:
b) Pseudocódigo:
Inicio
Entrada: lee: m.
Proceso:
48. If (m<500000)
Verdad:
C=(m*3)/100
Falso:
C=m/50
Salida: imprime:c.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio.pkg16;
2. import java.util.Scanner;
3. public class Ejercicio16 {
4. public static void main(String[] args) {
5. double m,c;
6. System.out.println("ingrese el monto de la fianza");
7. Scanner num=new Scanner (System.in);
8. m=num.nextDouble ();
9. if(m<50000)
10. {
11. c=(double)m*3/100;
12. }
13. else
14. {
15. c=(double)m/50;
16. }
17. System.out.println("La cuota que debe pagar el cliente es: "+c+" soles");
18. }
19. }
b) Prueba de escritorio:
49. 17. Que permitaingresarlanota final de unexamenydetermineel calificativode acuerdoala
siguiente escala:
NOTAS CALIFICATIVO
0-10 Deficiente
11-14 Regular
15-18 Bueno
19-20 Excelente
Cualquierotrovalordeberávisualizarunmensaje de ERROR
I. Análisis:
a) Datos de entrada: a.
b) Datos de salida: a.
c) Modelo matemático/lógico:
Si a>=0&&a<=20
V:
Si a>=0&&a<=10
V: “nota " +a+ "calificativo: DEFICIENTE"
Si a>=11&&a<=14
V: “nota "+a +“calificativo: REGULAR"
Si a>=15&&a<=18
V:"nota "+a+ “calificativo: BUENO"
Si a>=19&&a<=20
V: "nota "+a+ “calificativo: EXCELENTE"
F:"la nota ingresada es incorrecta"
II. Diseño
a) Diagrama de flujo
50. inicio
a lee
a>=0&
&a<=20
fin
cimp
"la nota ingresada es incorrecta"
FV
a>=0&
&a<=1
0
F
V
a>=11&
&a<=14
F
V
C=“nota "+a +“calificativo:DEFICIENTE "
C=“nota "+a +“calificativo:REGULAR"
a>=15
&&a<=
F
V
C="nota "+a+ “calificativo:BUENO"
a>=19
&&a<=
F
V
C="nota "+a+ “calificativo:EXCELENTE"
51. b) Pseudocódigo:
Inicio
Entrada: lee: a, b
Proceso:
if(a>=0&&a<=20)
{
if(a>=0&&a<=10)
{
"nota "+a+"calificativo:DEFICIENTE"
}
if(a>=11&&a<=14)
{
"nota"+a+"calificativo:REGULAR"
}
if(a>=15&&a<=18)
{
"nota "+a+"calificativo:BUENO"
}
if(a>=19&&a<=20)
{
“nota "+a+"calificativo:EXCELENTE"
}
}
else
{
“la nota ingresadaesincorrecta"
}
Salida: imprime: a
Fin
III. Aplicación
a) Codificación:
1. package ejercicio.pkg17;
2. importjava.util.Scanner;
3. publicclassEjercicio17{
4. publicstaticvoidmain(String[] args) {
5. inta=0;
6. Scannerentrada=new Scanner(System.in);
7. System.out.println("Ingreselanotafinal");
8. a=entrada.nextInt();
9. if(a>=0&&a<=20)
52. 10. {
11. if(a>=0&&a<=10)
12. {
13. System.out.println("nota"+a+"calificativo:DEFICIENTE");
14. }
15. if(a>=11&&a<=14)
16. {
17. System.out.println("nota"+a+"calificativo:REGULAR");
18. }
19. if(a>=15&&a<=18)
20. {
21. System.out.println("nota"+a+"calificativo:BUENO");
22. }
23. if(a>=19&&a<=20)
24. {
25. System.out.println("nota"+a+"calificativo:EXCELENTE");
26. }
27. }
28. else
29. {
30. System.out.println("lanotaingresadaesincorrecta");
31. }
32. }
33. }
b) Pruebade escritorio
18. En una instituciónlaDirecciónordenóaumentar con 2 puntos sobre el promedio final a todo
aquel alumno aprobado que haya participado en el desfile institucional y con 3 puntos al
alumnodesaprobado.De nocumplirse conestascondicionesel promediopermanecerá igual.
I. Análisis:
a) Datos de entrada:pf,d.
b) Datos de salida: n.
c) Modelo matemático/lógico:
53. Switch(d)
Caso 1:
If (pf>10)
Verdad: n=pf+2
Falso : n=pf+3
Caso 2:
n=pf
II. Diseño:
a) Diagrama de flujo:
d
inicio
m
fin
V F
Caso 1
pf>10
ant<1
I
n=pf+2 n=pf+3
Caso2 n=pf
n
54. b) Pseudocódigo:
Inicio
Entrada: lee: pf,d
Proceso:
Switch(d)
Caso 1:
If (pf>10)
Verdad: n=pf+2
Falso : n=pf+3
Caso 2:
n=pf
Salida: imprime:n.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio.pkg18;
2. import java.util.Scanner;
3. public class Ejercicio18 {
4. public static void main(String[] args) {
5. int pf,d,n=0;
6. System.out.println("Ingrese su promedio final");
7. Scanner num=new Scanner(System.in);
8. pf=num.nextInt();
9. System.out.println("Ingrese :");
10. System.out.println(" 1: Si participó en el desfile");
11. System.out.println(" 2: Si no participó en el desfile");
12. Scanner num1=new Scanner(System.in);
13. d=num.nextInt();
14. switch(d)
15. {
16. case 1:
17. if(pf>10)
18. {
55. 19. n=pf+2;
20. }
21. else
22. {
23. n=pf+3;
24. }
25. break;
26. case 2:
27. n=pf;
28. break;
29. }
30. System.out.println("El promediofinal del alumnode acuerdoasusméritos es:
"+n);
31. }
32. }
b) Prueba de escritorio:
19. Ingresar3 númerosenterosydeterminarsi unode elloseslasumade losotrosdos.
I. Análisis:
a) Datos de entrada: a, b, c.
b) Datos de salida: a,b,c.
c) Modelo matemático/lógico:
si a==(b+c)
v: a+" es igual a la suma de "+b+"+"+c
si b==(a+c)
v:b+" es igual a la suma de "+a+"+"+c
si c==(a+b)
v:c+" es igual a la suma de "+b+"+"+a
F:"ninguna suma es igual "
56. II. Diseño
a) Diagrama de flujo
inicio
a,b,c lee
a==(b+c)
fin
F
V
b==(a+c)
F
V
a+" es igual a la
suma de
"+b+"+"+c
b+" es igual a la
suma de "+a+"+"+c
c==(a+b
)
F
V
c+" esigual a la suma
de "+b+"+"+a
57. b) Pseudocódigo:
Inicio
Entrada: lee: a, b, c
Proceso:
if (a==(b+c))
{
a+" es igual a la suma de "+b+"+"+c
}
If (b==(a+c))
{
b+" es igual a la suma de "+a+"+"+c
}
If (c==(a+b))
{
c+" es igual a la suma de "+b+"+"+a
}
else
{
"ninguna suma es igual "
}
Salida: imprime: a, b, c
Fin
III. Aplicación
a) Codificación:
1. package ejercicio.pkg19;
2. importjava.util.Scanner;
3. publicclassEjercicio19{
4. publicstaticvoidmain(String[] args) {
5. inta=0,b=0,c=0;
6. Scannerentrada=new Scanner(System.in);
7. System.out.println("ingrese el primernumero");
8. a=entrada.nextInt();
9. System.out.println("ingrese el segundonumero");
10. b=entrada.nextInt();
11. System.out.println("ingrese el tercernumero");
12. c=entrada.nextInt();
13. if (a==(b+c))
14. {
15. System.out.println(a+"esigual ala sumade "+b+"+"+c);
16. }
17. if(b==(a+c))
18. {
19. System.out.println(b+"esigual ala sumade "+a+"+"+c);
58. 20. }
21. if(c==(a+b))
22. {
23. System.out.println(c+"esigual ala suma de "+b+"+"+a);
24. }
25. else
26. {
27. System.out.println("ningunasumaesigual ");
28. }
29. }
30. }
b) Pruebade escritorio
20. En la escuelade PostGrado losalumnosllevan4cursosdurante un semestre.El costode cada
curso es el mismo. Se ha establecido un programa para estimular a los alumnos, el cual
consiste en lo siguiente: Si el promedio obtenido por un alumno al finalizar el semestre es
mayor o igual que 18. se le hará un descuento del 40% sobre el costo de su semestre y no se
le cobrará IGV; y si el promedio obtenido es menor que 18 deberá pagar su semestre
completo, más el 10% por derecho de IGV.
I. Análisis:
a) Datos de entrada:cc,p.
b) Datos de salida:ct.
c) Modelomatemático/lógico:
c=cc*4
d=(c*2)/5
IGV=c/10
If(p>=18)
Verdad:ct=c-d
Falso : ct=c+IGV
59. II. Diseño:
a) Diagrama de flujo:
b) Pseudocódigo:
Inicio
Entrada: lee: cc,p
Proceso:
c=cc*4
d=(c*2)/5
IGV=c/10
If(p>=18)
Verdad:ct=c-d
Falso : ct=c+IGV
Salida: imprime: ct.
Fin
p>=18
ant<1
If
ct=c+IGV
inicio
cc,p
fin
V
c=cc*4
d=(c*2)/5
IGV=c/10
F
ct=c-d
ct
60. III. Aplicación:
a) Codificación:
1. package ejercicio.pkg20;
2. import java.util.Scanner;
3. public class Ejercicio20 {
4. public static void main(String[] args) {
5. double cc,p,c,d ,IGV,ct;
6. System.out.println("Ingrese el costo de un curso");
7. Scanner num=new Scanner(System.in);
8. cc=num.nextDouble();
9. System.out.println("Ingrese su promedio semestral final");
10. Scanner num1=new Scanner(System.in);
11. p=num1.nextDouble();
12. c=cc*4;
13. d=(c*2)/5;
14. IGV=10;
15. if(p>=18)
16. {
17. ct=c-d;
18. }
19. else
20. {
21. ct=c+IGV;
22. }
23. System.out.println("El pago que debe realizar por su semestre completo es:
"+ct);
24. }
25. }
b) Prueba de escritorio:
61. 21. En una fábricade computadorasse planeaofreceralosclientesundescuentoque dependerá
del númerode computadorasque compre.Si lascomputadorassonmenosde cinco se les
dará un 10% de descuentosobre el total de lacompra; si el númerode computadorases
mayor o igual a cincoperomenosde diezse le otorga un 20% de descuento;ysi son10 o más
se lesda un 40% de descuento.El preciode cadacomputadoraes de $11,000.
I. Análisis:
a) Datos de entrada: c.
b) Datos de salida: pf.
c) Modelo matemático/lógico:
pt=c*11000;
si c<5
v:
d=pt*0.1
pf=pt-d
si c>=5&&c<10
v:
d=pt*0.2
pf=pt-d
si c>=10
v:
d=pt*0.4
pf=pt-d
II. Diseño
a) Diagrama de flujo
64. 20. if(c>=10)
21. {
22. d=(int) (pt*0.4);
23. pf=pt-d;
24. }
25. System.out.println("el descuentoes:"+d+"total a pagar es:"+pf);
26. }
27. }
b) Pruebade escritorio
22. Encontrar el mayor y el menorde tresnúmeros.
I. Análisis:
a) Datos de entrada: a, b, c.
b) Datos de salida: a, c.
c) Modelo matemático/lógico:
If(a<b)
aux=a
a=b
b=aux
If(a<c)
aux=a
a=c
c=aux
If(b<c)
aux=b
b=c
c=aux
66. b) Pseudocódigo:
Inicio
Entrada: lee: a, b, c.
Proceso:
If(a<b)
aux=a
a=b
b=aux
If(a<c)
aux=a
a=c
c=aux
If(b<c)
aux=b
b=c
c=aux
Salida: imprime: a, c.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio.pkg22;
2. import java.util.Scanner;
3. public class Ejercicio22 {
4. public static void main(String[] args) {
5. int a,b,c,aux;
6. System.out.println("Ingrese el primer número");
7. Scanner num=new Scanner(System.in);
8. a=num.nextInt();
9. System.out.println("Ingrese el segundo número");
10. Scanner num1=new Scanner(System.in);
11. b=num1.nextInt();
67. 12. System.out.println("Ingrese el tercer número");
13. Scanner num2=new Scanner(System.in);
14. c=num.nextInt();
15. if(a<b)
16. {
17. aux=a;
18. a=b;
19. b=aux;
20. }
21. if(a<c)
22. {
23. aux=a;
24. a=c;
25. c=aux;
26. }
27. if(b<c)
28. {
29. aux=a;
30. b=c;
31. c=aux;
32. }
33. System.out.println("El mayor es "+a);
34. System.out.println("El menor es "+c);
35. }
36. }
b) Prueba de escritorio:
23. Verificarsi unnúmeroXes múltiplode 3o de 5.
I. Análisis:
68. a) Datos de entrada: n.
b) Datos de salida: n.
c) Modelo matemático/lógico:
Si n%3==0&&n%5==0
V:n+" es multiplo de 3 y 5"
F:
Si n%3==0
V: n+" es multiplo de 3"
F:
Si n%5==0
V:n+" es multiplo de 5"
F:n+" no es multiplo ni 3 ni 5"
II. Diseño
a) Diagrama de flujo
inicio
n lee
n%3==0
&&n%5=
=0
n+" es múltiplo
de 3 y 5"
fin
F V
if
n%3==0
F V
n+" es
multiplo de 3"if
n%5==0
F V
n+" es
multiplo de 3"
n+" es
multiplo de 5"
70. 15. if(n%3==0)
16. {
17. System.out.println(n+"esmultiplode 3");
18. }
19. else
20. {
21. if(n%5==0)
22. {
23. System.out.println(n+"esmultiplode 5");
24. }
25. else
26. {
27. System.out.println(n+"noesmultiploni 3ni 5");
28. }
29. }
30. }
31. }
32. }
b) Pruebade escritorio
24. Dados tresnúmerosse desealosiguiente:
Si solodos númerossonigualesdesplegarunmensaje,entoncesse deberámostrarel
productodel númeroigual conel númerodiferenteynose deberárealizarningunode los
siguientesincisos.Si lostressonigualesdebe desplegarunmensaje,ynodebe efectuar
ningunaotra operación.Hallarladiferenciadel mayormenosel menor.
I. Análisis:
a) Datos de entrada: a, b, c.
b) Datos de salida: “a y b son =”, “a y c son =”, “a, b y c son =”, p, d.
c) Modelo matemático/lógico:
if(a==b&&b==c)
verdad: “a, b y c son =”
falso : if(a==b)
71. verdad:
p=a*c
“a y b son =”
Falso :
if(a==c)
verdad:
p=a*b
“a y c son =”
Falso :
If(a<b)
aux=a
a=b
b=aux
If(a<c)
aux=a
a=c
c=aux
If(b<c)
aux=b
b=c
c=aux
d=a-c
II. Diseño:
a) Diagrama de flujo:
72. F
F
V
V
d
F
F
V
V
V
inicio
a,b,c lee
“a, b y c son =”
i
f
If
a==b
If
a==c
If
p=a*b
aux=a
a=b
b=aux
if
a<b
V
F
aux=a
a=c
c=aux
if
a<c
F
d=a-c
aux=b
b=c
c=aux
if
b<c
fin
a==b&&b==c
p=a*c
p
p
73. b) Pseudocódigo:
Inicio
Entrada: lee: a, b, c.
Proceso:
if(a==b&&b==c)
verdad: “a, b y c son =”
falso : if(a==b)
verdad:
p=a*c
“a y b son =”
Falso :
if(a==c)
verdad:
p=a*b
“a y c son =”
Falso :
If(a<b)
aux=a
a=b
b=aux
If(a<c)
aux=a
a=c
c=aux
If(b<c)
aux=b
b=c
c=aux
d=a-c
Salida: imprime: “a y b son =”, “a y c son =”, “a, b y c son =”, p, d.
Fin
III. Aplicación:
a) Codificación:
1. package ejercico.pkg24;
2. import java.util.Scanner;
74. 3. public class Ejercico24 {
4. public static void main(String[] args) {
5. int a,b,c,aux,p,d;
6. System.out.println("Ingrese el primer número");
7. Scanner num=new Scanner(System.in);
8. a=num.nextInt();
9. System.out.println("Ingrese el segundo número");
10. Scanner num1=new Scanner(System.in);
11. b=num1.nextInt();
12. System.out.println("Ingrese el tercer número");
13. Scanner num2=new Scanner(System.in);
14. c=num.nextInt();
15. if(a==b&&b==c)
16. {
17. System.out.println(a+", "+b+" y "+c+" son iguales" );
18. }
19. else
20. {
21. if(a==b)
22. {
23. p=a*c;
24. System.out.println(a+" y "+b+" son iguales" );
25. System.out.println("El producto con el número diferente es "+p);
26. }
27. else
28. {
29. if(a==c)
30. {
31. p=a*b;
32. System.out.println(a+" y "+c+" son iguales" );
33. System.out.println("El producto con el número diferente es "+p);
34. }
35. else
36. {
37. if(a<b)
38. {
39. aux=a;
40. a=b;
75. 41. b=aux;
42. }
43. if(a<c)
44. {
45. aux=a;
46. a=c;
47. c=aux;
48. }
49. if(b<c)
50. {
51. aux=b;
52. b=c;
53. c=aux;
54. }
55. d=a-c;
56. System.out.println("la diferencia del mayor y menor es "+d);
57. }
58. }
59. }
60. }
61. }
b) Prueba de escritorio:
76. 25. Dada la fechaactual (día, mesy año),y la fechade nacimientode unapersona,diseñarun
algoritmoque determine laedadde estapersona.
I. Análisis:
a) Datos de entrada: d,m,a,dn,mn,an.
b) Datos de salida: e.
c) Modelo matemático/lógico:
e=a-an
si m==mn
v:
si d>=dn)
v:"usted tiene: "+e+" años"
f:
e=e-1;
"usted tiene: "+e+" años"
Si m>mn
V:"usted tiene: "+e+" años"
F:e=e-1;
“usted tiene: "+e+" años"
II. Diseño
a) Diagrama de flujo
80. 26. Un banco antesde concederun préstamo,compruebalosingresosdelsolicitante.Si los
ingresossonsuperioresa12000 solesanuales,el créditose concede.Si losingresosson
inferioresa12000 solesanualesperosuperioresa10000 solesyel cliente tiene máximo2
hijos,el créditose concede.Tambiénse le concede,si tieneingresosentre 8000 y 10000 soles
perono tiene hijos.Realizarunalgoritmoque pidalosingresosanualesyel númerode hijos
del solicitante,ydigasi se le da el créditoo no.
I. Análisis:
a) Datos de entrada: i, h.
b) Datos de salida: “c”, “nc”.
c) Modelo matemático/lógico:
If(i>12000)
Verdad: “c”.
Falso : if(i<12000&&i>10000)
Verdad: if(h<=2)
Verdad: “c”.
Falso : “nc”.
Falso : if(i>=8000&&i<=10000)
Verdad: if(h==0)
Verdad: “c”.
Falso : “nc”.
Falso: “nc”.
II. Diseño:
a) Diagrama de flujo:
81. b) Pseudocódigo:
Inicio
Entrada: lee:
Proceso:
If(i>12000)
Verdad: “c”.
Falso : if(i<12000&&i>10000)
Verdad: if(h<=2)
Verdad: “c”.
Falso : “nc”.
Falso : if(i>=8000&&i<=10000)
Verdad: if(h==0)
Verdad: “c”.
F
V
h<=12
ant<1
“nc”“c”
If
“nc”
h<=12
ant<1
If
F
F
V
V
inicio
h, i lee
“c ”
i
f
If
i<12000&&i>10000
If
i<8000&&i>100000
If
V
F
fin
i>12000
“nc”“c”
V
F
V
82. Falso : “nc”.
Falso: “nc”.
Salida: imprime: “c”, “nc”.
Fin
III. Aplicación:
a) Codificación:
1. package ejericio.pkg26;
2. import java.util.Scanner;
3. public class Ejericio26 {
4. public static void main(String[] args) {
5. int i,h;
6. System.out.println("Introduzca su ingreso anual:");
7. Scanner num=new Scanner(System.in);
8. i=num.nextInt();
9. System.out.println("Introcuzca el número de hijos que tenga:");
10. Scanner num1=new Scanner(System.in);
11. h=num1.nextInt();
12. if(i>12000)
13. {
14. System.out.println("Le damos el crédito");
15. }
16. else
17. {
18. if(i<12000&&i>10000)
19. {
a. if(h<=2)
b. {
c. System.out.println("Le damos el crédito");
d. }
e. else
f. {
g. System.out.println("No le damos el crédito");
h. }
20. }
21. else
22. {
a. if(i>=8000&&i<=10000)
b. {
c. if(h==0)
d. {
83. i. System.out.println("Le damos el crédito");
e. }
f. else
g. {
i. System.out.println("No le damos el crédito");
h. }
i. }
j. else
k. {
l. System.out.println("No le damos el crédito");
m. }
23. }
24. }
25. }
26. }
b) Prueba de escritorio:
27. Diseñe unalgoritmoque leael importe de la compray lacantidadde dinerorecibida,ycalcule
el cambioa devolver,teniendoencuentaque el númerode monedasque se devuelvendebe
sermínimo.Suponerque el sistemamonetarioutilizadoconstade monedasde 50,20, 5 y 1, y
que hay capacidadilimitadade monedas.
I. Análisis:
a) Datos de entrada: dc, dr.
b) Datos de salida: v, m50, m20, m5, m1.
c) Modelo matemático/lógico:
v=dr-dc
m50=v/50
r=v%50
m20=r/20
r=r%20
84. m5=r/5
r=r%5
m1=r
II. Diseño
a) Diagrama de flujo
b) Pseudocódigo:
Inicio
Entrada: lee: dc, dr.
Proceso:
v=dr-dc
m50=v/50
r=v%50
m20=r/20
r=r%20
m5=r/5
r=r%5
m1=r
Salida: imprime: v, m50, m20, m5, m1.
inicio
dc, dr lee
v=dr-dc
m50=v/50
r=v%50
m20=r/20
r=r%20
m5=r/5
r=r%5
m1=r
v, m50, m20, m5, m1imp.
fin
85. Fin
III. Aplicación
a) Codificación:
1. package jercicio.pkg27;
2. importjava.util.Scanner;
3. publicclassJercicio27{
4. publicstaticvoidmain(String[] args) {
5. intdc,dr,v,m50,m20,m5,m1,r;
6. Scannerentrada=new Scanner(System.in);
7. System.out.println("ingrese el importe de laventa");
8. dc=entrada.nextInt();
9. System.out.println("ingrese cantidadde dinerorecibido");
10. dr=entrada.nextInt();
11. v=dr-dc;
12. m50=v/50;
13. r=v%50;
14. m20=r/20;
15. r=r%20;
16. m5=r/5;
17. r=r%5;
18. m1=r;
19. System.out.println("suvueltoes:"+v+" y se da de la siguiente manera:");
20. System.out.println("billetesde 50 soles:"+m50);
21. System.out.println("billetesde 20 soles: "+m20);
22. System.out.println("monedasde 5soles:"+m5);
23. System.out.println("monedasde 1soles:"+m1);
24. }
25. }
b) Pruebade escritorio
86. 28. Diseñe unalgoritmoparaun problemasimilaral anterior.Peroconsiderarque se tienensolo
10 monedasde 50, y 2 de 5, las demásilimitadas.
I. Análisis:
a) Datos de entrada: i, p.
b) Datos de salida: m50, m20, m5, m1.
c) Modelo matemático/lógico:
d=p-i
m50=ddiv50
d=dmod50
if (m50<=10)
verdad: m50=m50
falso : d=(m50-10)*50
m50=10
m20=ddiv20
d=dmod20
m5=ddiv5
d=dmod5
if (m50<=10)
verdad: m5=m5
falso : d=(m5-2)*50
m5=2
m1=d
II. Diseño:
a) Diagrama de flujo:
90. b) Prueba de escritorio:
29. Dado un año, indique mediante mensaje si es bisiesto o no. Un año es bisiesto, solo si es
múltiplo de 4 pero no de 100, salvo que sea múltiplo de 400.( teoría completa del año
bisiesto).
I. Análisis:
a) Datos de entrada: a.
b) Datos de salida: "si es bisiesto", "no es bisiesto".
c) Modelo matemático/lógico:
Si (a%4==0 && a % 100 != 0) || a % 400 == 0
V:"si es bisiesto"
F:"no es bisiesto"
II. Diseño
a) Diagrama de flujo
91. inicio
a lee
(a%4==0 && a %
100 !=0) || a % 400
==0
"no es
bisiesto"
"si es
bisiesto"
fin
F
V
b) Pseudocódigo:
Inicio
Entrada: lee: a
Proceso:
if((a%4==0 && a % 100 != 0) || a % 400 == 0)
{
"si es bisiesto"
}
else
{
"no es bisiesto"
}
Salida: imprime: "si es bisiesto", "no es bisiesto".
Fin
III. Aplicación
a) Codificación:
1. package ejercicio.pkg29;
2. importjava.util.Scanner;
92. 3. publicclassEjercicio29{
4. publicstaticvoidmain(String[] args) {
5. inta;
6. Scannerentrada=new Scanner(System.in);
7. System.out.println("ingrese unaño");
8. a=entrada.nextInt();
9. if((a%4==0&& a % 100 != 0) || a % 400 == 0)
10. {
11. System.out.println("siesbisiesto");
12. }
13. else
14. {
15. System.out.println("noesbisiesto");
16. }
17. }
18. }
b) Pruebade escritorio
30. Escriba un algoritmo que lea tres números enteros de un supuesto triángulo, determine si
realmente forman un triángulo, y muestre el tipo de triángulo que es (si es un triángulo: La
suma de dos cualesquiera de los lados debe ser mayor que el otro).
Equilátero:todoslosladossoniguales.
Isósceles:solodosladossoniguales.
Escaleno:notiene dosladosiguales.
I. Análisis:
a) Datos de entrada: a, b, c, s.
b) Datos de salida: “t”, “nt”, “ee”, “i”, “e”.
c) Modelo matemático/lógico:
s=a+b
If(s>c)
Verdad:
93. V
V
fin
“t”
s>c
ant<1
If
inicio
a, b, c
V F
“nt”
a=b&&b=c
ant<1
If
“ee”
a=b||b=c||a=c
If
“i” “e”
F
“t”.
if(a==b&&b==c)
Verdad: “ee”.
Falso : if(a==b||b==c||a==c)
Verdad: “i”.
Falso : “e”.
Falso : “nt”.
II. Diseño:
a) Diagrama de flujo:
94. b) Pseudocódigo:
Inicio
Entrada: lee: a, b, c.
Proceso:
s=a+b
If(s>c)
Verdad:
“t”.
if(a==b&&b==c)
Verdad: “ee”.
Falso : if(a==b||b==c||a==c)
Verdad: “i”.
Falso : “e”.
Falso : “nt”.
Salida: imprime: “t”, “nt”, “ee”, “i”, “e”.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio.pkg30;
2. import java.util.Scanner;
3. public class Ejercicio30 {
4. public static void main(String[] args) {
5. int a,b,c,s;
6. System.out.println("Ingrese tres números enteros para un supuesto
triángulo");
7. System.out.println("Ingrese el primer número entero.");
8. Scanner num=new Scanner(System.in);
9. a=num.nextInt();
10. System.out.println("Ingrese el segundo número entero:");
11. Scanner num1=new Scanner(System.in);
12. b=num1.nextInt();
13. System.out.println("Ingrese el tercer número entero:");
14. Scanner num2=new Scanner(System.in);
95. 15. c=num2.nextInt();
16. s=a+b;
17. if(s>c)
18. {
19. System.out.println("Es un triángulo");
20. if(a==b&&b==c)
21. {
22. System.out.println("Es un triángulo equilátero");
23. }
24. else
25. {
26. if(a==b||b==c||a==c)
27. {
System.out.println("Es un triángulo isósceles");
28. }
29. else
30. {
System.out.println("Es un triángulo escaleno");
31. }
32. }
33. }
34. else
35. {
36. System.out.println("No es un triángulo");
37. }
38. }
39. }
b) Prueba de escritorio:
96. 31. Dados dosenteros,díay mes,de una fechade un año no bisiesto,indicarsi lafechaes
correcta.
I. Análisis:
a) Datos de entrada: d, m.
b) Datos de salida: r.
c) Modelo matemático/lógico:
Si m>12
V:r="NO CORRESPONDE"
f:
switch (m)
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
dmax=31
si d<=dmax
v: r="FECHA CORRESPONDE"
f: r="FECHA NO CORRESPONDE"
case 4:
case 6:
case 9:
case 11:
dmax=30;
si d<=dmax
v: r="FECHA CORRESPONDE"
f: r="FECHA NO CORRESPONDE"
case 2:
si d==29
v: r="FECHA NO CORRESPONDE";
f:
si d<28
v:"FECHACO RRESPONDE"
II. Diseño
a) Diagrama de flujo
99. b) Pseudocódigo:
Inicio
Entrada: lee: d, m
Proceso:
if(m>12)
r="NO CORRESPONDE"
switch (m){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
dmax=31
if(d<=dmax)
r="FECHA CORRESPONDE"
else
r="FECHA NO CORRESPONDE"
break
case 4:
case 6:
case 9:
case 11:
dmax=30;
if(d<=dmax)
r="FECHA CORRESPONDE"
else
r="FECHA NO CORRESPONDE"
break
case 2:
if(d==29)
r="FECHA NO CORRESPONDE"
else
if(d<28)
r="FECHACO RRESPONDE"
}
Salida: imprime: r
Fin
III. Aplicación
a) Codificación:
1. package ejercicio.pkg31;
2. importjava.util.Scanner;
3. publicclassEjercicio31{
100. 4. publicstaticvoidmain(String[] args) {
5. intd,m,dmax=0;
6. Stringr="";
7. Scannerteclado=new Scanner(System.in);
8. System.out.print("Ingrese Dia:");
9. d=teclado.nextInt();
10. System.out.print("Ingrese Mes:");
11. m=teclado.nextInt();
12. if(m>12)
13. r="NO CORRESPONDE";
14. switch(m){
15. case 1:
16. case 3:
17. case 5:
18. case 7:
19. case 8:
20. case 10:
21. case 12:
22. dmax=31;
23. if(d<=dmax)
24. r="FECHA CORRESPONDE";
25. else
26. r="FECHA NOCORRESPONDE";
27. break;
28. case 4:
29. case 6:
30. case 9:
31. case 11:
32. dmax=30;
33. if(d<=dmax)
34. r="FECHA CORRESPONDE";
35. else
36. r="FECHA NOCORRESPONDE";
37. break;
38. case 2:
39. if(d==29)
40. r="FECHA NOCORRESPONDE";
41. else
42. if(d<28)
43. r="FECHACO RRESPONDE";
44. }
45. System.out.println("");
46. System.out.println("Respuesta:"+r);
47. }
48. }
b) Pruebade escritorio
101. V
fin
“o”
A1>90||a2>90
||a3>90
If
inicio
a1, a2, a3
V F
F
a1=90||a2=90
||a3=90
If
“r” a1<90||a2<90
||a3<90
If
“a”
V
32. Los triángulosse puedenclasificarrespectode susángulos:
Si uno de los ángulos mide más de 90°, el triángulo es obtusángulo.
Si uno de los ángulos mide 90°, el triángulo es rectángulo.
Si de los tres ángulos miden menos de 90°, el triángulo es acutángulo.
I. Análisis:
a) Datos de entrada: a1, a2, a3.
b) Datos de salida: “o”, “r”, “a”.
c) Modelo matemático/lógico:
If(a1>90||a2<90||a3>90)
Verdad: “o”.
Falso : if(a1=90||a2=90||a3=90)
Verdad: “r”.
Falso : if(a1<90||a2<90||a3<90)
Verdad: “a”.
II. Diseño:
a) Diagrama de
flujo:
102. b) Pseudocódigo:
Inicio
Entrada: lee: a1, a2, a3.
Proceso:
If(a1>90||a2<90||a3>90)
Verdad: “o”.
Falso : if(a1=90||a2=90||a3=90)
Verdad: “r”.
Falso : if(a1<90||a2<90||a3<90)
Verdad: “a”.
Salida: imprime: “o”, “r”, “a”.
Fin
III. Aplicación:
a) Codificación:
1. package ejercicio.pkg32;
F
103. 2. import java.util.Scanner;
3. public class Ejercicio32 {
4. public static void main(String[] args) {
5. int a1,a2,a3;
6. System.out.println("Ingrese el primer ángulo de un triángulo");
7. Scanner num=new Scanner(System.in);
8. a1=num.nextInt();
9. System.out.println("Ingrese el segundo ángulo de un triángulo");
10. Scanner num1=new Scanner(System.in);
11. a2=num1.nextInt();
12. System.out.println("Ingrese el tercer ángulo de un triángulo");
13. Scanner num2=new Scanner(System.in);
14. a3=num2.nextInt();
15. if(a1>90||a2>90||a3>90)
16. {
17. System.out.println("El triángulo es obtusángulo");
18. }
19. else
20. {
21. if(a1==90||a2==90||a3==90)
22. {
23. System.out.println("El triángulo es rectángulo");
24. }
25. else
26. {
a. if(a1<90||a2<90||a3<90)
b. {
c. System.out.println("El triángulo es acutángulo");
d. }
27. }
28. }
29. }
30. }
b) Prueba de escritorio:
104. 33. Dos entidadesfinancierasofrecenlassiguientestasasde interéssimple:
Entidad A Entidad B
Dinero Depositado Interés Mensual Dinero Depositado Interés Mensual
De 0 a500 soles 5%del dinero depositado De 0 a 600 soles 5%del dinero depositado
De 501 a 4499 soles 12%del dinero depositado De 601 a 3499 soles 5%del dinero depositado
4500 soles a más 16%del dinero depositado 3500 soles a más 5%del dinero depositado
Desarrollar un programa que realice lo siguiente:
Solicite al usuarioque ingrese el montode dineroque deseadepositaryel tiempo(meses)
que lo mantendrá en el banco.
Determine cuál de lasdosentidades,A oB, esmás conveniente para depositar el dinero y
muestre un mensaje indicando en que banco debería el usuario depositar el monto
ingresado, y cuánto dinero tendrá luego de transcurrido el tiempo que indico al inicio.
Nota: Para calcular el interés simple se utiliza la siguiente fórmula:
Interés = Capital * Tasa * Tiempo
I. Análisis:
a) Datos de entrada: d, t.
b) Datos de salida: a, b.
c) Modelo matemático/lógico:
Si d>0&&d<=500
V: a=(d*0.05)*t
Si: d>500&&d<=4499
v: a=(d*0.12)*t
si d>4499
v: a=(d*0.16)*t
si d>0&&d<=600
v: b=(d*0.07)*t
si d>600&&d<=3499
v: b=(d*0.10)*t
si d>3499
v: b=(d*0.15)*t
si a>b
v: "la entidad A es más conveniente"
f: "la entidad B es más conveniente"
107. b) Pseudocódigo:
Inicio
Entrada: lee: a, b
Proceso:
if(d>0&&d<=500)
{
a= (d*0.05)*t
}
if(d>500&&d<=4499)
{
a= (d*0.12)*t
}
d>3499
F
V
b=(d*0.15)*t
2
a>b
V F
"la entidadA es másconveniente"IMP. "la entidadB es más conveniente"IMP.
fin
108. if(d>4499)
{
a= (d*0.16)*t
}
if(d>0&&d<=600)
{
b= (d*0.07)*t
}
if(d>600&&d<=3499)
{
b= (d*0.10)*t
}
if(d>3499)
{
b= (d*0.15)*t
}
if(a>b)
{
"la entidad A es más conveniente"
}
else
{
"la entidad B es más conveniente"
}
Salida: imprime: a, b
Fin
III. Aplicación
a) Codificación:
1. package ejercicio.pkg33;
2. importjava.util.Scanner;
3. publicclassEjercicio33{
4. publicstaticvoidmain(String[] args) {
5. intd,a=0,b=0,t;
6. Scannerentrada=new Scanner(System.in);
7. System.out.println("ingresael montode dineroque dese depositar");
8. d=entrada.nextInt();
9. System.out.println("ingresael tiempoenel que quiere pagar");
10. t=entrada.nextInt();
11. if(d>0&&d<=500)
12. {
13. a=(int) (d*0.05)*t;
14. }
15. if(d>500&&d<=4499)
16. {
17. a=(int) (d*0.12)*t;
18. }