0% encontró este documento útil (0 votos)
27 vistas110 páginas

Texto Guía Programación 1.1

El 'Texto Guía Programación I' de Ing. Iván I. Cordero Morales es un recurso educativo diseñado para estudiantes de la carrera de Sistemas Informáticos, que busca fortalecer su aprendizaje en programación a través de conceptos teóricos y ejercicios prácticos. El documento abarca temas fundamentales como la introducción a la programación, diseño de algoritmos, y el uso del lenguaje Java, proporcionando ejemplos y ejercicios propuestos para facilitar la comprensión. Además, se enfatiza la importancia de la programación como herramienta para resolver problemas en diversas áreas.

Cargado por

felipealemanloza
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
27 vistas110 páginas

Texto Guía Programación 1.1

El 'Texto Guía Programación I' de Ing. Iván I. Cordero Morales es un recurso educativo diseñado para estudiantes de la carrera de Sistemas Informáticos, que busca fortalecer su aprendizaje en programación a través de conceptos teóricos y ejercicios prácticos. El documento abarca temas fundamentales como la introducción a la programación, diseño de algoritmos, y el uso del lenguaje Java, proporcionando ejemplos y ejercicios propuestos para facilitar la comprensión. Además, se enfatiza la importancia de la programación como herramienta para resolver problemas en diversas áreas.

Cargado por

felipealemanloza
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 110

Texto Guía

PROGRAMACIÓN I

Ing. Iván I. Cordero Morales


® IVÁN ISRAEL CORDERO MORALES
® PROGRA UNO
® “Texto Guía Programación 1”
Carrera Sistemas Informáticos
Instituto Técnico Superior INCOS Tarija

Ing. Iván Cordero Morales


Adaptación de contenidos

Ing. Iván Cordero Morales


Diseño y fotografía de portada

Ing. Iván Cordero Morales


Diseño y ejercicios

Gestión 2021
Ing. Iván Israel Cordero Morales
Graduado de la Universidad Juan Misael Saracho con Titulo en provisión nacional de
Ingeniería Informática y Diplomados en Educación Basada en Competencias y Teoría y
Práctica Pedagógica Universitaria.

Con varios años de experiencia como docente en el Instituto Técnico Superior INCOS Tarija
donde mi objetivo es compartir los conocimientos obtenidos durante mi formación para
formar personas capaces de dar soluciones a problemas.

Participe como tutor guía en varios proyectos en encuentros departamentales y nacionales de


“Investigación e innovación de Institutos técnicos y tecnológicos del estado plurinacional “,
obteniendo muy buenas experiencias y resultados conjuntamente los estudiantes.

El presente texto guía Programación I será una herramienta que apoyara a fortalecer el
aprendizaje de los estudiantes que están dando sus primeros pasos en la carrera de Sistemas
Informáticos y más aun que están comenzando a conocer el arte de la programación
Se pretende lograr competencias tales como elaboración de Algoritmos, conocer la
programación estructurada, modular, todo eso con ejemplos y ejercicios prácticos.
Contenido
INTRODUCCIÓN .............................................................................................................................9

UNIDAD TEMÁTICA 1 INTRODUCCIÓN A LA PROGRAMACIÓN ......................................10

1.1. Conceptos básicos relacionados a la programación ...................................................................11

1.2. Paradigmas de la programación. ...............................................................................................14

1.3. Etapas de solución de problemas. ..............................................................................................14

EJERCICIOS RESUELTOS ............................................................................................................15

EJERCICIOS PROPUESTOS:.........................................................................................................16

CONCLUSIONES ...........................................................................................................................16

UNIDAD TEMATICA 2 DISEÑO DE ALGORITMOS .................................................................17

DISEÑO DE ALGORITMOS ..........................................................................................................17

2.1 Concepto de Algoritmos:............................................................................................................18

2.2 Características de los Algoritmos: ..............................................................................................18

2.3. Comandos o Palabras reservadas: .............................................................................................18

2.4 Tipos de Datos: ..........................................................................................................................19

2.5 Variables y Constantes: ..............................................................................................................20

2.6 Operadores: ................................................................................................................................21

2.7 Clases de Algoritmos: ................................................................................................................22

Estructura Secuencial (Algoritmos)..................................................................................................24

EJERCICIOS RESUELTOS ............................................................................................................24

EJERCICIOS PROPUESTOS:.........................................................................................................26

Estructuras Selectivas (Algoritmos) .................................................................................................26

EJERCICIOS RESUELTOS ESTRUCTURAS SELECTIVAS .......................................................29

EJERCICIOS PROPUESTOS ..........................................................................................................32

Estructuras de repetición ..................................................................................................................34

Estructura Mientras ..........................................................................................................................34


EJERCICIOS RESUELTOS ............................................................................................................35

EJERCICIOS PROPUESTOS ..........................................................................................................36

Estructura Repetir Hasta...................................................................................................................37

EJERCICIOS RESUELTOS ............................................................................................................37

EJERCICIOS PROPUESTOS ..........................................................................................................39

Estructura Para .................................................................................................................................39

EJERCICIOS RESUELTOS. ...........................................................................................................40

EJERCICIOS PROPUESTOS ..........................................................................................................41

UNIDAD TEMATICA 3 INTRODUCCION AL LENGUAJE DE PROGRAMACION ................42

3.1. ¿Qué es Java? ............................................................................................................................43

3.2. Características del lenguaje Java ...............................................................................................43

3.3 Instalación: .................................................................................................................................45

3.4 Estructura de un Programa: ........................................................................................................47

3.5 Variables: ...................................................................................................................................48

3.6 Constantes: .................................................................................................................................49

3.7 Palabras Reservadas: ..................................................................................................................49

UNIDAD TEMATICA 4 PROGRAMACIÓN ESTRUCTURADA ................................................53

4.1 Tipos de Datos: ..........................................................................................................................54

4.2 Operadores en Java: ...................................................................................................................54

4.3. Estructura Secuencial ................................................................................................................57

Ejercicios Resueltos con la estructura secuencial en Java: ...............................................................59

Ejercicios Propuestos: ......................................................................................................................62

4.4 Estructura Condicional ...............................................................................................................63

Ejercicios Resueltos con la estructura condicional en Java: .............................................................65

Ejercicios Propuestos Estructura Condicional: .................................................................................70

4.5 Estructura Selectiva Múltiple Switch .........................................................................................71

Ejercicios Resueltos de Programas con la estructura SWITCH en Java: ..........................................72


Ejercicios Propuestos estructura SWITCH en Java: .........................................................................74

4.6 Estructuras Repetitivas ...............................................................................................................75

Estructura WHILE ...........................................................................................................................75

Ejercicios Resueltos de Programas con la estructura de repetición WHILE en Java: .......................75

Ejercicios Propuestos con la estructura de repetición WHILE en Java:............................................78

Estructura DO WHILE .....................................................................................................................78

Ejercicios Resueltos de Programas con la estructura de repetición DO WHILE en Java: ................79

Ejercicios Propuestos estructura de repetición DO WHILE en Java: ...............................................81

Estructura FOR (PARA) ..................................................................................................................82

Ejercicios Resueltos Estructura FOR ...............................................................................................82

Ejercicios estructura de FOR en Java: ..............................................................................................84

UNIDAD TEMATICA 5 PROGRAMACIÓN MODULAR ............................................................86

5.1 Funciones: ..................................................................................................................................87

5.2 Procedimientos: ..........................................................................................................................87

Ejercicios Resueltos Funciones: .......................................................................................................88

Ejercicios Propuestos Funciones: .....................................................................................................89

Ejercicios Resueltos Procedimientos. ...............................................................................................89

Ejercicios Propuestos de Procedimientos: ........................................................................................90

UNIDAD TEMATICA 6 ARREGLOS UNIDIMENSIONALES Y BIDIMENSIONALES ...........92

6.1 Arreglos Unidimensionales ........................................................................................................93

Ejericicios Resueltos Arreglos Unidimensionales: ...........................................................................96

Ejercicios Propuestos Arrays Unidimensionales ..............................................................................98

6.2 Arreglos Bidimensionales ..........................................................................................................99

Ejercicios Resueltos Arreglos Bidimensionales .............................................................................100

Ejercicios Propuestos Arreglos Bidimensionales ...........................................................................101

UNIDAD TEMATICA 7 MANEJA DE CADENAS .....................................................................103

7.1 Cadenas: ...................................................................................................................................104


7.2 Creación de Cadenas: ...............................................................................................................104

7.3 Manejo de Cadenas ..................................................................................................................105

7.4 Búsqueda de Cadenas: ..............................................................................................................106

7.5 Comparación de cadenas: .........................................................................................................107

Ejercicios resueltos Cadenas. .........................................................................................................108

Ejercicios propuestos Cadenas .......................................................................................................109

BIBIOGLAFÍA ..............................................................................................................................110
INTRODUCCIÓN

La programación además de ser una asignatura base para los profesionales en sistemas es un
arte donde nos permite crear con nuestros conocimientos sistemas y programas que
solucionan problemas de la vida diaria.

En los últimos tiempos esta rama de la informática ha ido creciendo en mercado y personas
interesadas en aprenderla, y podemos ver a profesionales de distintas ramas muy interesados
en la Programación.

Aprendiendo a desarrollar software podemos ampliar nuestras capacidades para poder


emprender de manera individual.

Con el presente texto guía se pretende que los estudiantes de la carrera de sistemas
informáticos de Segundo Año del Instituto Técnico Superior INCOS Tarija cuenten con un
documento base de algoritmos y programas resueltos además de muchos ejercicios
propuestos para la construcción de sus conocimientos.
Programación 1 Ing. Iván I. Cordero Morales

UNIDAD TEMÁTICA 1
INTRODUCCIÓN A LA PROGRAMACIÓN
SUMARIO
1.1. Conceptos básicos relacionados a la programación
1.2. Paradigmas de Programación
1.3. Etapas de solución de problemas

OBJETIVOS
Conocer los conceptos generales de la computadora
Conocer conceptos generales de la programación y sus aplicaciones
Conocer y utilizar las etapas de solución de problemas para encontrar solución a los
problemas

INTRODUCCIÓN
Introducirse al mundo de la programación puede ser un poco complejo por ello es importante
conocer los diferentes conceptos sobre tecnología y lo relacionado con la computación.
Otro elemento importante para dar inicio es conocer cómo resolver problemas de manera
sistemática utilizando cada etapa de dicho proceso.
En esta Unidad lograremos comprender lo mencionado,
comencemos…

