Ejercicios Unidad 2 DAW
Enviado por Essays • 3 de Noviembre de 2022 • Tarea • 3.707 Palabras (15 Páginas) • 282 Visitas
Cuestiones previas
a) Crea un programa con estas instrucciones e interpreta el resultado, obteniendo conclusiones
sobre precedencia de operadores, qué hace el operador %, división entre enteros, etc.
int a = 2 * 3 + 4; System.out.println(a);
Queremos asignarle un número entero (comprendido entre –2,147,483,648 y 2,147,483,647) a una variable "a". El resultado sería, atendiendo a las precedencias de operdores (multiplicación antes que suma), 10.
int b = 4 + 2 * 3; System.out.println(b);
Queremos asignarle un número entero (comprendido entre –2,147,483,648 y 2,147,483,647) a una variable "b". El resultado sería, atendiendo a las precedencias de operdores, 10.
int c = 5 – 10 % 2; System.out.println(c);
Queremos asignarle un número entero (comprendido entre –2,147,483,648 y 2,147,483,647) a una variable "c". El resultado sería, atendiendo a las precedencias de operadores, el resultado de restarle a 5 el resto de la división 10/2 (que sería cero). Es decir que "c" valdría 5.
float d = 5 / 2; System.out.println(d);
Queremos asignarle un número real (con un decimal y comprendido entre 1.4e–045 y 3.4e+038) a una variable "d" cuyo valor sería un número entero por ser una operación entre dos números enteros. El resultado sería 2.0
float e = 5f / 2; System.out.println(e);
Queremos asignarle un número real (con un decimal y comprendido entre 1.4e–045 y 3.4e+038) a una variable "e". El resultado sería 2.5
b) Resuelve a mano, sin programa ni calculadora, las siguientes expresiones:
-4 * 7 + 20 % 3 / 2 – 5 = -32
( ( 3 + 2 ) % 2 – 15 ) / 2 * 5 = -35
3 + 6 * 14 % 3 = 3
d = 8 + 7 * 3 + 4 * 6 / 2 % 4 ==> d = 29
c) ¿Qué hace este programa? ¿Puede producirse algún error?
int a,b,c;
Scanner teclado = new Scanner(System.in);
System.out.print("Introduce valor a: ");
a = teclado.nextInt();
System.out.print("Introduce valor b: ");
b = teclado.nextInt();
c = a * b;
System.out.println("Resultado: " + c);
Asigna un valor a la variable "c" que será resultado de multiplicar las variables "a" y "b" cuyos valores introducirá el usuario por teclado.
Si el valor introducido en una de las variables "a" o "b" está fuera del rango del tipo de dato o no es un número entero se producirá un error.
Si el valor de ambas variables ("a" y "b") está dentro del rango del tipo de dato pero el resutado "c" no, el cálculo no será el esperado.
d) ¿Qué hace este programa? Corrige sus errores. ¿Qué ocurre si para la variable ‘b’ introducimos
cero?
int a,b,c;
Scanner teclado = new Scanner(System.in);
System.out.print("Introduce valor a: ");
a = teclado.nextInt();
System.out.print("Introduce valor b: ");
b = teclado.nextInt();
c = a / b;
System.out.println("Resultado: " + c);
Asigna un valor a la variable "c" que será resultado de dividir la variable "a" entre la variable "b" cuyos valores introducirá el usuario por teclado.
No veo errores en el programa.
Si el valor introducido en una de las variables "a" o "b" está fuera del rango del tipo de dato o no es un número entero se producirá un error.
Si para la variable "b" introducimos un valor de cero se producirá un error ya que dividir por cero da como resultado infinito.
e) Expresar utilizando operadores aritméticos, en una sola línea, como en la cuestión ‘b’, las
siguientes expresiones matemáticas:
m / n + n / n
(m + n) * s / p * (p - r)
c * r * t * (p + q) / 100 * (m2 + n2)
f) Indicar el valor de las variables enteras ‘a’, ‘b’ y ‘c’, ‘d’ sobre las que se efectúan consecutivamente
las operaciones:
a = 3;
b = 2;
c = a * b - b; El resultado sería 4.
d = b * b; El resultado sería 4.
a = b - a; El resultado sería -1.
b++; El resultado sería 3.
d+ = 2; El resultado sería 6.
1)
/*
* Conversion de euros a dolares.
* Autor: Juan Jose Lesta Seoane
* Fecha: 28-09-2021
*/
package jlst01;
import java.util.Scanner;
public class JLSt01e01 {
public static void main(String[] args) {
Scanner teclado = new Scanner(System.in);
...