Codificación de sentencias secuenciales

Las computadoras trabajan de forma secuencial y eventualmente toman decisiones y cambian el rumbo tras evaluar el estado que guardan las variables y atributos de las clases y de los métodos. Existen cuatro tipos de sentencias que se utilizan en los lenguajes de programación estructurados:

  • Secuenciales
  • Condicionales
  • Cíclicas
  • Llamadas a métodos

A partir de los diagramas de clase, flujo y de secuencia, pueden codificarse las sentencias. Aquí se mostrará la codificación de la entrada y salida por consola.

Sentencias secuenciales

Flujo de Secuencias

Se refiere a la ejecución de instrucciones una tras otra, sirve para ejecutar una serie de actividades en una secuencia predefinida, puede utilizar las instrucciones de salida de información, de entrada, operadores aritméticos, relacionales, lógicos y de asignación, pero las instrucciones de decisión o de repetición no estarían incluidas. En Java, el inicio se sustituye por una llave que abre y el fin con una llave que cierra. Las instrucciones se ejecutan de manera secuencial conforme van apareciendo.

Codificación en Java


{
  // Aquí va el algoritmo
}

Las llaves se utilizan para el inicio y fin de las estructuras (clases); para delimitar el inicio y fin de métodos; y para indicar el inicio y fin de sentencias compuestas. Cuando dos sentencias aparecen en un bloque de instrucciones dentro de una estructura condicional o cíclica. Pueden abrirse y cerrarse en cualquier parte de la codificación de los métodos y las variables que se declaren en su interior sólo existirán en el ámbito que marcan ambos símbolos.

Salida

Consiste en mandar por un dispositivo de salida (por ejemplo, monitor o impresora) un resultado o mensaje:


{
System.out.println("¡hola, mundo!");
}

Al terminar una sentencia, hay que escribir “;” para concluirla.

De acuerdo con las convenciones de nomenclatura de Java: System (identificador inicia con mayúscula) es una clase, out (identificador inicia con minúscula) es un atributo y println() es un método (identificador inicia con minúscula pero tiene paréntesis y un parámetro).

De acuerdo con la documentación oficial de Java: la clase System contiene diversos atributos y métodos, y no puede ser instanciada. Se utiliza la consola para la entrada (teclado) y salida (monitor) y para el mostrar errores. El atributo out es la referencia a una instancia de un flujo de dato y tiene un método println cuya función es print (imprimir o escribir); y la letra ln indica que dará el equivalente a la tecla [intro] (salto de línea) al finalizar (println imprime un retorno de carro al final y print deja el cursor en la posición donde termina de escribir).

Código en Java


System.out.print("uno");
System.out.println("dos");
System.out.println("tres");

Salida de la consola

unodos
tres
_

Consiste en recibir desde un dispositivo de entrada (la consola, el teclado, etc.) un valor o dato. Se requiere una instancia de la clase Scanner que hay que importar de la librería de clases estándar del lenguaje. Ésta recibe información en texto desde un flujo de datos a través de un archivo o el teclado, a sus métodos y la interpretan de acuerdo a lo que se espera que aparezca en el flujo de datos.


import java.util.Scanner; // declarar que utilizará la clase Scanner
// en el paquete java.util.
// esta instrucción va al principio del archivo

// Aquí se declararía la clase
public class MiClase {

	// dentro de algún método o como atributo:

	Scanner teclado=new Scanner(System.in); // declarar e instanciar
	// Scanner, se recomienda el título Scanner
	// System.in es el flujo de datos de entrada estándar
	// (generalmente la consola o teclado)

	// …

	// Uso del objeto teclado (instancia de Scanner):

	VariableString = teclado.nextLine();
	VariableInt. = teclado.nextInt();
	VariableFloat = teclado.nextFloat();

} // fin de mi clase

El objeto teclado, a partir de la definición de Scanner, cuenta con distintos métodos dependiendo de la información que se desee leer a continuación:

nextLine() Lee una cadena de caracteres hasta que encuentre un [enter]
nextInt() Lee el siguiente dato si es una variable entera
nextDouble() Lee el siguiente dato es una variable de punto decimal

Revisa otros métodos de lectura de datos en la clase Scanner (los que empiezan con next).

Asignación

El operador de asignación en C y Java es el igual “=”, para el caso anterior se codificaría:


area = (base*altura)/2
                  

Para una variable de tipo String y char:


Nombre = "Java"; // para cadenas usar comillas dobles
Carácter = '@'; // para caracteres usar comillas simples

A una variable se le asigna el resultado de una operación:


Valor = pi * diametro;

Para efectos de operaciones, si los tipos de dato no corresponden con los operadores, se realizan las siguientes conversiones automáticas:

Asignación

Double x=4;
int i=2;
String s = "Hola";
char c = '@';

// …
i = x; // no se puede asignar: int  double
x = i // si se puede asignar: double  int
c = s; // no se puede asignar: char  string
s = c; // si se puede asignar: String  char

Otros formatos de número:

  • Si empieza con 0x puede seguir una secuencia de dígitos hexadecimales.
  • Si empieza sólo con 0 lo que sigue es un número en octal.

Clic aquí para ver más formatos de números.