DIAGNÓSTICO
Ingresar a www.menti.com para responder las siguientes
preguntas
El docente enviara el código para dicho proceso.

10
Programación 1 Ing. Iván I. Cordero Morales

1.1. Conceptos básicos relacionados a la programación

Programación:
Ciencia o arte que nos permite programar
una computadora con el fin de resolver o
encontrar solución a un problema
planteado.

Software de Programación:
Software:
Es el encargado de proporcionarnos las
Conjunto de Instrucciones detalladas que
herramientas necesarias para que en un
controlan y coordinan el Hardware
momento dado podamos ejecutar un
conectado al equipo y las operaciones de
programa o construir uno
un sistema informático

Clases de Software:
Software de Sistema
Software de Programación
Software de Aplicación

Software de Sistema:
Es un conjunto generalizado de programas Software de Aplicación:
que gestiona los recursos de la
Es con el que el usuario tiene mayor
computadora, tal como el procesador
interacción, es el que permite así mismo
central, enlaces de comunicaciones y
ejecutar tareas o poder llevarlas a cabo Es
dispositivos periféricos
con el que el usuario tiene mayor
Ejemplos:
interacción, es el que permite así mismo
ejecutar tareas o poder llevarlas a cabo

11
Programación 1 Ing. Iván I. Cordero Morales

Lenguaje de Programación:
Conjunto de normas o reglas lógicas Lenguaje de Bajo Nivel:
definidas por medio de símbolos o Es un lenguaje un poco más fácil de
palabras clave que nos permitan construir interpretar, pero puede variar de acuerdo
un programa para dar solución a un con la máquina o computadora que se esté
problema programando.

Tipos de Lenguajes de
Programación: Lenguaje de Programación de
• Lenguaje Maquina alto nivel:
• Lenguaje de Bajo Nivel En esta categoría se encuentran los más
• Lenguaje de Alto Nivel utilizados. Se usan palabras del inglés lo
cual facilita que una persona pueda
Lenguaje Maquina:
intervenir más fácil que en los dos
Es el más primitivo de los códigos y se
anteriores.
basa en la numeración binaria, todo en 0 y
1. Este lenguaje es utilizado directamente
por máquinas o computadora.

12
Programación 1 Ing. Iván I. Cordero Morales

Programa:
Conjunto de instrucciones almacenadas
con el fin de otorgar una solución a un
problema.

Compiladores:
Son componentes que van traduciendo un
programa, de tal manera que deja un rastro
o constancia de mismo para
posteriormente generar un programa
ejecutable a fin de no requerir nueva
Editores de Texto:
traducción cada vez que se disponga a
Los Editores de Texto son programas que ejecutar un programa.
nos permiten la entrada de caracteres

IDE(Entorno de desarrollo
Integrado):
Es un sistema de software para el diseño
de aplicaciones que combina herramientas
del desarrollador comunes en una sola
interfaz gráfica de usuario (GUI).

13
Programación 1 Ing. Iván I. Cordero Morales

1.3. Etapas de solución de


1.2. Paradigmas de la
problemas.
programación.
El propósito del análisis de un problema es
Son aquellos criterios o maneras en cual se
ayudar al programador para llegar a una
tiende a abordar la construcción de un
cierta comprensión de la naturaleza del
programa en base a su algoritmo.
problema. El problema debe estar bien
Algunos paradigmas de definido si se desea llegar a una solución
satisfactoria.
Programación:
Para poder definir con precisión el
Imperativo. Los programas se componen
problema se requiere que las
de un conjunto de sentencias que cambian
especificaciones de entrada, proceso y
su estado. Son secuencias de comandos
salida sean descritas con detalles.
que ordenan acciones a la computadora.
Entrada, son todos los datos que hay que
Declarativo. Opuesto al imperativo. Los
ingresar para la resolución del problema.
programas describen los resultados
Proceso, son los diferentes
esperados sin listar explícitamente los
procedimientos en los cuales usare los
pasos a llevar a cabo para alcanzarlos.
datos proporcionados por el usuario en el
Orientado a objetos. El comportamiento
paso anterior para resolver el problema.
del programa es llevado a cabo por
Salida, la resolución del problema.
objetos, entidades que representan
elementos del problema a resolver y tienen
atributos y comportamiento.

14
Programación 1 Ing. Iván I. Cordero Morales

EJERCICIOS RESUELTOS
A continuación verificaremos algunos ejemplos sobre las etapas de solución de problemas:
Ejemplo: Realizar una llamada telefónica

Ejemplos: Suma de dos números y calcular el área de un rectángulo

15
Programación 1 Ing. Iván I. Cordero Morales

EJERCICIOS PROPUESTOS:
1. Realizar el análisis de los siguientes problemas planteados identificando las 3 etapas del
proceso, los ejercicios realizados deberán subirlo al Classroom de la materia en la tarea
asignada por el docente para su respectiva evaluación.
2. Cocinar una cena
3. Arreglar una bicicleta
4. Preparar café
5. Cambiar un Foco
6. Retirar Dinero de un cajero automático
7. Enviar un mensaje por WhatsApp
8. Desinfectarse al llegar a casa
9. Calcular la División de Dos números
10. Convertir minutos a horas
11. Calcular el promedio de las siguientes notas 70, 80, 100

CONCLUSIONES
Al finalizar la unidad temática el estudiante conocerá los conceptos básicos relacionados con
la programación y podrá realizar un análisis correcto de problemas identificando sus etapas
para dar solución a los mismo.

FELICIDADES TERMINASTE LA UNIDAD TEMATICA,


NOS VEMOS EN LA SIGUIENTE UNIDAD.

COMENZAREMOS CON ALGORITMOS…

16
Programación 1 Ing. Iván I. Cordero Morales

UNIDAD TEMATICA 2
DISEÑO DE ALGORITMOS
SUMARIO
2.1. Concepto de Algoritmo
2.2. Características de los Algoritmos
2.3. Comandos o palabras reservadas
2.4. Tipos Datos
2.5. Variables y Constantes
2.6. Operadores
2.7. Clases de Algoritmos

OBJETIVOS
Conocer el concepto de algoritmo, sus características y aplicación en la
resolución de problemas utilizando pseudocódigo o diagramas de flujo,

INTRODUCCIÓN
El primer paso para poder programar es conocer a los Algoritmos, con ello
podremos lograr obtener una lógica de programación y estaremos dando
nuestros primeros pasos hacia la construcción de programas que lleven a la
solución de problemas
En esta unidad aprenderemos a crear algoritmos tanto empleando pseudocódigo
como diagramas de flujo esto con el fin de resolver problemas

DIAGNÓSTICO
Ingresar a www.menti.com para responder las siguientes
preguntas

17
Programación 1 Ing. Iván I. Cordero Morales

El docente enviara el código para dicho proceso.

2.1 Concepto de Algoritmos:


Son instrucciones con un orden y una terminación que nos conducen a la solución de un
problema determinado
Los algoritmos pueden ser expresados de muchas maneras, incluyendo el lenguaje natural,
pseudocódigo, diagramas de flujo y lenguajes de programación, entre otros. Las
descripciones en lenguaje natural tienden a ser ambiguas y extensas.

2.2 Características de los Algoritmos:


Un algoritmo debe ser preciso: tiene que
indicar el orden de realización de cada paso.
Un algoritmo debe estar definido: Si se
sigue un algoritmo dos veces, se debe
obtener el mismo resultado cada vez.
Un algoritmo debe ser finito: el algoritmo
se debe terminar en algún momento; o sea,
debe tener un número finito de pasos.
Un algoritmo debe ser legible: El texto que
lo describe debe ser claro, tal que permita
entenderlo y leerlo fácilmente.
Un algoritmo debe definir tres partes:
Entrada, Proceso y Salida.

2.3. Comandos o Palabras reservadas:


Todos los lenguajes, naturales o computacionales, tienen palabras que denotan una acción.
Los comandos no son más que acciones que debe interpretar y ejecutar el computador. Cada
comando conserva una sintaxis determinada, es decir la forma de utilizarlo.
Los lenguajes computacionales tienen en su repertorio comandos dirigidos al procesamiento
de archivos y datos, entre ellos podemos nombrar:

18
Programación 1 Ing. Iván I. Cordero Morales

Significado
Función o palabra

Escribir Se utiliza para mostrar algo por pantalla

Leer Se utiliza para recibir un valor ingresado por el usuario

RC(X) Raíz Cuadrada de X

ABS(X) Valor Absoluto de X

LN(X) Logaritmo Natural de X

EXP(X) Función Exponencial de X

SEN(X) Seno de X

COS(X) Coseno de X

ATAN(X) Arcotangente de X

TRUNC(X) Parte entera de X

REDON(X) Entero más cercano a X

AZAR(X) Entero aleatorio entre 0 y X-1

2.4 Tipos de Datos:


Un dato es un campo que puede convertirse en información. Un dato puede significar un
número, una letra, un signo ortográfico o cualquier símbolo que represente una cantidad, una
medida, una palabra o una descripción. La importancia de los datos está en su capacidad de
asociarse dentro de un contexto para convertirse en información. Es decir, por si mismos los
datos no tienen capacidad de comunicar un significado y por tanto no pueden afectar el
comportamiento de quien los recibe. Para ser útiles, los datos deben convertirse en
información que ofrezca un significado, conocimiento, ideas o conclusiones.

19
Programación 1 Ing. Iván I. Cordero Morales

Los datos simples pueden ser:

Nombre descripción Ejemplo


Entero Conjunto de 2,5,10
números
enteros
Real Conjunto de 2,5,
números 7,25, 12,5
reales
Carácter Carácter Aa5
letra o
digito
Cadena Cadena de Hola
caracteres,
conjunto de
caracteres
lógico Verdadero verdadero
o Falso

2.5 Variables y Constantes:


Son espacios de memoria creados para contener valores que de acuerdo con su naturaleza
deseen mantenerse (Constantes) o que puedan variar (Variables).
Constante:
Es un dato que permanece con un valor, sin cambios, es decir constante, a lo largo del
desarrollo del algoritmo o a lo largo de la ejecución del programa. Se utiliza cuando
necesitamos que el valor de determinada variable se mantenga durante la ejecución del
programa o hasta tanto se requiera su cambio.

Variable:

20
Programación 1 Ing. Iván I. Cordero Morales

Es un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo o en el transcurso
de la ejecución del programa.

Las Variables por lo general tienen un


identificador y un tipo de dato que se está
utilizando.

2.6 Operadores:

