29
III. Herramientas de programación. Para la representación de algoritmos se debe utilizar algún método que permita la independización del lenguaje de programación elegido para su ejecución. Para conseguir este objetivo se precisa que el algoritmo sea representado gráficamente o numéricamente. Los métodos más utilizados para la representación de algoritmos son: Diagramas de Flujo Diagrama NassiSchneiderman (NS) Lenguaje de especificación de algoritmos (Pseudocódigo) III.1. Simbología Diagramas de Flujo EL diagrama de flujo (Flowchart) es una de las técnicas de representación de algoritmos más antigua y a la vez más utilizada. Un diagrama de flujo (DF) es un diagrama que utiliza cajas y líneas que indican el flujo de la información. Símbolo Función Inicio/Fin. Comienzo y último símbolo de los diagramas de flujos. Entrada. Se especifican los datos de entrada del algoritmo.

Fundamentos de Programacion Unidad 3

Embed Size (px)

Citation preview

Page 1: Fundamentos de Programacion Unidad 3

III. Herramientas de programación.

Para la representación de algoritmos se debe utilizar algún método que permita la

independización del lenguaje de programación elegido para su ejecución. Para conseguir

este objetivo se precisa que el algoritmo sea representado gráficamente o

numéricamente. Los métodos más utilizados para la representación de algoritmos son:

Diagramas de Flujo

Diagrama NassiSchneiderman (NS)

Lenguaje de especificación de algoritmos (Pseudocódigo)

III.1. Simbología

Diagramas de Flujo

EL diagrama de flujo (Flowchart) es una de las técnicas de representación de algoritmos

más antigua y a la vez más utilizada. Un diagrama de flujo (DF) es un diagrama que utiliza

cajas y líneas que indican el flujo de la información.

Símbolo Función

Inicio/Fin. Comienzo y último símbolo de los diagramas de flujos.

Entrada. Se especifican los datos de entrada del algoritmo.

Page 2: Fundamentos de Programacion Unidad 3

Símbolo Función

Salida. Se especifican los datos de salida del algoritmo.

Proceso. Se especifica cualquier tipo de operación expresión matemáticas (calculo, almacenamiento, transferencia)

Conector. Enlaza diferentes partes del diagrama de flujo

Fechas. Indican el flujo de datos en el algoritmo

Diagrama NassiSchneiderman (NS)

El diagrama NS también conocido como diagrama Chapin, es semejante al DF pero sin

flechas de dirección, por lo cual utiliza un rectángulo para representar los pasos del

algoritmo.

Inicio

Acción 1

Acción 2

...

Acción n

Fin

Page 3: Fundamentos de Programacion Unidad 3

Pseudocódigo

Esta técnica es una combinación entre lenguaje natural y lenguaje de alto nivel.

Inicio

Acción 1

Acción 2

Acción n

Fin

III.2. Reglas para la construcción de diagramas

Diagramas de Flujo

Los diagramas de flujo comienzan con el símbolo de inicio/fin

indicando el comienzo del diagrama:

Y terminan con el símbolo de inicio/fin indicando el término

del diagrama:

Entre los símbolos de inicio/fin se ponen las acciones

(asignación, proceso, entrada, salida, etc.) que forman parte

del diagrama.

, , , etc.

Diagrama NassiSchneiderman (NS)

Para este tipo de diagrama se utiliza un rectángulo, en el cual comienza con la leyenda

Inicio y termina con la leyenda Fin. Entre estos dos recuadros de desarrolla el contenido

del algoritmo.

Inicio

Fin

Acción 1

Acción 2

...

Acción n

Inicio

Fin

Page 4: Fundamentos de Programacion Unidad 3

Definición del problema: Obtenga la superficie y la longitud de un circulo.

Análisis:

Entrada: Radio

Salida: Superficie, Longitud

Algoritmo: Una vez obtenido el radio, calcular:

y

Diagrama de Flujo Diagrama NS

Inicio

Acción 1

Acción 2

...

Acción n

Fin

Inicio

Fin

Superficie= π *Radio^2

Longitud=2*π *Radio

LeerRadio

Superficie, Longitud

Inicio

Leer Radio

Superficie=π *Radio^2

