(Java) Variables. Formatos de salida



Adiciones:
Para mostrar variables como short int  se usa el modificador h (por ejemplo, \(\%hd\))
Para mostrar los valores de las variables de tipo long int, use el modificador l (por ejemplo, \(\%ld \))< br /> El modificador L se puede usar como prefijo antes de los especificadores e, f, g. Significa que se muestra en pantalla un valor de tipo long double.  (por ejemplo, \(\%Lf\))

Veamos un ejemplo en la práctica

 

Una computadora no sería necesaria si no tuviera la capacidad de almacenar información diversa en su memoria y poder procesar información del mismo tipo utilizando los mismos algoritmos. 
Para crear programas más interesantes, uno debe aprender a almacenar información en la memoria de la computadora. Al mismo tiempo, necesitamos aprender a acceder de alguna manera a las celdas de memoria de la computadora. 
En programación, como en la vida, para referirse a cualquier parte de la memoria de la computadora, se da por nombre. Usando este nombre, puede leer información y escribirla allí.

Una variable es una ubicación en la memoria de la computadora que tiene un nombre y almacena algún valor correspondiente al tipo.

La palabra "variable" nos dice que su valor puede cambiar durante la ejecución del programa.  Cuando se guarda un nuevo valor de variable, el antiguo se borra


Para una computadora, toda la información son datos en su memoria: conjuntos de ceros y unos (en pocas palabras, cualquier información en una computadora son solo números y los procesa de la misma manera). Sin embargo, sabemos que los números enteros y fraccionarios funcionan de manera diferente. Por lo tanto, cada lenguaje de programación tiene diferentes tipos de datos, que se procesan utilizando diferentes métodos.

Por ejemplo,
entero variables – type int (del inglés integer – whole), ocupa 4 bytes en memoria;
real variables que pueden tener una parte fraccionaria (tipo float – del inglés punto flotante – punto flotante) ocupan 4 bytes en memoria< br /> - caracteres (tipo char – del carácter inglés – símbolo), ocupan 1 byte en la memoria

Intentemos agregar alguna variable a nuestro programa.
Antes de usar una variable, debe decirle a la computadora que le asigne espacio en la memoria. Para ello, se debe declarar la variable, es decir, especificar qué tipo de valor almacenará y darle un nombre.
Además, si es necesario, puede asignarle valores iniciales. 

Tomemos un programa como ejemplo.
clase pública Principal {  
    public static void main(String[] args) {  
        int a=6, b;  //dos variables de tipo entero fueron declaradas en la variable a e inmediatamente guardaron el valor 6. La variable b no fue configurada al valor inicial; lo que habrá en la memoria en este caso no lo sabemos.
    }
}

Ahora pruébalo tú mismo.

Intentemos escribir una calculadora para números primos

Nuestra tarea es mostrar alguna expresión aritmética en la pantalla y hacer que la computadora la calcule.
Por ejemplo: 
5+7=12
Además, en lugar de 5 y 7 puede haber números diferentes, dependiendo de los valores de las variables a y b en el programa.

En la declaración de salida, puede mostrar no solo texto, sino también los valores de las variables, así como el resultado de una expresión aritmética. Además, la secuencia de salida puede ser diferente. Por ejemplo, para mostrar la expresión anterior, debe escribirla así: System.out.print(a+"+"+b+"="+(a+b)); Si queremos mostrar el valor de una variable, solo necesitamos especificar su nombre sin comillas.Si queremos mostrar el resultado de una expresión aritmética, basta con escribir la expresión aritmética correctamente.

*** En profundidad: entrada formateada ***
En la cadena de formato, la cantidad de especificadores de salida no está limitada, lo principal para cada especificador después de la cadena de formato es enumerar todos los valores separados por comas, que se sustituirán por la plantilla. Por ejemplo: System.out.printf("%d+%d=%d",a,b,a+b); La cadena de formato especifica tres especificadores para imprimir valores enteros en su lugar.  ; El orden de sustitución es directo.  Aquellos. en lugar de la primera plantilla %d se mostrará el valor de la variable a; en lugar del segundo -  el valor de la variable b; y  en lugar del tercero - el valor de la expresión a+b Y ahora escribiremos un programa que muestre el resultado de operaciones aritméticas básicas con estas variables