Operadores aritméticos:
Son utilizadas para construir fórmulas matemáticas. Las variables y constantes utilizadas
son de naturaleza numérica, es decir números enteros o reales, y las operaciones a efectuar
son de orden aritmético.

Operadores relacionales:
Los operadores relacionales sirven para expresar las condiciones en los algoritmos. Las
variables y constantes utilizadas son de distinta naturaleza, el resultado de una expresión
lógica y relacional es de tipo lógico.

Operadores lógicos:
Se utilizan en los programas cuando se requiere conocer o evaluar si los valores de variables
o constantes determinadas cumplen con ciertas condiciones. De cumplirse o no, permiten un
conjunto de instrucciones que pueden o no ejecutarse. Una expresión lógica puede ser
verdadera o falsas.
Significado Ejemplo
Operador
Relacionales
> Mayor que 3>2
< Menor que 'ABC'<'abc'
= Igual que 4=3
<= Menor o igual que 'a'<='b'

21
Programación 1 Ing. Iván I. Cordero Morales

>= Mayor o igual que 4>=5

Lógicos
&óY Conjunción (y). (7>4) & (2=1) //falso
|óO Disyunción (o). (1=1 | 2=1) //verdadero
~ ó NO Negación (no). ~(2<5) //falso
Algebraicos
+ Suma total <- cant1 + cant2
- Resta stock <- disp - venta
* Multiplicación area <- base * altura
/ División porc <- 100 * parte / total
^ Potenciación sup <- 3.41 * radio ^ 2
% ó MOD Módulo (resto de la división entera) resto <- num MOD div

2.7 Clases de Algoritmos:


Las herramientas de programación utilizadas como lenguajes algorítmicos son:
• Pseudocódigo
• Diagramas de Flujo

Antes de continuar aprendiendo es recomendable que descarguen el siguiente software


escaneando los códigos QR:

Pseint.

22
Programación 1 Ing. Iván I. Cordero Morales

Pseudocode (App Moviles Android)

Pseudocódigo:
Es un lenguaje algorítmico, muy parecido
al español pero más conciso que permite
la redacción rápida del algoritmo

Diagramas de Flujo:
Es una representación gráfica que
utiliza símbolos normalizados por
la ANSI y expresa sucesivas
instrucciones que se debe realizar
para resolver el problema estas
instrucciones no depende de la
sintaxis de ningún lenguaje de
programación sino que debe servir fácilmente para su transformación en un lenguaje de
programación

23
Programación 1 Ing. Iván I. Cordero Morales

Estructura Secuencial (Algoritmos)


Son aquellos algoritmos que ejecutan instrucciones en forma consecutiva, es decir uno detrás
de otro, hasta finalizar el proceso. Como podemos ver en los siguientes gráficos:

EJERCICIOS RESUELTOS
Realizar un algoritmo que sume dos números ingresados por el usuario

24
Programación 1 Ing. Iván I. Cordero Morales

Realizar un algoritmo que encuentre el residuo de la división de dos números

Realizar un algoritmo que calcule el promedio de tres números

25
Programación 1 Ing. Iván I. Cordero Morales

EJERCICIOS PROPUESTOS:
Realizar los siguientes algoritmos. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.
1. Calcular el producto de dos números
2. Calcular la División de Dos números
3. Calcular el área de un Rombo
4. Convertir minutos a horas
5. Convertir horas a minutos
6. Calcula el área de un cuadrado
7. Calcular el perímetro de un cuadrado
8. Calcular la circunferencia de un circulo
9. Calcular el área de un circulo
10. Calcular el promedio de las siguientes notas 70, 80, 100
11. Hallar el cociente y el residuo de dos números enteros

Estructuras Selectivas (Algoritmos)


Las estructuras selectivas permiten elegir qué acciones se van a tomar para poder solucionar
un problema, permitiendo modificar el flujo
de un programa de acuerdo con una
condición.
Pueden existir estructuras selectivas simples,
compuestas y múltiples

Condición
Una condición corresponde a una expresión lógica.
La expresión lógica se compone de dos valores que se comparan por ejemplo:
.

26
Programación 1 Ing. Iván I. Cordero Morales

Los operadores de comparación más utilizados son

mayor >

menor <

mayor o igual >=

Menor o igual <=

Igual =

Diferente ! = o <>

Clases de Estructuras Selectivas

Estructura Selectiva Simple

Depende de una expresión lógica(condición), si es verdadero ejecuta una determinada


instrucción o instrucciones

27
Programación 1 Ing. Iván I. Cordero Morales

Estructura Selectiva Doble


Depende de una expresión lógica(condición), si es verdadero ejecuta una determinada
instrucción y si es falso otro grupo de instrucciones

Estructura Selectiva Anidada


Son aquellas estructuras que contienen una o más estructuras, es decir está permitido colocar
dentro de una estructura otra estructura

Estructura Selectiva Múltiple


Esta acción se la utiliza cuando se desea comprobar una condición a la vez o varias
condiciones consecutivas

28
Programación 1 Ing. Iván I. Cordero Morales

EJERCICIOS RESUELTOS ESTRUCTURAS SELECTIVAS


Realizar un algoritmo para determinar el número ingresado es neutro.

Realizar un algoritmo que de acuerdo con la edad de la persona muestre si es mayor de edad.

Realizar un algoritmo que solicite dos números y determine cual es el mayor.

29
Programación 1 Ing. Iván I. Cordero Morales

Realizar un algoritmo que determine si un número ingresado es positivo o negativo.

Realizar un algoritmo que solicite dos números y determine cual es el mayor.

Realizar un algoritmo que pida el promedio de un estudiante y determine si aprobó o reprobó


la materia.

30
Programación 1 Ing. Iván I. Cordero Morales

Realizar un algoritmo que dado 3 números devolver el número Mayor

Escribir algoritmo que pida la edad de una persona y muestre en qué etapa se encuentra,
según lo siguiente:
• Si la edad de la persona es de 0 a 11 muestre Infancia
• Si la edad es de 12 a 18 Adolescencia
• Si la edad es de 19 a 26 Juventud
• Si la edad es de 27 a 59 Adultez
• es mayor a 60 Vejez

31
Programación 1 Ing. Iván I. Cordero Morales

Realizar un algoritmo que solicite un número de 1 al 3 y lo muestre en literal

Realizar un algoritmo que me de las opcionesde calcular las áreas de un triángulo ,


rectángulo y cuadrado.

EJERCICIOS PROPUESTOS
1. Ingresar el sueldo de una persona, si supera los 3000 pesos mostrar un mensaje en pantalla
indicando que debe abonar impuestos.
2. Determinar si un número entero es par o impar
3. Realizar un programa que lea por teclado dos números, si el primero es mayor al segundo
informar su suma y diferencia, en caso contrario informar el producto y la división del
primero respecto al segundo.
4. Elaborar un algoritmo que solicite la edad de 2 hermanos y muestre un mensaje indicando
la edad del mayor y cuantos años de diferencia tiene con el menor

32
Programación 1 Ing. Iván I. Cordero Morales

5. Determinar si el carácter ingresado por el usuario es vocal


6. Determinar si un número es múltiplo de 3 y 5
7. Dadas 3 longitudes, determinar qué tipo de triángulo forma según sus lados teniendo en
cuenta lo siguiente:
• Triángulo Equilátero: 3 lados iguales
• Triángulo Isósceles: 2 lados iguales
• Triángulo Escaleno: 3 lados diferentes
8. Elabora un algoritmo para leer 3 números enteros diferentes entre sí, y determinar el
número menor de los tres
9. Un restaurante tiene la siguiente escala de consumo. Determinar el monto de descuento
y el importe a pagar
Consumo Descuento %
Hasta 100 10
Mayor a 100 20
Mayor a 200 30
10. Diseñar un algoritmo que lea un número del 1 al 7 y devuelva el día de la semana
considere que 1 es Domingo
11. Diseñar un algoritmo que ingresada una letra determinar si es vocal
12. Diseñar un algoritmo que realice el menú de un hotel donde se tiene que tomar en cuenta:
Desayuno, Almuerzo y cena.

33
Programación 1 Ing. Iván I. Cordero Morales

Estructuras de repetición
Para dar solución a algunos problemas y optimizar el código es necesarios utilizar las
estructuras de repetición, la cuales son utilizadas para repetir una o más instrucciones varias
veces. También se las conoce como bucles.

Estructura Mientras
Es cuando se repite una operación mientras una condición sea verdadera, al dejar de serlo, se
rompe el ciclo. Si la condición nunca es falsa, se
tiene un ciclo infinito.

Sintaxis

Contadores
Son variables que incrementan su valor + o decrementan - con un
valor constante.

Acumuladores
Son variables que almacenan variables cuyo valor se
incrementa por el valor que va tomando otra variable

34
Programación 1 Ing. Iván I. Cordero Morales

EJERCICIOS RESUELTOS
Realizar un algoritmo que sume los n números introducidos por el usuario.

Realizar un algoritmo que dado un rango de números enteros, se debe obtener la cantidad de
números que contiene.

35
Programación 1 Ing. Iván I. Cordero Morales

Realizar un algoritmo que dado un numero determine cuantos dígitos tiene.

EJERCICIOS PROPUESTOS
1. Realizar un algoritmo que imprima los números del 1 al 10
2. Realizar un algoritmo que imprima los números pares entre el 0 y 100
3. Realizar un algoritmo que imprima los números del 50 al 100.
4. Realizar un algoritmo que imprima los números del -50 al 0.
5. Realizar un algoritmo que determine cuántos dígitos pares tiene un número
6. Realizar un algoritmo que permita la carga de 10 valores por teclado y nos muestre
posteriormente la suma de los valores ingresados y su promedio.
7. Realizar un algoritmo que determine si un número es primo o no, se dice que un numero
es primo cuando es divisible entre 1 y entre sí.
8. Realizar un algoritmo que determine el factorial de un numero ingresado por ejemplo si
se ingresa el numero 4!=1*2*3*4 =24
9. Realizar un algoritmo que solicite ingresar 15 edades y nos informe cuántos son mayores
de edad y cuantos menores de edad
10. Realizar un algoritmo que dado un numero devuelva el inverso del mismo, por ejemplo
si introduce 156 devuelva 651

36
Programación 1 Ing. Iván I. Cordero Morales

Estructura Repetir Hasta


Se repite la ejecución de una operación hasta
que se cumpla una condición. La principal
diferencia con MIENTRAS es que la operación
se ejecuta al menos una vez.

Sintaxis.

EJERCICIOS RESUELTOS
Realizar un algoritmo que sume los n números introducidos por el usuario.