Longitud=2*π *Radio

Imprimir

Superficie, Longitud

Fin

Page 5: Fundamentos de Programacion Unidad 3

III.3. Pseudocódigo

En este tipo de representación se comienza con la leyenda Inicio y termina con Fin y entre

los términos de comienzo y terminación se escribe el desarrollo del algoritmo.

Inicio

Leer Radio

Superficie= *Radio^2

Longitud=2* *Radio

Imprimir Superficie, Longitud

Fin

Ejercicios:

1. Calcule el salario neto de un trabajador a partir de la lectura del nombre, horas

trabajadas, precio por hora y el cálculo de impuesto son el 25% del salario bruto

(horas trabajadas por precio por hora). Como resultado final imprima el nombre,

salario bruto, impuestos y salario neto.

2. Obtenga la superficie de un triangulo

3. Obtenga el total a pagar aplicando un descuento del 5%.

4. Obtenga los valores de X1 y X2 para resolver ecuaciones de segundo grado:

5. De los valores a y b, obtenga cuantas veces cabe el valor b en el valor a.

6. Obtenga la suma de los números del 1 al 100.

7. Elabore un algoritmo que lea dos valores y los intercambie.

Estructura selectivas

Las estructuras selectivas se utilizan para forma decisiones lógicas. En las estructuras se

evalúa una condición y en función del resultado se puede realizar una acción u otra.

Page 6: Fundamentos de Programacion Unidad 3

Estructuras selectivas simples

Diagrama de Flujo Diagrama NS

Pseudocódigo

Si Condición

Acción 1 Fin Si

1. La tienda “Artículos de Limpieza S.A. de C.V.” realiza un descuento del 5% a todas

las compras mayores a 2500.00 pesos. Elabore un algoritmo que resuelva este

problema.

2. La empresa “Electrónica Digital” desea un programa que determine si una persona

es solvente económicamente en base a los ingresos y los gastos; si los ingresos

son mayores a los gastos la persona es solvente. Elabore un algoritmo que

resuelva este problema.

3. En la clínica “Salud Eterna” desean un programa que determine si una persona

esta enferma en base a su temperatura corporal; si la temperatura corporal es

mayor a 36.5 el programa debe mandar un mensaje que diga “Enfermo”.

Estructuras selectivas dobles

Diagrama de Flujo Diagrama NS

Condición

Acción 1

Verdadero Falso

Acción 1

Condición

FalsoVerdadero

Condición

Acción 1

Verdadero Falso

Acción 2

Acción 1

Condición

FalsoVerdadero

Acción 2

Page 7: Fundamentos de Programacion Unidad 3

Pseudocódigo

Si Condición

Acción 1 En otro caso

Acción 2 Fin Si

4. Escriba un algoritmo que calcule el total a pagar en una tienda departamental, si la

compra excede de 15,000 pesos se concede un descuento del 10%, en caso

contrario el descuento es del 5%.

5. Elabora un algoritmo que en base a dos números imprima el mayor.

6. Elabore un algoritmo que en base a tres números imprima el mayor.

7. Elabore un algoritmo que en base a cuatro números, los imprima en forma

descendente.

Estructuras de selección múltiple

En la vida se presentan problemas en los cuales presentan más de dos alternativas como

posibilidades y eso se soluciona con estructuras de selección múltiple.

Diagrama de Flujo

Diagrama NS

Selector

Acción 1 Acción nAcción 2 Acción OC

1 2n

Otro Caso

Acción 1

Selector

Verdadero

Acción 2

1

Acción n Acción OC…

2 n

Otro

Caso

Page 8: Fundamentos de Programacion Unidad 3

Pseudocódigo

Según sea Selector hacer

1: Acción 1 2: Acción 2

… n: Acción n

En otro caso: Acción OC

Fin Según

8. Elabore un algoritmo que en base al número del mes imprima el mes

correspondiente como cadena de caracteres.

9. Elabore un algoritmo que en base a un número (entre 10 y 20) imprima su valor

con letra.

10. Elabore un algoritmo que en base al número de día de la semana imprima que día

es.

Estructuras de repetición

Cuando se requiere que un conjunto de instrucciones se repita varias veces se utiliza las

