guia3

6

Click here to load reader

Upload: api-3861109

Post on 07-Jun-2015

57 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Guia3

Guía 3: ArreglosING1310

Pregunta 1Cree un arreglo de Strings que guarde las siguientes palabras: Rojo, Amarillo, Azul, Violeta. Luego imprima en pantalla los elementos de este arreglo.

Pregunta 2Hacer un programa que pregunte 5 números y luego los imprima en orden inverso.

Pregunta 3Cree un arreglo con cinco elementos dados por el usuario. Luego intercambie el primer elemento con el último. Finalmente, imprima en pantalla los elementos del arreglo.

Pregunta 4Hacer un programa que pregunte los ponderadores de un polinomio (a0, a1, a2, a3, a4 , a5… ) de cualquier grado (hasta 10):

(a0 + a1x + a2x2 + a3x3 + a4x4 + a5x5)

y luego permita evaluar el polinomio para cualquier valor de x.

Para cuando se ingrese el grado, debe tomar en cuenta que el usuario puede ingresar un número mayor que 10 o menor que 0, en cuyo caso debe indicar que el grado debe estar entre 0 y 10 y luego preguntar nuevamente. También debe tomar en cuenta que el usuario puede ingresar un número con decimales, en cuyo caso debe indicar que el grado debe ser entero y luego preguntar nuevamente.

Pregunta 5En la industria papelera existe una máquina que debe alcanzar una temperatura de 150 º C en un lapso de 20 minutos. Debido a razones de seguridad la máquina debe alcanzar la temperatura en forma controlada por lo que esta se registra minuto a minuto. Se considera sospechoso si dos aumentos (exactamente 2, ni más ni menos) consecutivos son mayores (o iguales) que 11 grados. Escriba un programa que registre estas temperaturas, las cuales son dadas por el usuario, y luego diga si hubo un aumento sospecho especificando en que minuto comenzó. Tome en cuenta que puede haber más de un aumento sospechoso dentro de los veinte minutos.

Page 2: Guia3

Solución Pregunta 1

class Colores{ public static void main(String[] args) { String[] colores = {"Rojo", "Amarillo", "Azul", "Violeta"}; for(int i=0; i<colores.length; i++) System.out.println(colores[i]); }}

Solución Pregunta 2

class Numeros { public static void main(String[] args) { double[] numeros = new double[5]; int i; for (i=0; i < numeros.length ; i++) { System.out.println("Ingrese un numero"); numeros[i]= In.readDouble(); } for( i = 4; i >= 0; i--) System.out.println(numeros[i]); }}

Solución Pregunta 3

class Intercambiar { public static void main(String[] args) { double[] numeros = new double[5]; int i; double temporal; for (i=0; i < numeros.length ; i++) { System.out.println("Ingrese un numero"); numeros[i]= In.readDouble(); } temporal = numeros[0]; numeros[0]= numeros[4]; numeros[4]= temporal; for (i=0; i < numeros.length ; i++)

Page 3: Guia3

System.out.println(numeros[i]); }}

Solución Pregunta 4class Polinomio{ public static void main(String[] args) { //Debe ser hasta 11, pues en el caso //de que el polinomio sea de grado //10 tendremos 11 poderadores //de a0 hasta a11

double[] pond = new double[11];

//Aca le damos un valor a "grado" solo //porque al compilar me da un error //diciendo que no inicializamos "grado" //pues se inicializa dentro de un while //y el programa asume que existe la posibilidad de // que nunca se ingrese al while

int i; double grado=0; double x; double resultado=0; boolean preguntar = true; while (preguntar == true) { System.out.println("¿De que grado quiere que sea "+ "el polinomio (de 0 a 10)?"); grado=In.readDouble(); if ( grado >10 || grado < 0) System.out.println("El grado debe estar entre 0 y 10"); //Para ver si el usuario ingreso un numero //con decimales. No podemos tener un polinomio //con grado decimal else if ( (grado*10)%10!= 0 ) System.out.println("Debe ingresar un numero entero"); //Si el usuario ingresa correctamente el grado //podemos dejar de preguntar y salimos del while else preguntar = false; }

//Aca fijense que i llega hasta grado//dado que si es por ejemplo grado 3//necesitamos 4 ponderadores: // a0, a1, a2, a3

Page 4: Guia3

for(i=0; i<= grado; i++){

System.out.println("Ingrese a" + i);pond[i] = In.readDouble();

}

//Aca le pregunto al usuario independiente de si el grado que ingreso//(el grado podria ser 0)System.out.println("Ingrese el valor de x "+

"para el cual desea evaluar " +"el polinomio");

x=In.readDouble();

//Dado que no sabemos de antemano el grado//del polinimio debemos usar un whilefor (i=0; i <= grado; i++){

resultado = resultado + pond[i]*Math.pow(x,i);}

System.out.println("El resultado de evaluar el polinomio es: "+resultado); }}

Solución Pregunta 5

class TemperaturaSospechosa{ public static void main(String[] args) { double[] temp= new double[20]; int i; for(i=0; i< temp.length; i++) { //Aqui para imprimir i+1 deben //usar parentesis, si no, imprime // el valor de i pegado a un 1 System.out.println("Ingrese la temperatura " + "al minuto "+ (i+1)); temp[i]=In.readDouble(); } i=0; //Solo chequeamos hasta el minuto //18 (o sea indice 17),pues de lo //contrario al usar i+2 //produciriamos un error while (i<(temp.length -2)) { if(temp[i+1]-temp[i] >= 11)

Page 5: Guia3

{ if(temp[i+2]-temp[i+1] >= 11) System.out.println("Hubo un aumento sospechoso"+ " al minuto "+ (i+1)); } i++; } }}