37
Programación 1 Ing. Iván I. Cordero Morales

Realizar un algoritmo que dado un rango de números enteros, se debe obtener la cantidad de
números que contiene.

Realizar un algoritmo que dado un numero determine cuantos dígitos tiene.

38
Programación 1 Ing. Iván I. Cordero Morales

EJERCICIOS PROPUESTOS
1. Realizar un algoritmo que imprima los números del 1 al 10
2. Realizar un algoritmo que imprima los números pares entre el 0 y 100
3. Realizar un algoritmo que imprima los números del 50 al 100.
4. Realizar un algoritmo que imprima los números del -50 al 0.
5. Realizar un algoritmo que determine cuántos dígitos pares tiene un número
6. Realizar un algoritmo que permita la carga de 10 valores por teclado y nos muestre
posteriormente la suma de los valores ingresados y su promedio.
7. Realizar un algoritmo que determine si un número es primo o no, se dice que un numero
es primo cuando es divisible entre 1 y entre sí.
8. Realizar un algoritmo que determine el factorial de un numero ingresado por ejemplo si
se ingresa el numero 4!=1*2*3*4 =24
9. Realizar un algoritmo que solicite ingresar 15 edades y nos informe cuántos son mayores
de edad y cuantos menores de edad
10. Realizar un algoritmo que dado un numero devuelva el inverso del mismo, por ejemplo
si introduce 156 devuelva 651

Estructura Para
Es útil cuando se sabe el número de repeticiones a ejecutar, por lo general se define una
variable que sirve de contador el cual es encargado
de controlar el número de iteraciones. También se
puede definir el incremento del contador en cada
iteración

Sintaxis

39
Programación 1 Ing. Iván I. Cordero Morales

EJERCICIOS RESUELTOS.
Realizar un algoritmo que sume los n números introducidos por el usuario.

Realizar un algoritmo que dado un rango de números enteros, se debe obtener la cantidad de
números que contiene.

40
Programación 1 Ing. Iván I. Cordero Morales

EJERCICIOS PROPUESTOS
1. Realizar un algoritmo que imprima los números del 1 al 10
2. Realizar un algoritmo que imprima los números pares entre el 0 y 100
3. Realizar un algoritmo que imprima los números del 50 al 100.
4. Realizar un algoritmo que imprima los números del -50 al 0.
5. Realizar un algoritmo que determine cuántos números pares e impares existen en un
rango de números.
6. Realizar un algoritmo que permita la carga de 10 valores por teclado y nos muestre
posteriormente la suma de los valores ingresados y su promedio.
7. Realizar un algoritmo que determine si un número es primo o no, se dice que un numero
es primo cuando es divisible entre 1 y entre sí.
8. Realizar un algoritmo que determine el factorial de un numero ingresado por ejemplo si
se ingresa el numero 4!=1*2*3*4 =24
9. Realizar un algoritmo que solicite ingresar 15 edades y nos informe cuántos son mayores
de edad y cuantos menores de edad
10. Realizar un algoritmo que determine cuantos números primos hay en N números
enteros positivos

CONCLUSIONES
Al finalizar la Unidad Temática podremos resolver problemas utilizando algoritmos y
obtendremos con la práctica una lógica de programación la que nos servirá como base para
crear programas que soluciones problemas.

FELICIDADES CONCLUYÓ LA UNIDAD TEMATICA, NOS


VEMOS EN LA SIGUIENTE UNIDAD DONDE
COMENZAREMOS A CREAR PROGRAMAS.

41
Programación 1 Ing. Iván I. Cordero Morales

UNIDAD TEMATICA 3
INTRODUCCION AL LENGUAJE DE
PROGRAMACION
SUMARIO
3.1 ¿Qué es Java?
3.2 Características de Java
3.3 Instalación
3.4 Estructura de un programa
3.5 Variables
3.6 Constantes
3.7 Palabras Reservadas

OBJETIVOS
Comprender conceptos y características del lenguaje de programación JAVA
Instalar Java luego de descargar el software del link proporcionado más adelante
Instalar algún IDE que nos servirá para poder comenzar a crear programas de computadoras
utilizando el lenguaje de programación JAVA

INTRODUCCIÓN
Java es un lenguaje de programación muy popular y fácil de comprender ya que sus
características lo llevan a ser un lenguaje potente para crear programas y solucionar distintos
tipos de problemas

En esta unidad aprenderemos los conceptos principales del lenguaje JAVA además de sus
características principales. Analizaremos la estructura básica de un programa hecho en JAVA
y conoceremos las palabras reservadas de dicho lenguaje.

42
Programación 1 Ing. Iván I. Cordero Morales

DIAGNÓSTICO
Ingresar a www.menti.com para responder las siguientes
preguntas
El docente enviara el código para dicho proceso.

3.1. ¿Qué es Java?


Java es un lenguaje de programación de propósito general, tipado, orientado a objetos, que
permite el desarrollo desde aplicaciones básicas, pasando por aplicaciones empresariales
hasta aplicaciones móviles.
Java nacía como un lenguaje de programación que pudiese ser multiplataforma y
multidispositivo, bajo el paradigma “Write Once Run Anywhere” (WORA)
De esta forma un programa Java escrito una vez podemos ejecutarle sobre diferentes
plataformas, siendo soportados los sistemas operativos Windows, MacOs y UNIX. Y a su
vez en diferentes tipos de dispositivos.
Para poder seguir este paradigma la compilación de un programa Java no genera código
fuente, si no que genera bytecodes. Estos bytecodes son interpretados por una máquina virtual
o JVM (Java Virtual Machine). Dicha máquina ya está escrita para cada uno de los sistemas
operativos en cuestión.

3.2. Características del lenguaje Java


Dentro de las características del lenguaje Java encontramos:

Independiente de Plataforma
Cuando compilamos código fuente Java no se genera código máquina específico, si no que
se generan bytecodes, los cuales son interpretados por la Java Virtual Machine (JVM),
posibilitando que un mismo código fuente pueda ser ejecutado en múltiples plataformas.

Orientado a Objetos
Cualquier elemento del lenguaje Java es un objeto. Dentro de los objetos se encapsulan los
datos, los cuales son accedidos mediante métodos.

43
Programación 1 Ing. Iván I. Cordero Morales

Sencillo
Java está enfocado para ser un lenguaje fácil de aprender. Simplemente se deberán de
entender los conceptos básicos de la programación orientada a objetos (POO).

Seguro
Es seguro ya que los programas se ejecutan dentro de la Java Virtual Machine (JVM) en un
formato de “caja de arena”, de tal manera que no pueden acceder a nada que esté fuera de
ella.
Tiene una validación sobre los bytecodes para comprobar que no hay códigos de fragmento
ilegal.

Arquitectura
Neutral
Independientemente de
que se ejecute en una
arquitectura de 32bits o de
64bits. En Java los tipos de
datos siempre ocupan lo
mismo.

Portable
Java no tiene nada que
dependa de la plataforma,
lo cual le hace que sea
portable a diferentes
plataformas.

Robusto
El lenguaje Java intenta controlar las situaciones de error en los procesos de compilación y
de ejecución, reduciendo de esta manera el riesgo de fallo.
Además Java realiza el control total de la memoria alocándola y retirándola mediante un
garbage colletor, de tal manera que no podemos utilizar punteros para acceder a ella.

44
Programación 1 Ing. Iván I. Cordero Morales

Multi-hilo
Java nos permite la programación concurrente, de tal manera que un único programa puede
abrir diferentes hilos de ejecución.

Interpretado
Los bytecodes son interpretados en tiempo real a código máquina.

Alto Rendimiento
Java ofrece compiladores Just-In-Time que permiten tener un alto rendimiento.

Distribuido
El lenguaje Java está pensando para ser ejecutado en arquitecturas distribuidas, como pueda
ser Internet.

3.3 Instalación:
Para instalar el compilador Java lo primero que
deberemos de hacer es descargarlo de la web de
Oracle. Utilizando el siguiente link o escaneando
el código QR.

https://www.oracle.com/lad/java/technologies/javase-downloads.html
De ella nos podemos bajar el kit de desarrollo (Java SE Development Kit) y el entorno de
ejecución (Java SE Runtime Environment).

45
Programación 1 Ing. Iván I. Cordero Morales

IDE NetBeans
También es necesario utilizar algún IDE que nos ayude a programar, uno de ellos es
NetBeans el cual lo puedes descargar en el siguiente link o escaneando el código QR
https://downloads.apache.org/netbeans/netbeans/12.0/Apache-NetBeans-12.0-bin-
windows-x64.exe

IDE IntelliJ IDEA


IntelliJ IDEA es otro IDE con el cual se pueden crear programas puedes descargarlo del
siguiente link o escaneando el código QR.
https://www.jetbrains.com/es-es/idea/download/#section=windows

Video de Instalación
Se sugiere ver el video de instalación de Java y IntelliJ IDEA que dejamos en el siguiente
Link o escaneando el código QR.
https://youtu.be/z89N3jXo1kQ

46
Programación 1 Ing. Iván I. Cordero Morales

3.4 Estructura de un Programa:


Un programa describe como un ordenador debe interpretar las órdenes del programador para
que ejecute y realice las instrucciones dadas tal como están escritas, Un programador utiliza
los elementos que ofrece un lenguaje de programación para diseñar programas que resuelvan
problemas concretos o realicen acciones bien definidas

En el programa se pueden identificar los siguientes elementos del lenguaje Java: comentarios,
definiciones de clase, definiciones de método y sentencias.

Comentarios: El delimitador de inicio de un comentario es /* e el delimitador de fin de


comentario es */. Los comentarios son ignorados por el compilador y solo son útiles para el
programador.

Definición de clase: La primera línea del programa. Define una clase que se llama
según el ejemplo de arriba HolaMundo. La definición de la clases comienza por el carácter {
y termina con el carácter }.

Definición del método: Después de la definición de la clase se escribe la definición


del métodos main(). Todos los programas Java deben incluir ese método el cual indica las
sentencias a realizar cuando se ejecuta un programa.

47
Programación 1 Ing. Iván I. Cordero Morales

Sentencia: Todas las sentencias de un programa Java deber terminar con el símbolo
punto y coma;

Separadores:
Existen algunos caracteres que tienen un significado especial en el lenguaje Java. En la
siguiente tabla se resumen los diferentes separadores que pueden encontrarse en el código
fuente de un programa.