estructuras de repetición.

Diagrama de Flujo

For/Next

While/Mientras

Repeat/Repite

Condición

Inc/Dec

Inicio

Proceso

Si

No

Condición

Proceso Verdadero

Falso

Condición

Proceso

Verdadero

Falso

Page 9: Fundamentos de Programacion Unidad 3

Diagrama NassiSchneiderman (NS)

For/Next

While/Mientras

Repeat/Repite

Pseudocódigo

For/Next Para I = VI Hasta VF [Inc Valor/Dec Valor]

Proceso Fin Para

While/Mientras

Mientras Condición Proceso

Fin Mientras

Repeat/Repite Repite

Proceso Hasta Condición

11. Elabore un algoritmo que lea 10 calificaciones e imprima el promedio.

12. Elabore un algoritmo que lea dos números e imprima la serie de números que

existe entre el número menor a el número mayor.

13. Elabore un algoritmo que lea una serie de valores e imprima el valor más grande

de la serie. El fin de la serie esta denotado por el valor 9999.

14. Calcular la media de una serie de números positivos. El valor cero como entrada

indican que se ha finalizado la serie de números positivos.

Inc/Dec

Inicio

Proceso

While Condición

Proceso

Repeat Condición

Proceso

Page 10: Fundamentos de Programacion Unidad 3

Producto de Aprendizaje 3.1: De los siguientes problemas elabore su

correspondiente algoritmo.

1. Obtenga el cuadrado de 243

2. Obtenga el perímetro y la superficie de un cuadrado

3. Obtenga la suma de dos números

4. Obtenga el perímetro de un rectángulo

5. Obtenga la hipotenusa de un triangulo rectángulo

6. Obtenga el área y el volumen de un cilindro

7. Dado x grados Celsius obtenga su conversión a grados Fahrenheit

8. Obtenga el área de un triangulo en función de las longitudes de sus lados:

Donde:

9. Dado x numero de metros convertirlos a pies y pulgadas (1 metro = 39.37

pulgadas, 1 pie = 12 pulgadas)

10. Una tonelada métrica equivale a 35,273.92 onzas. Elabore un algoritmo que lea el

peso de un paquete de cereal para el desayuno en onzas y que obtenga como

salida el número de cajas necesarias para llenar una tonelada métrica de cereal,

así como deberá proporcionar cuantas onzas sobran. El algoritmo deberá permitir

al usuario repetir este proceso las veces que desee.

11. Dado tres números, determinar si la suma de cualquier pareja de ellos es igual al

tercer número. Si se cumple la condición, escribir “iguales” en caso contrario

“Distintos”.

12. Elabore un algoritmo lea 3 calificaciones de la materia de Fundamentos de

Programación y determine si el alumno “Aprobado” o “Reprobado” en base a su

promedio.

Page 11: Fundamentos de Programacion Unidad 3

13. Elabore un algoritmo que en base a un valor numérico determine si es Alto o Bajo.

Si el número es mayor a 100 imprima Alto, en caso contrario imprima Bajo.

14. Elabore un algoritmo que lea 4 números e imprima el mayor de ellos.

15. Elabore un algoritmo que lea un número e imprima sus dígitos en forma individual:

Ejemplo: Dame un número? 7539

9

3

5

7

16. Obtenga el salario de un obrero en base a las horas extras trabajadas. El salario

se calcula sumando al sueldo base las horas extra. El sueldo base es equivale a

$450.00 y las horas extra se calculan en base a la siguiente tabla:

1 a 10 hrs $11.50

11 a 12 hrs $ 13.00

21 y más hrs $ 15.00

17. Elabore un algoritmo que lea un número decimal e imprima su representación en

binario.

18. Elabore un algoritmo que lea un número e imprima su factorial.

Ejemplo: 5 = 5 * 4 * 3 * 2 * 1 = 120

Nota: El factorial de 0 (cero) por notación es 1.

III.4. Tipos de datos y expresiones

Tipos de datos

Existen dos grupos de tipos de datos:

Simples (básicos, primitivos, sin estructura)

Compuestos (Estructurados, Complejos)

Dentro de los tipos de datos Simples se encuentran:

Numéricos