Para que el usuario pueda establecer el valor de la variable por sí mismo, es necesario poder ingresar valores desde el teclado. Para ello se utiliza el objeto in, que se escribe así: Escáner en = nuevo Escáner (System.in); Pero para que funcione, primero debe importarlo usando import java.util.Scanner

Para obtener un valor entero, use   in.nextInt();, cuyo resultado debe asignarse a una variable.
Por ejemplo,  int a = in.nextInt();
Existen otros métodos para otros tipos de datos: 
  • next(): lee la línea de entrada hasta el primer espacio
  • nextLine(): lee toda la línea de entrada
  • nextInt(): lee el int ingresado
  • nextDouble(): lee el doble de entrada
  • nextBoolean(): lee un valor booleano
  • nextByte(): lee el byte numérico ingresado
  • nextFloat(): lee el flotante ingresado
  • nextShort(): lee el número ingresado corto

*** material detallado: para aquellos interesados ​​en el lenguaje Java ***
Los especificadores de salida adicionales le permiten controlar la salida de números en ciertos formatos.

Ancho de campo mínimo
Ejemplo:
%04d  - el número se mostrará en 4 posiciones, si hay menos de cuatro dígitos, los primeros serán ceros
int a=34; Sistema.salida.printf("%04d",a); //en pantalla: 0 0 3 4   
El guión bajo se coloca aquí específicamente para mostrar visualmente la salida del número.   

%4d – lo mismo, pero en lugar de ceros habrá espacios
int a=34; System.out.printf(“%4d”,a); //en pantalla:      3 4 < /código>

Salida con cierta precisión: se utiliza para generar números reales. De forma predeterminada, los números reales se muestran con una precisión de hasta 6 decimales. Pero hay casos que deben generarse con una precisión diferente. En este caso, debe especificar cuántos lugares de familiaridad asignar para el número en sí y cuántos después del punto decimal.
Por ejemplo,
%9.3f   - se mostrará un número real en 9 posiciones, con tres decimales.

doble a=34.24356; Sistema.salida.printf("%9.3f",a); // en pantalla: _ _ _ 3 2 . 2 4 4

Tratemos de usar esta información en la práctica.

Este material está destinado a un estudio más profundo. Analizaremos cómo imprimir variables utilizando el operador de salida de Java (printf)
*** Material profundo ***


¿Cómo mostrar el valor de una variable en la pantalla?
Para hacer esto, dentro de la cadena de formato en la declaración de salida, debe especificar una plantilla, en lugar de la cual se mostrará el valor de la variable.
La plantilla a utilizar depende del tipo de variable. 
Estos patrones se denominan especificadores de salida y se presentan en la tabla. Se da un número suficiente de especificadores. No es necesario memorizarlos todos. 
En la mayoría de los casos, usaremos especificadores para generar enteros, números reales, así como caracteres y cadenas. Pero puede volver a esta lección en cualquier momento y ver la plantilla que necesita.
 
Código Formato
%c Símbolo
%d Entero decimal con signo
%i Entero decimal con signo
%e Formato científico (e minúscula)
%E Formato científico (E mayúscula)
%f Flotador real
%g Según el formato más corto, se utiliza %e o %f
%G Según el formato más corto, se utiliza %E o %f
%o Octubre con signo
%s Cadena de caracteres
%u Entero decimal sin signo
%x Número hexadecimal sin signo (en minúsculas)
%X Número hexadecimal sin signo (mayúsculas)
%p Índice
%n Puntero a una variable entera. El especificador hace que a esta variable entera se le asigne el número de caracteres impresos antes de ella
%% Signo %                           
Para  la salida de un número real estaba garantizada con un punto como separador, debe usar el diseño americano, que está conectado con:
  Configuración regional.setDefault(Configuración regional .EE. UU.);