3.5 Variables:
Los nombres de las variables deben ser cortos pero significativos.
No debería comenzar con un guión bajo (‘_’) o caracteres, como por ejemplo, un signo de
dólar ‘$’.
Debe ser mnemotécnico, es decir, diseñado para indicar al observador casual la intención de
su uso.
Se deben evitar los nombres de variable de un carácter, excepto para variables temporales.
Los nombres comunes para las variables temporales son: i, j, k, m y n para enteros; c, d y e
para los caracteres.

int velocidad= 0;

int edad= 1;

48
Programación 1 Ing. Iván I. Cordero Morales

3.6 Constantes:
Debería estar todo en mayúsculas con palabras separadas por guiones bajos (“_”).
Hay varias constantes utilizadas en clases predefinidas como Float, Long, String, etc.
static final int MIN_WIDTH = 4;

3.7 Palabras Reservadas:


Cualquier lenguaje de programación reserva algunas palabras para representar
funcionalidades definidas por ese lenguaje. Estas palabras se llaman palabras reservadas.
Estas pueden ser categorizadas brevemente en dos partes: palabras clave/keywords (50) y
literales (3).
Palabra Descripción de su funcionalidad
abstract Se utiliza para definir clases y métodos abstractos.
assert Sirve para afirmar que una condición es cierta.
boolean Tipo de dato primitivo booleano (lógico), que puede ser true o false.
break Instrucción de salto que interrumpe (rompe) la ejecución de un bucle o de
una instrucción de control alternativa múltiple (switch).
byte Tipo de dato primitivo número entero (integer) de 8 bits.
case Caso de una instrucción de control alternativa múltiple (switch).
catch Cláusula de un bloque try donde se especifica una excepción.
char Tipo de dato primitivo carácter (valor Unicode) de 16 bits.
class Sirve para definir una clase.
const * No se utiliza.
continue Instrucción de salto que interrumpe (rompe) la ejecución de la iteración
de un bucle. Pero, permitiendo continuar al bucle seguir realizando otras
iteraciones.
default Caso por defecto de una instrucción de control alternativa múltiple
(switch).
do Se usa en la sintaxis de un bucle hacer mientras (do while).
double Tipo de dato primitivo número real en coma flotante con precisión doble
(double-precision floating-point) de 64 bits.

49
Programación 1 Ing. Iván I. Cordero Morales

else Si no, en una instrucción de control alternativa doble (if else).


enum Sirve para definir tipos de datos enumerados.
extends Cláusula que permite indicar la clase padre de una clase.
final Permite indicar que una variable no se puede modificar, un método no se
puede redefinir o de una clase no se puede heredar.
finally Clausula que permite especificar un bloque de código que siempre se
ejecutará, se produzca o no una excepción en un bloque try.
float Tipo de dato primitivo número real en coma flotante con precisión simple
(single-precision floating-point) de 32 bits.
for Instrucción de control repetitiva para.
goto * Instrucción de salto (ir a). No se usa.
if Se emplea para escribir instrucciones de control alternativas simples (if) o
dobles (if else).
implements Sirve para definir la o las interfaces de una clase.
import Permite importar un paquete (package).
instanceof Operador que permite saber si un objeto es una instancia de una clase
concreta.
int Tipo de dato primitivo número entero (integer) de 32 bits.
interface Se utiliza para declarar una interfaz.
long Tipo de dato primitivo número entero (integer) de 64 bits.
native Modificador que se utiliza para indicar que un método está implementado
en un lenguaje de programación (distinto a Java) dependiente de la
plataforma.
new Operador que se utiliza para crear un objeto nuevo de una clase.
package Agrupa a un conjunto de clases.
private Modificador de acceso para indicar que un elemento es accesible
únicamente desde la clase donde se ha definido.
protected Modificador de acceso para indicar que un elemento es accesible desde la
clase donde se ha definido, subclases de ella y otras clases del mismo
paquete (package).

50
Programación 1 Ing. Iván I. Cordero Morales

public Modificador de acceso para indicar que un elemento es accesible desde


cualquier clase.
return Se usa para indicar el valor de retorno de un método.
short Tipo de dato primitivo número entero (integer) de 16 bits.
static Permite especificar que un elemento es único en una clase, no pudiendo
existir instancias de esa clase que contengan a dicho elemento.
strictfp Se usa para indicar que se tienen que utilizar cálculos en coma flotante
estricto (strict floating point).
super Permite invocar a un método o constructor de la superclase.
switch Instrucción de control alternativa múltiple.
synchronized Modificador que se utiliza para indicar que un método o bloque de código
es atómico.
this Se utiliza para referenciar al objeto actual, así como para invocar a un
constructor de la clase a la que pertenece dicho objeto.
throw Permite lanzar una excepción
throws Sirve para indicar las excepciones que un método puede lanzar.
transient Sirve para especificar que un atributo no sea persistente.
try Permite especificar un bloque de código donde se quieren atrapar
excepciones.
void Tipo de dato vacío (sin valor).
volatile Modificador que se usa para indicar que el valor de un atributo que está
siendo utilizado por varios hilos (threads) esté sincronizado.
while Se usa para escribir bucles mientras (while) y bucles hacer mientras (do
while).
(*) Con un asterisco se han marcado las palabras clave que no se utilizan.

51
Programación 1 Ing. Iván I. Cordero Morales

CONCLUSIONES
Comprendimos el significado del lenguaje de programación JAVA, donde pudimos darnos
cuenta de su potencialidad para resolver diferentes problemas que se plantean.
Además de eso logramos instalar JAVA y el IDE con los cuales lograremos crear programas
de aquí en adelante.

FELICIDADES CONCLUIMOS LA UNIDAD TEMATICA 3


PERO TODAVIA NOS QUEDA QUE APRENDER
SIGAMOS…

52
Programación 1 Ing. Iván I. Cordero Morales

UNIDAD TEMATICA 4
PROGRAMACIÓN ESTRUCTURADA
SUMARIO
4.1 Tipos de datos
4.2 Operadores en JAVA
4.3 Estructura Secuencial
4.4 Estructura Condicional
4.5 Estructura Selectiva Multiple Switch
4.6 Estructuras Repetitivas

OBJETIVOS
Comprender el funcionamiento, sintaxis de cada estructura para poder crear programas en
java y solucionar diferentes tipos de problemas

INTRODUCCIÓN
En la programación existen diferentes tipos de estructuras que sirven para manejar la
información y dependiendo del problema llegar a una solución eficaz y eficiente
aprovechando las características particulares de cada una de ellas
En esta unidad lograremos hacer programas con las estruturas secuenciales, condicionales,
selectivas y Repetitivas (While, Do While, For)

DIAGNÓSTICO
Ingresar a www.menti.com para responder las siguientes
preguntas
El docente enviara el código para dicho proceso.

53
Programación 1 Ing. Iván I. Cordero Morales

4.1 Tipos de Datos:


En Java existen ocho tipos de datos primitivos que se pueden clasificar en:

• Números enteros (byte, short, int, long).

• Números reales (float, double).

• Carácter (char).

• Booleano o lógico (boolean).


De todos ellos, salvo del tipo boolean que únicamente puede ser true o false, en la siguiente
tabla se muestran sus posibles valores mínimo y máximo:
Tipo Tamaño Valor mínimo Valor máximo
byte 8 bits -128 127
short 16 bits -32768 32767
int 32 bits -2147483648 2147483647
long 64 bits -9223372036854775808 9223372036854775807
float 32 bits -3.402823e38 3.402823e38
double 64 bits -1.79769313486232e308 1.79769313486232e308
char 16 bits '\u0000' '\uffff'

Nota: un dato de tipo carácter se puede escribir entre comillas simples, por ejemplo 'a', o
también indicando su valor Unicode, por ejemplo '\u0061'.

4.2 Operadores en Java:


Java proporciona muchos tipos de operadores que se pueden usar según la necesidad. Se
clasifican según la funcionalidad que brindan. Algunos de los tipos son los siguientes:
• Operadores aritméticos
• Operadores unarios
• Operador de asignación
• Operadores relacionales

54
Programación 1 Ing. Iván I. Cordero Morales

• Operadores lógicos

Operadores aritméticos
Se utilizan para realizar operaciones aritméticas simples en tipos de datos primitivos.
*: Multiplicación
/: División
%: Modulo
+: Adición
–: Resta

Operadores unarios
Los operadores unarios solo necesitan un operando. Se usan para incrementar, disminuir o
negar un valor.

–: Unario menos, utilizado para negar los valores.


+: Unario más, usado para dar valores positivos. Solo se usa cuando se convierte
deliberadamente un valor negativo en positivo.
++: Operador de incremento, utilizado para incrementar el valor en 1. Hay dos variedades de
operador de incremento.
Pre-Incremento: el valor se incrementa primero y luego se calcula el resultado.
Post-Incremento: el valor se usa por primera vez para calcular el resultado y luego se
incrementa.
—: Operador de decremento, usado para incrementar el valor en 1. Hay dos variedades de
operador de incremento.
Pre-Decremento: el valor se disminuye primero y luego se calcula el resultado.
Post-Decremento: el valor se usa por primera vez para calcular el resultado y luego se
disminuye.
! : Operador lógico “no”, utilizado para invertir un valor booleano.

55
Programación 1 Ing. Iván I. Cordero Morales

Operador de asignación (=)


El operador de asignación se usa para asignar un valor a cualquier variable. Tiene una
asociación de derecha a izquierda, es decir, el valor dado en el lado derecho del operador se
asigna a la variable de la izquierda y, por lo tanto, el valor del lado derecho debe declararse
antes de usarlo o debe ser una constante.

El formato general del operador de asignación es,


En muchos casos, el operador de asignación se puede combinar con otros operadores para
construir una versión más corta de la declaración llamada Declaración Compuesta
(Compound Statement). Por ejemplo, en lugar de a = a + 5, podemos escribir a + = 5.

Operadores relacionales
Algunos de los operadores relacionales son:
==, Igual a: devuelve verdadero si el valor del lado izquierdo es igual al lado derecho.
! =, No igual a: devuelve verdadero si el valor del lado izquierdo no es igual al lado derecho.
<, menos que: el resultado verdadero si el valor del lado izquierdo es inferior al del lado
derecho.
<=, menor o igual que: devuelve verdadero si el valor del lado izquierdo es menor o igual
que el lado derecho.
>, Mayor que: devuelve verdadero si el valor del lado izquierdo es mayor que el lado derecho.
>=, Mayor que o igual a: regresa verdadero si el valor del lado izquierdo es mayor o igual
que el lado derecho.

56
Programación 1 Ing. Iván I. Cordero Morales