o Enteros

5, 15, 1350, 50000, etc.

o Punto Flotante (Reales)

0.00008, 3.7452, 8.72, 370000.0, etc.

Page 12: Fundamentos de Programacion Unidad 3

En aplicaciones científicas se requiere una notación especial para manejar

números muy grandes (como la masa de la tierra) o muy pequeños (como la

masa de un electrón) esta notación es llamada notación exponencial o

notación científica:

367 520 100 000 000 000 00 3.675201E+20

0.000 000 000 030 257 3.0257E11

Lógicos (Booleanos)

Los datos tipo lógico es aquel que solo puede tomar dos valores:

Verdadero (True)

Falso (False)

Carácter (Char)

El tipo de datos carácter es un conjunto finito y ordenado de caracteres. Un dato

tipo carácter contiene un solo carácter. Un carácter se delimita por comillas

sencillas:

„A‟, „a‟, „1‟, „$‟, etc.

Los grupos de caracteres son los siguientes:

o Caracteres alfabéticos: „A‟, „B‟,…,‟Z‟, „a‟, „b‟,…,‟z‟

o Caracteres numéricos: „0‟, „1‟, „2‟,…,‟9‟

o Caracteres Especiales: +, , /, *, ^, ., ;, <, >, $, #, etc.

Y dentro los Compuestos o Estructurados se encuentran:

Cadena de caracteres (String)

Una cadena de caracteres es una sucesión de caracteres que se encuentra

delimitado por comillas dobles:

“Hola Mundo”

“30 de septiembre de 2010”

“Esta es una cadena de caracteres llamada también String”

Clases (Class)

Arreglos (Array)

Registros (Records)

Listas (LinkerList)

Conjuntos (Set)

Árboles (Tree)

Grafos (Graph)

Abstractos (Abstract)

Archivos (Files)

En la siguiente tabla presentamos los 8 tipos de dato primitivos de Java, el número de bits

que ocupan y el rango de valores que pueden tomar.

Page 13: Fundamentos de Programacion Unidad 3

Tipo Tamaño en bits Rango de valores

boolean 1 true o false Nota: El No. de bits puede variar según la

plataforma

char 16 „\u0000‟ hasta „\uFFFF' Conjunto Unicode de ISO

byte 8 128 a +127 27 a 27 – 1

short 16 32,768 a +32,767

215 a 215 – 1

int 32 2,147,483,648 a +2,147,483,647

231 a 231 – 1

long 64 9,223,372,036,854,775,808 a +9,223,372,036,854,775,807

263 a 263 – 1

float 32

Rango negativo: 3.4028234663852886E+38 hasta 1.40129846432481707E45

Rango positivo: 1.40129846432481707E45 hasta 3.4028234663852886E+38

double 64

Rango negativo: 1.797693134862157E308 hasta 4.94065645841246544E324

Rango positivo: 4.94065645841246544E324 hasta 1.797693134862157E308

Tokens elementos léxico de los programas

Existen 5 clase de tokens: identificadores, palabras reservadas, literales, operadores y

otros.

Identificadores

Los identificadores pueden representar variables, constantes, métodos, nombres de

archivos, etc.

Diagrama de contexto de los identificadores:

Page 14: Fundamentos de Programacion Unidad 3

Regla para formar un identificador:

1. Debe comenzar por una letra 2. Después de la 1er. Letra puede contener letras, dígitos o guión de piso 3. No están permitidos los espacios en blanco 4. No deben formar palabras reservadas 5. Java es sensibles a las mayúsculas y minúsculas 6. En Java la longitud de los identificadores no tiene límite.

Expresiones

Las expresiones son combinaciones de constantes, variables, operadores, operandos,

paréntesis, funciones, etc.

Expresiones aritméticas

Las expresiones aritméticas son análogas a las expresiones matemáticas.

Operadores aritméticos:

+ Suma Resta * Multiplicación / División

% Modulo

Ejemplos:

5 + 3 = 8

3 – 2 = 1

5 * 3 = 15

17/2 = 8

17/2.0 = 8.5

(double) 17/2 = 8.5

20 % 7 = 6

c)(ba 3

Operando

Variable Operador

Constante Función

Page 15: Fundamentos de Programacion Unidad 3

Transforme las siguientes formulas en expresiones computacionales:

III.5. Estructuras lógicas

Otro tipo de expresiones son las lógicas, o booleanas, cuyo valor puede ser true

(verdadero) o false (falso) y se denominan expresiones booleanas en honor a matemático

George Boole, quien desarrollo el álgebra booleana.

Mediante los operadores relacionales se pueden hacer comparaciones entre valores tipo

numérico y carácter.

Por ejemplo:

3 < 6 V 0 > 9 F

8 <= 5 F

A = 3 y B = 4 A>B F A<B V

A<=B V B==4 V

X=2 Y = 3 Z = 9 X>Z F Y<X F Z!=X V

Operadores Lógicas

Java cuenta con los operadores lógicos para formar condiciones más complejas. Los

operadores lógicos son:

Page 16: Fundamentos de Programacion Unidad 3

Operador Descripción Corto Circuito

&& And condicional Si

|| Or condicional

& And lógico No

| Or lógico

^ Or exclusivo

! Negación

Tablas de verdad de los operadores lógico:

&& And Condicional

A B A && B

false false false

false true false

true false false

true true true

Con un operador && (And condicional) será true si y solo si todas sus entradas son true.

|| Or Condicional

A B A || B

false false false

false true true

true false true

true true true

Con un operador || (Or condicional) será true si por lo menos una de sus entradas es true.

Operadores & And lógico y | Or lógico funcionan de manera idéntica a los operadores &&

And condicional y || Or condicional, con la excepción de de que los operadores lógicos

siempre se evaluaran todas las expresiones (es decir, no realizan una evaluación de corto

circuito).

^ Or Exclusivo

A B A ^ B

false false false

false true true

true false true

true true false

Con un operador ^ (Or exclusivo) es true si y solo si una de sus operandos es true y el

otro es false

Page 17: Fundamentos de Programacion Unidad 3

! Negación

A !A

false true

true false

Por medio del operador ! (Negación) se invierte el significado de la condición. A diferencia

de los operadores &&, ||, &, | y ^ que son operadores binarios, el operador ! es unario.

Por ejemplo: Si A=3, B=2 y C=7

a) (A>5) || (B<C) V b) (A!=B) && (B==C) c) (A>=B) & (C>=5) d) !(A<=9) | (5>B)

Reglas de prioridad

Las expresiones que tienen dos o más operadores requieren de reglas matemáticas que

permitan determinar el orden de las operaciones, a estas reglas se les llama reglas de

prioridad.

Prioridad Operadores Asociatividad

1 () Agrupación ID

2 (tipo) Cast DI

3 * / % ID

4 + ID

5 < <= > >= ID

6 == != ID

7 & ID

8 ^ ID

9 | ID

10 && ID

11 || ID

12 = *= /= %= += = DI

¿Cual es el valor de las siguientes expresiones?

a) 15 * 14 – 3 *7 b) (24 + 2 * 6) / 4 c) 3 + 4 * (8 * (4 – (9 + 31) / 6)) d) 4 – 40 / 5

Page 18: Fundamentos de Programacion Unidad 3

Estructura general de un programa en Java

import Importación de paquetes con clases predefinidas.

public class NombreDeLaClase {

Declaración de variables miembro de la clase

public static tipo main (String[] args) {

Declaración de variables locales

Sentencias de la función main()

[return tipo;]

}

acceso static tipo NombreDelMétodo1 (Lista de Argumentos) {

Declaración de variables del método 1

Sentencias del método 1

[return tipo;]

}

acceso static tipo NombreDelMétodo2 (Lista de Argumentos) {

Declaración de variables del método 2

Sentencias del método 2

[return tipo;]

}

}

Variables

Una variable es un identificador donde se almacena un valor con un cierto tipo de dato.

Las variables de tipos básicos almacena datos del tipo primitivos, las variables de clases o

variables de objetos, hacen referencias a objetos. Una constante es una variable cuyo

contenido no puede ser modificado.

Declaración de variables

Ejemplo:

int x, y;

float a, b, c;

char letra1;

tipo identificador

,

;

Page 19: Fundamentos de Programacion Unidad 3