Operadores lógicos
Los operadores condicionales son:
&&, AND lógico: devuelve verdadero cuando ambas condiciones son verdaderas.
||, O lógico: devuelve verdadero si al menos una condición es verdadera.

4.3. Estructura Secuencial


Son aquellos programas que ejecutan instrucciones en forma consecutiva, es decir uno detrás
de otro hasta finalizar el proceso.

int x=5;

double y=10;

System.out.println().....

Directrices de codificación
Tus programas Java deben acabar siempre con la extensión .java
Los nombres de archivo deben coincidir con el nombre de su clase pública. Por Ejemplo, si
el nombre de la clase publica es HolaMundo, debe estar guardado en un archivo llamado
HolaMundo.java.
Usted debe escribir comentarios en el código que explica lo que hace una cierta clase, o lo
que hace un determinado método.

Clase Scanner
El uso de la clase Scanner es una de las mejores maneras de ingresar datos por teclado en
Java.

Escribir el import
La clase Scanner se encuentra en el paquete java.util por lo tanto se debe incluir al inicio del
programa la instrucción:

57
Programación 1 Ing. Iván I. Cordero Morales

Crear un objeto Scanner


Tenemos que crear un objeto de la clase Scanner asociado al dispositivo de entrada. Si el
dispositivo de entrada es el teclado escribiremos:

Se ha creado el objeto sc asociado al teclado representado por System.in


Una vez hecho esto podemos leer datos por teclado.

Ejemplos de lectura:

58
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Resueltos con la estructura secuencial en Java:


Realizar un programa que permita leer los datos personales y mostrarlos por consola.

Realizar un programa que permita calcular el producto de dos números

Realizar un programa que permita calcular la División de Dos números.

59
Programación 1 Ing. Iván I. Cordero Morales

Realizar un programa que permita convertir minutos a horas

Realizar un programa que permita convertir horas a minutos

Realizar un programa que permita calcular el área de un cuadrado

60
Programación 1 Ing. Iván I. Cordero Morales

Realizar un programa que permita calcular la circunferencia de un círculo.

Realizar un programa que permita calcular el área de un circulo

Realizar un programa que permita calcular el promedio de 3 notas

61
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Propuestos:
Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.

1. Realizar un programa que permita convertir kilos en libras


2. Realizar un programa que permita hallar el cociente y el resido de dos números enteros
3. Hacer un programa que calcule e imprima el salario semanal de un empleado a partid de
sus horas semanales trabajadas y de su salario por hora
4. Dado el valor de venta de un producto, hallar el IVA 13% y el precio de venta.
5. Realizar un programa que permita hallar la potencia de an
6. Realizar un programa que permita hallar la raíz cuadrada de un numero
7. Realizar un programa que permita mostrar la suma de los resultados de 2 números
elevados al cuadrado.
8. Dado dos números enteros determinar cuántos números enteros están incluidos en ellos
9. Un colegio desea saber qué porcentaje de niños y qué porcentaje de niñas hay en el curso
actual. Diseñar una aplicación que muestre la cantidad de alumnos en porcentaje.

62
Programación 1 Ing. Iván I. Cordero Morales

4.4 Estructura Condicional


Una estructura condicional evalúa una expresión lógica (condición) y puede tener dos
valores, verdadero o falso.

Sintaxis Estructura condicional Simple

Sintaxis Estructura condicional Doble

Sintaxis Estructura condicional Else If

63
Programación 1 Ing. Iván I. Cordero Morales

Sintaxis Estructura condicional


anidada

Operadores de comparación

OPERADOR DESCRIPCIÓN
== Es igual
!= Es distinto
<, <=, >, >= Menor, menor o igual, mayor,
mayor o igual
&& Operador and (y)
|| Operador or (o)
! Operador not (no)

Operadores And, Or, Not

64
Programación 1 Ing. Iván I. Cordero Morales

Ejemplos Operadores Expresión Resultado


Valores: (i >= 6) && (c == ‘w’) true
int i = 7;
(i >= 6) || (c == 119) true
float f = 5.5F;
char c = ‘w’; (f < 11) && (i > 100) false

(c != ‘p’) || ((i + f) <= true


10)

i + f <= 10 false

i >= 6 && c == ‘w’ true

c != ‘p’ || i + f <= 10 true

Ejercicios Resueltos con la estructura condicional en Java:

Dados dos números enteros diferentes devolver el número mayor y el menor

65
Programación 1 Ing. Iván I. Cordero Morales

Dado dos números determinar si son iguales o diferentes

Determinar si un numero entero es positivo, negativo o neutro

Dado una edad determinar si es mayor de edad

66
Programación 1 Ing. Iván I. Cordero Morales

Dado un carácter determinar si es vocal

Dado un numero determinar si es par o impar

Dado tres números devolver el número mayor

67
Programación 1 Ing. Iván I. Cordero Morales

Dado tres números devolver el número menor

Un restaurante ofrece un descuento del 10% para consumos hasta 100 bs y un descuento de
20% para consumos mayores, para ambos casos se aplica un impuesto del 13% determinar
el monto de descuento, el impuesto y el importe a pagar

68
Programación 1 Ing. Iván I. Cordero Morales

Después de ingresar 4 notas, obtener el promedio de las tres mejores notas y mostrar
Aprobado si el promedio es mayo a 61 caso contrario reprobado

69
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Propuestos Estructura Condicional:


Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.

1. Pedir un rango de número y un número, y determinar si el número se encuentra dentro


del rango.
2. Pedir un número entre 0 y 99999 y decir cuantas cifras tiene.
3. Construir un programa que calcule el índice de masa corporal de una persona (IMC =
peso [kg] / altura2 [m]) e indique el estado en el que se encuentra esa persona en función
del valor de IMC
• 16 a 17 infra peso
• 17 a 18 bajo peso
• 18 a 25 peso normal (saludable)
• 25 a 30 sobrepeso (obesidad de grado I)
• 30 a 35 sobrepeso crónico (obesidad de grado II)
• 35 a 40 obesidad premórbida (obesidad de grado III)
• >40 obesidad mórbida (obesidad de grado IV)
4. En un casino de juegos se desea mostrar los mensajes respectivos por el puntaje obtenido
en el lanzamiento de tres dados de un cliente, de acuerdo con los siguientes resultados:
• Si los tres dados son seis, mostrar el mensaje “Excelente”
• Si dos dados se obtienen seis, mostrar el mensaje “Muy bien”
• Si un dado se obtiene seis, mostrar el mensaje “Regular”
• Si ningún dado se obtiene seis, mostrar el mensaje “Pésimo”

70
Programación 1 Ing. Iván I. Cordero Morales

4.5 Estructura Selectiva Múltiple Switch


Permite evaluar varias alternativas y realizar el proceso si cumple con la condición elegida
Simplifica soluciones de ejercicios con múltiples IFs.

Sintaxis Switch

Switch Anidado

71
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Resueltos de Programas con la estructura SWITCH en


Java:
Realiza un programa que solicite un número que corresponda al mes del año y muestre la
estación del año

72
Programación 1 Ing. Iván I. Cordero Morales

Determine el importe a pagar para el examen de admisión en una universidad, cuyo valor
depende del nivel socio Económico y el colegio de procedencia
Colegio A B C
Fiscal 300 200 100
Particular 400 300 200

73
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Propuestos estructura SWITCH en Java:


Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom
de la materia en la tarea asignada por el docente para su respectiva evaluación.

1. Dado un número del 0 al 9 devolver el numero en Letras


2. Dado el numero de un mes devolver el mes en letras
3. Lea un número del 1 al 7 y devuelva el día de la semana considere que 1 es
Domingo
4. Dada una letra determinar si es vocal
5. Realice un menú de un hotel donde se tiene que tomar en cuenta: Desayuno,
Almuerzo y cena
6. Un video club desea un programa para mostrar las películas con las que cuenta, las
mismas deben estar clasificadas según el género por ejemplo: Drama, Comedia,
Infantiles y Acción.
7. Dado dos números enteros y un operador +,-,/,* devolver la operación de los dos
números según el operador ingresado, considere que si el segundo número es cero y
el operador es /, no es divisible con el primer número, entonces devolver resultado
“No se puede dividir entre 0”
8. Al Ingresar el día y el numero de un mes, devolver la estación del año
• Verano del 21 de diciembre al 20 de marzo
• Otoño del 21 de marzo al 21 de junio
• Invierno del 22 de junio al 20 de septiembre
• Primavera del 23 de septiembre al 20 de diciembre

74
Programación 1 Ing. Iván I. Cordero Morales

4.6 Estructuras Repetitivas

Estructura WHILE
La instrucción "While", es una estructura de
control repetitiva que puede impedir la ejecución
de un conjunto de instrucciones, si la evaluación
de la expresión relacional y/o lógica es falsa. Esto
significa que se convierte en repetitiva únicamente
cuando la evaluación de la condición es verdadera.

Sintaxis WHILE

Ejercicios Resueltos de Programas con la estructura de repetición


WHILE en Java:
Realizar un programa que imprima en pantalla los números del 1 al 100.

75
Programación 1 Ing. Iván I. Cordero Morales

Imprimir los números del 1 al 500.

Imprimir los números del 50 al 100.

Imprimir los números del 2 al 100 pero de 2 en 2 (2,4,6,8 ....100).

76
Programación 1 Ing. Iván I. Cordero Morales

Escribir un programa que solicite la carga de un valor positivo y nos muestre desde 1 hasta
el valor ingresado de uno en uno.

Obtener la suma de los primeros N números positivos

77
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Propuestos con la estructura de repetición WHILE en


Java:
Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.
1. Realizar un programa que permita imprimir los números del -50 al 0.
2. Realizar un programa que dado un número determine cuantos dígitos tiene
3. Desarrollar un programa que permita la carga de 10 valores por teclado y nos muestre
posteriormente la suma de los valores ingresados
4. Dado un rango de números enteros, obtener la cantidad de números enteros que
contiene
5. Escribir un programa que solicite ingresar 10 notas de alumnos y nos informe cuántos
tienen notas mayores o iguales a 7 y cuántos menores.
6. Obtener la cantidad de los primeros N números múltiplos de 5
7. Dado 2 números diga si son amigos, recuerde que dos números son amigos si la suma
de sus divisores de uno de ellos es igual al otro y viceversa, por ejemplo 220 y 284
son amigos.
Ejemplo: Divisores de 220: 1+2+4+5+10+11+20+22+44+55+110=284
Divisores de 284: 1+2+4+71+142 =220