Inicialización de variables

Una de las variantes que se puede hacer en una declaración es inicializar una variable

con un valor a ser declarada.

Ejemplos:

int x, y = 0;

float a, b, c = 100.0f;

char letra1 = „A‟;

Se pueden declarar una variable en tres lugares:

En una clase, como miembro de clase

Al principio de un método o bloque de código

En el punto de utilización.

Ejemplo de las tres formas de declarar una variable:

tipo identificador

,

; Expresión =

;

Page 20: Fundamentos de Programacion Unidad 3

Objetos que permiten E/S por consola.

En Java, la entrada y salida se lee y escribe en flujos (streams). La fuente básica de

entrada de datos es el teclado y la fuente de salida es pantalla. La clase System define

dos referencias a objetos static para la gestión de entrada (in) y salida (out).

Salida (System.out)

El objeto out definida en la clase System está asociado con el flujo de salida, que dirige

los datos a consola y permite visualizarlos en pantalla, por ejemplo:

System.out.println(“Esta es una cadena”);

Se visualizará en pantalla: Esta es una cadena.

Descripción del método print:

void print(cadena) Despliega una cadena en pantalla.

void println(cadena) Despliega una cadena en pantalla y al final un carácter de nueva

línea („\n‟).

Con estos métodos se puede escribir cualquier cadena o dato de los tipos primitivos,

como por ejemplo:

System.out.println( "Valores de las Variables: \n" +

"a=" + a +"\n" +

"b=" + b +"\n" +

"x=" + x +"\n" +

"y=" + y );

Entrada (System.in)

Por medio de un objeto Scanner se puede leer datos desde un programa, esta clase

pertenece al paquete java.util y debe ser importada. Para poder utilizarlo instancie un

objeto de la siguiente forma:

Scanner identificador = new Scanner (System.in);

Esta expresión crea un objeto Scanner y determina que leerá los datos desde teclado

mediante los siguientes métodos:

identificador.nextBoolean() Para Booleanos

identificador.nextByte() Para números Enteros tipo byte

identificador.nextShort() Para números Enteros tipo short

identificador.nextInt() Para números Enteros tipo int

identificador.nextLong() Para números Enteros tipo long

Page 21: Fundamentos de Programacion Unidad 3

identificador.nextFloat() Para números flotantes

identificador.nextDouble() Para números doubles

identificador.next() Para el siguiente token

identificador.nextLine() Para una línea

Recuerdan este ejemplo: Obtenga la superficie y la longitud de un círculo.

Page 22: Fundamentos de Programacion Unidad 3

Análisis:

Entrada: Radio

Salida: Cálculos de Superficie y Longitud

Proceso: Una vez obtenido el radio, calcular:

y

El siguiente ejemplo lee dos números enteros desde Windows, los suma y muestra el

resultado en una ventana.

Inicio

Fin

Superficie= π *Radio^2

Longitud=2*π *Radio

LeerRadio

Superficie, Longitud

Page 23: Fundamentos de Programacion Unidad 3
Page 24: Fundamentos de Programacion Unidad 3

Al convertir datos tipo String a tipo int (con Integer.parseInt()) manda una excepción de

formato de numero si ocurre un error.

El método showMessageDialog de la clase JOptionPane tiene varias formas de enviarles

parámetros:

public static void showMessageDialog(Component componentePadre, Object Mensaje)

Donde los parámetros:

componentePadre Determina la ventana en que se desplegara el mensaje, si es null,

se despliega en la ventana por defecto.

Mensaje Objeto a desplegar

public static void showMessageDialog(Component componentePadre,

Object Mensaje,

String Titulo,

int TipodeMensaje)

Donde los parámetros:

componentePadre Determina la ventana en que se desplegara el mensaje, si es null,

se despliega en la ventana por defecto.

Mensaje Objeto a desplegar

Titulo Cadena de caracteres de la caja de dialogo

TipodeMensaje Valor entero que determina que imagen se despliega según la

siguiente tabla:

Tipo de cuadro de diálogo de mensaje Icono Descripción

JOptionPane.ERROR_MESSAGE

Ventana de Error

JOptionPane.INFORMATION_MESSAGE