Estructura DO WHILE
La estructura do while es otra estructura repetitiva, la cual
ejecuta al menos una vez su bloque repetitivo

Sintaxis DO WHILE

78
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Resueltos de Programas con la estructura de repetición


DO WHILE en Java:
Realizar un programa que imprima en pantalla los números del 1 al 100

Realizar un programa que imprima los números del 1 al 500

Pedir un número hasta el usuario teclee 0

79
Programación 1 Ing. Iván I. Cordero Morales

Escribir un programa que pida una contraseña repetitivamente hasta que sea la correcta (123)

Escribir un programa que solicite un rango y muestre la cantidad de números pares que
contiene.

80
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Propuestos estructura de repetición DO WHILE en


Java:
Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.

1. Realizar un programa que permita imprimir los números del -50 al 0.


2. Dado un rango de números enteros, obtener la cantidad de números enteros que
contiene
3. Escribir un programa que solicite ingresar 10 notas de alumnos y nos informe cuántos
tienen notas mayores o iguales a 61 y cuántos menores.
4. Obtener la cantidad de los primeros N números múltiplos de 5
5. Ingresar un número y mostrar su tabla de multiplicación hasta el 10, utilizar la
estructura Do While
ejemplo: 4 =
4 * 1 =4
4 * 2 =8
4 * 3 =12
4 * 4 =16
4 * 5 =20
4 * 6 =24
4 * 7 =28
4 * 8 =32
4 * 9 =36
4 * 10 =40
6. Realizar un programa que muestre el cuadrado de n números utilizando la estructura
Do While
ejemplo: 3 =
1 ^ 2 =1
2 ^ 2 =4
3 ^ 2 =9

81
Programación 1 Ing. Iván I. Cordero Morales

ESTRUCTURAS FOR (PARA)


Permite repetir una o más instrucciones una cantidad de veces:
• Cuenta con una variable contador conde se establece el valor Inicial
• Una condición
• Un valor de Incremento o
decremento

Sintaxis FOR:

Ejercicios Resueltos Estructura FOR


Imprimir los números del 2 al 100 pero de 2 en 2 (2,4,6,8 …100).

Realizar un programa que imprima en pantalla los números del 1 al 100

Realizar un programa que imprima los números del 1 al 500

82
Programación 1 Ing. Iván I. Cordero Morales

Obtener la suma de los primeros N número naturales positivos

Dado un rango de números enteros, obtener la cantidad de números enteros que contiene

Dado un rango obtener la cantidad de números pares que contiene

83
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios estructura de FOR en Java:


Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.
1. Obtener la suma de pares e impares de los primeros N números enteros positivos
2. Crear un programa que indique si un número es perfecto o no, se dice que un número
es perfecto si la suma de sus divisores es igual al número, por ejemplo 6 tiene como
divisores 1,2 y 3 entonces 1+2+3 = 6 es perfecto, si el número es 9 tiene como
divisores 1,3 entonces 1+3=4 no es perfecto
3. Dado un rango de número, numero inicial y final, obtener la cantidad de números
positivos y negativos que existen el rango.
4. Crear un algoritmo para hallar la factorial de un número, factorial es el producto de
todos los números consecutivos desde la unidad hasta el número, por ejemplo
factorial de 3! Es 1*2*3=6
5. Determinar sin un número es primo, se dice que un umero es primo si es divisible
entre 1 y entre sí mismo
6. Determinar cuántos números primos hay en los primeros N números enteros positivos
7. Crear un programa que calcule el Factorial de un número. La factorial es el producto
de todos los números consecutivos desde la unidad hasta el número, por ejemplo
factorial de 3! es 1x2x3=6
8. Realizar un programa utilizando FOR que te muestre por pantalla un cuadrado de
asteriscos por ejemplo si el usuario ingresa 3 debe mostrar:

***
***
***

84
Programación 1 Ing. Iván I. Cordero Morales

CONCLUSIONES
Logramos resolver problemas utilizando las estructuras secuenciales, condicionales,
selectivas y repetitivas en el lenguaje de programación JAVA
Las practicas son importantes para lograr aprender a crear programas de manera correcta esto
nos servirá como base para seguir creciendo en el mundo de la programación

FELICIDADES VAMOS POR BUEN CAMINO…

85
Programación 1 Ing. Iván I. Cordero Morales

UNIDAD TEMATICA 5
PROGRAMACIÓN MODULAR
SUMARIO
5.1. Funciones
5.2 Procedimientos

OBJETIVOS
Crear programas que den solución a diferentes problemas empleando la programación
modular con funciones y procedimientos

INTRODUCCIÓN
La programación modular es un método muy empleado para la resolución de problemas
grandes y es común utilizar la frase “Divide y vencerás” que fue nombrada por el emperador
Romano Julio Cesar, que consiste en dividir los problemas para poder resolverlos por partes.
Esta forma de crear programas es muy interesante ya que utiliza métodos y procedimientos
para la solución de problemas, además de ser base importante para poder comprender la
programación Orientada a Objetos.
En esta Unidad veremos cómo crear los programas empleando este método además de sus
conceptos y características

DIAGNÓSTICO

Ingresar a www.menti.com para responder las


siguientes preguntas
El docente enviara el código para dicho proceso.

86
Programación 1 Ing. Iván I. Cordero Morales

5.1 Funciones:
Las funciones son un conjunto de líneas
de código (instrucciones), encapsulados
en un bloque, usualmente reciben
parámetros, cuyos valores utilizan para
efectuar operaciones y adicionalmente
retornan un valor.

En java las funciones usan el


modificador static.

5.2 Procedimientos:
Conjunto de instrucciones que se
ejecutan sin retornar ningún valor
Tipo de retorno es void que no nos
obliga a utilizar una sentencia return

Métodos
Los métodos y las funciones en Java están en capacidad de realizar las mismas tareas, es
decir, son funcionalmente idénticos, pero su diferencia radica en la manera en que hacemos
uso de uno u otro (el contexto). Un método también puede recibir valores, efectuar
operaciones con estos y retornar valores, sin embargo en método está asociado a un objeto,
básicamente un método es una función que pertenece a un objeto o clase.

87
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Resueltos Funciones:


Realizar un programa que nos muestre cuantos números pares existen en un rango utilizando
funciones

Realizar un programa que muestre si un número es primo

88
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios Propuestos Funciones:


Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.
1. Dado dos números crear funciones para calcular la suma, resta, multiplicación y
división
2. Dado dos números crear una función que devuelva el número mayor
3. Dado un numero crear una función que determine la cantidad de dígitos que contiene
4. Crear una función que halle el área y otra que halle el perímetro de un cuadrado
5. Crear un programa que tenga la función de calcular el factorial de un número, el
factorial es el producto de todos los números consecutivos desde la unidad hasta el
numero por ejemplo el factorial de 3 es : 1*2*3 =6
6. Dada 3 notas obtenga el promedio de las 2 notas mayores utilizando una función

Ejercicios Resueltos Procedimientos.


Crear un procedimiento que muestre los datos personales del usuario

89
Programación 1 Ing. Iván I. Cordero Morales

Crear un procedimiento que muestre la tabla de multiplicar.

Ejercicios Propuestos de Procedimientos:


Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al
Classroom de la materia en la tarea asignada por el docente para su respectiva
evaluación.
1. Crear un procedimiento que muestra en pantalla el doble del valor que
se le pasa como parámetro.
2. Crear un procedimiento que me muestre los números del 1 al 10
3. Crear un procedimiento que muestre el menú de usuario.
4. Crear un procedimiento al que se le pasan dos enteros y muestra todos
los números comprendidos entre ellos, inclusive.
5. Crear un procedimiento que muestre la tabla de multiplicar que elija el
usuario.
6. Crear un procedimiento muestre el área o el volumen de un círculo,
según se especifique. Para distinguir un caso de otro se le pasará el
carácter 'a' (para área) o 'v' (para el volumen).

90
Programación 1 Ing. Iván I. Cordero Morales

CONCLUSIONES
En esta unidad creamos varios programas utilizando el método de Programación modular,
dicha actividad nos será muy útil de aquí en adelante para solucionar problemas
Comprendimos que es mejor dividir los problemas para irlos solucionando por módulos y
también identificamos las ventajas de la programación modular tales como la reutilización
de código

FELICIDADES SIGAMOS APRENDIENDO!!!!

91
Programación 1 Ing. Iván I. Cordero Morales

UNIDAD TEMATICA 6
ARREGLOS UNIDIMENSIONALES Y
BIDIMENSIONALES
SUMARIO
6.1 Arreglos Unidimensionales
6.2 Arreglos Bidimensionales

OBJETIVOS
Conocer el trabajo de datos utilizando arreglos Unidimensionales y bidimensionales para
solucionar los problemas planteados

INTRODUCCIÓN
Los arreglos o Arrays como se los conoce son estructuras muy utilizadas en la programación
para poder realizar el tratamiento de información de manera eficaz y eficiente.
Los arreglos son estructuras de datos de un mismo tipo y además están relacionados entre si,
contienen un longitud fija.
En esta unidad veremos que son los arreglos, como se los utiliza, sus características y sus
tipos.

DIAGNÓSTICO
Ingresar a www.menti.com para responder las
siguientes preguntas
El docente enviara el código para dicho proceso.

92
Programación 1 Ing. Iván I. Cordero Morales

6.1 Arreglos Unidimensionales


Un Arreglo es un conjunto de datos con un numero de componentes, todos del mismo tipo,
que están referenciados bajo un mismo nombre.
Un arreglo es un grupo de posiciones de memoria contiguas, todas las cuales tienen el mismo
nombre y tipo

INDICES

0 1 2 3 4
• 48 • 50 • 10 • 20 • 5

ELEMENTOS

Variables vs Arreglo
Los Arreglos permiten manejar de forma sencilla y directa conjuntos de datos del mismo
tipo, las variables manejar un dato del mismo tivo

Entero - Int

x= •5

0 1 2 3 4

z= • 48 • 50 • 10 • 20 • 5

93
Programación 1 Ing. Iván I. Cordero Morales

Características de los Arreglos:


• Se usa para almacenar elementos del mismo tipo
• Un Arreglo es de tamaño fijo
• Cada elemento se guarda en un espacio independiente
• Cada espacio se referencia con un índice (0,1,2,3…..n)

Declaración de Arreglos:

Inicialización de Arreglos:
Los arreglos definidos de la forma anterior no están inicializados, es decir, no contienen
ningún valor, lo cual se representa con null si es String o 0 si es int o doble:
.