Ventana Informativa

JOptionPane.WARNING_MESSAGE

Ventana de Advertencia

JOptionPane.QUESTION_MESSAGE

Ventana de introducción de datos o selección de alguna

alternativa

Page 25: Fundamentos de Programacion Unidad 3

Tipo de cuadro de diálogo de mensaje Icono Descripción

JOptionPane.PLAIN_MESSAGE Sin Icono Ventana estándar

Sintaxis de la selección simple:

if (Expresión) Acción;

o

if (Expresión)

Acción;

Nota: El if solo soporta una instrucción, si

desea poner más de una sentencia debe

utilizar un bloque de código ({..}).

Page 26: Fundamentos de Programacion Unidad 3

if (condición) {acción1; acción2,…,acción n} ;

o

if (condición) {

acción1;

acción 2;

.

.

acción n;

}

Sintaxis de la selección doble:

if (condición)

acción 1;

else

acción 2;

if con mas de una sentencia y usando un boque de código:

if (condición) {

acción1;

acción 2;

acción n;

}

else {

acción1‟;

acción 2‟;

acción n‟;

}

Sintaxis de Selección múltiple:

switch (selector) {

case constante 1: Acción 1;

break;

case constante 2: Acción 2;

break;

default: Acción n;

}

switch (letra) {

case „a‟: case‟A‟: case „á‟: case „A‟:

case „e‟: case‟E‟: case „é‟: case „É‟:

case „i‟: case‟I‟: case „í‟: case „Í‟:

case „o‟: case‟O‟: case „ó‟: case „Ó‟:

case „u‟: case‟U‟: case „ú‟: case „Ú:

System.out.println(letra + “ es vocal”);

}

Page 27: Fundamentos de Programacion Unidad 3

Sintaxis de los ciclos Java:

for

1. for (Inicialización; Condición; Incremento)

sentencia;

2. for (Inicialización; Condición; Incremento) {

sentencia 1;

sentencia 2;

sentencia n;

}

while

1. while (condición)

sentencia;

2. while (condición) {

sentencia 1;

sentencia 1;

sentencia n;

}

do while

1. do

sentencia;

while (condición);

2. do {

sentencia 1;

sentencia 2;

sentencia n;

} while (condición);

Page 28: Fundamentos de Programacion Unidad 3

Producto de Aprendizaje 3.2: Desarrolle los siguientes programas en Java.

1. En la empresa Aceros Industrializados S.A. de C.V. los obreros recibieron

un incremento del 7.6% retroactivo a 6 meses. Elabore un programa que en

base el salario mensual despliegue el monto total de incremento por los 6

meses.

2. Elabore un programa que lea 4 números e imprima el mayor de ellos.

3. Elabore un programa que lea los tres parciales de la materia de

Fundamentos de Programación y en base el Promedio despliegue si

Acredita o No Acredita la materia.

4. Elabore un programa que lea un número e imprima sus dígitos en forma

individual:

Ejemplo: Dame un número? 7539

9

3

5

7

5. Obtenga el salario de un obrero en base a las horas extras trabajadas. El

salario se calcula sumando al sueldo base las horas extra. El sueldo base

es equivale a $450.00 y las horas extra se calculan en base a la siguiente

tabla:

1 a 10 hrs $11.50

11 a 12 hrs $ 13.00

21 y más hrs $ 15.00

6. Elabore un programa que lea un número decimal e imprima su

representación en binario.

7. Elabore un programa que lea un número e imprima su factorial.

Ejemplo: 5 = 5 * 4 * 3 * 2 * 1 = 120

Nota: El factorial de 0 (cero) por notación es 1.

Page 29: Fundamentos de Programacion Unidad 3

8. Elabore un programa que lea serie de números e imprima su media. El final

de los números de denota con un -1.

9. Elabore un programa que lea 10 calificaciones e imprime el promedio.

10. Elabore un algoritmo que lea dos números diferentes, he imprima el rango

del número más pequeño al número más grande.

11. Elabore un programa que lea un número positivo diferente de cero e

imprima la secuencia de números en forma descendente hasta el cero.

12. Elabore un programa que imprima la suma de los números impares del 1 al

100 utilizando ciclos.