Declarar e Inicializar un arreglo


Para declarar e Inicializar un arreglo se hace de la siguiente manera:

TipodeDato nombre[]={val1,val2,val3,…,valn};
Ejemplos

94
Programación 1 Ing. Iván I. Cordero Morales

Inserción de Datos
Para Ingresar datos en un arreglo se debe indicar la posición o índice del arreglo en que se va
a insertar el valor:

nombreArreglo[posicion]=valor;
Ejemplo:

0 1 2 3

“Oscar” “Sara” “Juan” “Carla”

Extracción de datos:
Para recuperar datos de un arreglo se debe indicar la posición del arreglo que se quiere
conocer:

NombreArreglo[posicion]

nombres[2] indica el valor en la posición 2 : “Julian”

95
Programación 1 Ing. Iván I. Cordero Morales

Recorrido de Arreglos (Arrays):


Para realizar el recorrido en un arreglo generalmente se utiliza el ciclo For

Ejericicios Resueltos Arreglos Unidimensionales:


Dado 5 números almacenados en un arreglo obtener la suma de estos

96
Programación 1 Ing. Iván I. Cordero Morales

Crear un arreglo de N campos, y rellenar con nombres que ingrese el usuario para luego
mostrarlos por pantalla con su posición,

Realizar la suma de dos Arrays, el resultado almacenarlo en otro array

97
Programación 1 Ing. Iván I. Cordero Morales

Dado 8 números y un divisor determinar cuántos números múltiplos hay del divisor

Ejercicios Propuestos Arrays Unidimensionales


Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.
1. Leer 5 números y mostrarlos en orden inverso al introducido.
2. Dado un arreglo de 10 campos determinar cuántos pares e impares existen en ese
arreglo
3. Leer 10 números enteros. Debemos mostrarlos en el siguiente orden: el primero, el
último, el segundo, el penúltimo, el tercero, etc.
4. Leer 5 números y mostrarlos en orden inverso al introducido
5. Leer por teclado dos arrays de 10 números enteros y mezclarlas en una tercera de la
forma: el 1º de A, el 1º de B, el 2º de A, el 2º de B, etc
6. Dado 6 números almacenados en un arreglo obtener el número mayor

98
Programación 1 Ing. Iván I. Cordero Morales

6.2 Arreglos Bidimensionales


Es un conjunto de
elementos de un mismo
tipo de datos que se
almacenan con un
mismo nombre
Cada elemento tiene
una posición que se
identifica mediante dos
índices

Declaración de Arrays Bidimensionales

TipodeDato nombre[][] = new TipodeDato[n][m]


n es el número de filas
m es el número de columnas

Recorrer Array Bidimensiona(Matriz):


Para recorrer y trabajar como matrices se utilizan 2 For

99
Programación 1 Ing. Iván I. Cordero Morales

Mostrar Matrices
Para ver, imprimir las matrices o arreglos bidimensionales se realiza lo siguiente:

Ejercicios Resueltos Arreglos Bidimensionales


Ingrese 6 números en una matriz 3 x 2 y obtenga la suma de los números ingresados

100
Programación 1 Ing. Iván I. Cordero Morales

Almacene en una matriz 3*2 números y obtenga la cantidad de pares e impares

Ejercicios Propuestos Arreglos Bidimensionales


Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.
1. Dado un arreglo de tamaño N mostrar el promedio de sus valores
2. En una matriz de filas y columnas ingresadas por el usuario obtenga el número mayor
y el número menor
3. Encontrar la suma de la diagonal de una matriz
4. Determinan si dos matrices son idénticas o no
5. Realizar un programa que sume dos matrices de n * m
6. En una matriz de n *m ingresar valores y multiplicar el contenido por un valor
ingresado por el usuario, mostrar la nueva matriz
7. Crear una matriz 4*4 y obtener los números mayores de cada columna

101
Programación 1 Ing. Iván I. Cordero Morales

8. Busque un numero dentro de una matriz 4*4, y determine la posición y si existe o no


el numero buscado.
9. Crear una tabla de tamaño 6x6 y rellenarla de forma que los elementos de la diagonal
principal sean 1 y el resto 0.
10. Crear y cargar una tabla de tamaño 10x10, mostrar la suma de cada fila

Conclusiones
Los arreglos y matrices nos permiten almacenar/manipular conjuntos de datos agrupados de
manera eficiente. En general, son ideales para el registro/manipulación de información
homogénea que representa una tabulación de resultados (valoración) agrupados por
categorías. Tienen la ventaja de que sus elementos se acceden rápidamente a través de sub-
índices.

FELICIDADES YA COMPRENDEMOS EL MANEJO DE


ARRAYS CONTINUEMOS…

102
Programación 1 Ing. Iván I. Cordero Morales

UNIDAD TEMATICA 7
MANEJO DE CADENAS
SUMARIO
7.1 Cadenas
7.2 Creación de Cadenas
7.3 Manejo de Cadenas
7.4 Búsquedas en Cadenas
7.5 Comparación en Cadenas

OBJETIVOS
Comprender el uso y tratamiento de cadenas para la solución de problemas, tomando en
cuenta que las cadenas son parte importante para la creación de programas.

INTRODUCCIÓN
Las cadenas son una parte fundamental de la mayoría de los programas. Java tiene una clase
incorporada en el paquete java.lang que encapsula las estructuras de datos de una cadena.
Esta clase, llamada String es la representación como objeto de una matriz de caracteres que
no se puede cambiar. Hay una clase que la acompaña, llamada StringBuffer, que se utiliza
para crear cadenas que pueden ser manipuladas después
de ser creadas.

DIAGNÓSTICO
Ingresar a www.menti.com para responder las
siguientes preguntas
El docente enviara el código para dicho proceso.

103
Programación 1 Ing. Iván I. Cordero Morales

7.1 Cadenas:
Secuencia de caracteres. Las cadenas son una parte fundamental de la mayoría de los
programas, así pues Java tiene varias
características incorporadas que facilitan la
manipulación de cadenas. Java tiene una clase
incorporada en el paquete java.lang que
encapsula las estructuras de datos de una
cadena.

7.2 Creación de Cadenas:


Para crear una cadena se debe realizar la creación de un objeto de tipo String y se lo hace de
la siguiente manera:

Se pueden utilizar cadenas literales en cualquier lugar donde se pueda utilizar un objeto
String. Por ejemplo, System.out.println() acepta un argumento String, por eso se puede
utilizar una cadena literal en su lugar:

104
Programación 1 Ing. Iván I. Cordero Morales

7.3 Manejo de Cadenas

Concatenación:
Para concatenar cadenas se utiliza el Operador +

Longitud de Cadenas
Uno de los métodos más habituales que se utilizan en un String es length, que devuelve el
número de caracteres de una cadena:

El resultado de ejecutar el código anterior sería la impresión de 3, que se corresponde con la


longitud llamada cadena.

Extracción de caracteres.
Para extraer un único carácter de una cadena, se puede referir a un carácter indexado mediante
el método charAt, la sintaxis es la siguiente:

Objeto_cadena.charAt(índice);

Devolverá 'b'
Para extraer una cadena se utiliza el método Substring especificando el primer valor de la
subcadena y el ultimo.

105
Programación 1 Ing. Iván I. Cordero Morales

Si se necesita extraer más de un carácter a la vez, puede utilizar el método getChars, que le
permite especificar el índice del primer carácter y del último más uno que se desean copiar,
además de la matriz char donde se desean colocar dichos caracteres.

7.4 Búsqueda de Cadenas:


Buscar si una cadena se encuentra dentro de otra cadena mas grande, si fuera así la función
devuelve la posición de la cadena encontrada caso contrario retorna -1

Conversiones:
Convertir números a cadena o cadena de números a números, es una tarea frecuente en los
lenguajes de programación, así como convertir a mayúsculas o minúsculas una cadena de
caracteres u obtener el valor ASCCI.

106
Programación 1 Ing. Iván I. Cordero Morales

7.5 Comparación de cadenas:


Comparar cadenas en Java es algo simple de hacer, pero que podemos hacer mal si no
sabemos cuál es la forma correcta. Recordemos que Java trata a las cadenas como objetos,
no como tipos primitivos.
Debido a eso, comparar cadenas en Java requiere algo más que usar el operador de igualdad

==
Equals

Los objetos tienen un método llamado equals, que en español vendría siendo un equivale o
es igual a.

Comparar sin importar mayúsculas (ignore case)

107
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios resueltos Cadenas.


Se desea obtener los N primeros caracteres de un nombre

Dada una frase devolver la frase sin espacios en blanco.

108
Programación 1 Ing. Iván I. Cordero Morales

Ejercicios propuestos Cadenas


Realizar los siguientes programas. Los ejercicios realizados deberán subirlo al Classroom de
la materia en la tarea asignada por el docente para su respectiva evaluación.
1. Realizar un programa utilizando la comparación de cadenas que al ingresar una letra
determine si es una vocal
2. Dada una frase determine cuantas veces se repite una letra en una frase dada
3. Dada una cadena mostrar por pantalla la cantidad de vocales que tiene. Ejemplo:
Entrada: cadena= "Hola tu"
Salida: La cantidad de vocales es 3
4. Dada una frase devuelva la frase con asteriscos en lugar de espacios blancos
5. Dada una palabra determinar si es palíndromo (Una palabra es palíndromo si se lee igual
de izquierda a derecha o derecha a izquierda) por ejemplo ANA

CONCLUSIONES
Comprender el manejo de cadenas es vital para en un futuro construir programas, porque los
programas en su mayoría tienen cadenas.
Conseguimos en esta unidad comprender la clase String y varios de sus métodos nos servirán
de base para continuar programando.

FELICIDADES CONCLUIMOS LA UNIDAD Y EL TEXTO DE


PROGRAMACION 1, ESPERANDO APORTE A TUS
CONOCIMIENTOS, TE INVITO A SEGUIR PRACTICANDO,
INVESTIGANDO Y CREANDO ….

109
Programación 1 Ing. Iván I. Cordero Morales

BIBLIOGRAFÍA
Alfonso, Dolores. (2000), “Metodología de la Programación”, Paraninfo S.A, México.
De Giusti Armando E. (2001). Algoritmos Datos y Programas. Madrid - España: Prentice-
Hall.
Joyanes, L. (2008). Fundamentos de la programación. Algoritmos y Estructura de Datos.
Madrid.
Villalobos, Ricardo M. (2008). Fundamentos de programación Java mas de 100 Algoritmos
codificados. Perú: Empresa Editora Macro

110

También podría gustarte