F

frassati6

Usuario (Venezuela)

Primer post: 21 jul 2011Último post: 26 jul 2011
2
Posts
13
Puntos totales
8
Comentarios
java ya guia 3ra parte super guia
java ya guia 3ra parte super guia
Ciencia EducacionporAnónimo7/21/2011

Hola mis panas y amigas de Taringa! aqui esta la 3ra parte de este post en esta parte veremos los errores sintacticos y logicos yo solo les mostrare ustedes tendran que por asi decirlo adivinar donde esta el error aunque eclipse ayuda mucho en esos casos pero simplemente a veces no los encontramos :blaf: Bueno sin más nada que agregar seguiré con la guía. - Errores sintácticos y lógicos Confeccionaremos un problema y agregaremos adrede una serie de errores tipográficos. Este tipo de errores siempre son detectados por el COMPILADOR, antes de ejecutar el programa. A los errores tipográficos, como por ejemplo la falta de puntos y comas, nombres de variables incorrectas, falta de paréntesis, palabras claves mal escritas, etc. los llamamos errores SINTACTICOS. Un programa no se puede ejecutar sin corregir absolutamente todos los errores sintácticos. Existe otro tipo de errores llamados ERRORES LOGICOS. Este tipo de errores en programas grandes (miles de líneas) son más difíciles de localizar. Por ejemplo un programa que permite hacer la facturación pero la salida de datos por impresora es incorrecta. Problema: Hallar la superficie de un cuadrado conociendo el valor de un lado. Diagrama de flujo: Proyecto: Creemos un proyecto llamado SuperficieCuadrado y una clase llamada SuperficieCuadrado. Codificamos el algoritmo en Java e introducimos dos errores sintáctico: 1 - Disponemos el nombre del objeto System con minúsculas. 2 - Tratamos de imprimir el nombre de la variable superficie con el primer caracter en mayúsculas. Como podemos observar aparece subrayado la línea donde disponemos System con minúsculas como en la línea que imprimimos la variable superficie con mayúsculas. Si modificamos y corregimos los dos errores sintácticos podremos ejecutar nuestro programa. Programa correctamente codificado: _____________________________________________________________________ import java.util.Scanner; public class SuperficieCuadrado { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int lado; int superficie; System.out.print("Ingrese el valor del lado del cuadrado:"); lado=teclado.nextInt(); superficie=lado * lado; System.out.print("La superficie del cuadrado es:"); System.out.print(superficie); } } _____________________________________________________________________ Programa con un error lógico: _____________________________________________________________________ import java.util.Scanner; public class SuperficieCuadrado { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int lado; int superficie; System.out.print("Ingrese el valor del lado del cuadrado:"); lado=teclado.nextInt(); superficie=lado * lado * lado; System.out.print("La superficie del cuadrado es:"); System.out.print(superficie); } } _____________________________________________________________________ Como podemos observar si ejecutamos el programa no presenta ningún error de compilación. Pero luego de ingresar el valor del lado del cuadrado (por ejemplo el valor 10) obtenemos como resultado un valor incorrecto (imprime el 1000), esto debido que definimos incorrectamente la fórmula para calcular la superficie del cuadrado: superficie=lado * lado * lado; - Estructura de programación secuencial Cuando en un problema sólo participan operaciones, entradas y salidas se la denomina una estructura secuencial. Los problemas diagramados y codificados previamente emplean solo estructuras secuenciales. La programación requiere una práctica ininterrumpida de diagramación y codificación de problemas. Problema: Realizar la carga de dos números enteros por teclado e imprimir su suma y su producto. Diagrama de flujo: Tenemos dos entradas num1 y num2 (recordar cuáles son los nombres de variables correctas), dos operaciones: realización de la suma y del producto de los valores ingresados y dos salidas, que son los resultados de la suma y el producto de los valores ingresados. En el símbolo de impresión podemos indicar una o más salidas, eso queda a criterio del programador, lo mismo para indicar las entradas por teclado. Programa: _____________________________________________________________________ import java.util.Scanner; public class SumaProductoNumeros { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,suma,producto; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor"); num2=teclado.nextInt(); suma=num1 + num2; producto=num1 * num2; System.out.print("La suma de los dos valores es:"); System.out.println(suma); System.out.print("El producto de los dos valores es:"); System.out.println(producto); } } _____________________________________________________________________ Recordemos que tenemos que seguir todos los pasos vistos para la creación de un proyecto, su clase, definición de la función main y la codificación del diagrama de flujo. Algunas cosas nuevas que podemos notar: • Podemos definir varias variables en la misma línea: int num1,num2,suma,producto; • Si llamamos a la función println en lugar de print, la impresión siguiente se efectuará en la próxima línea: System.out.println(suma); Problemas propuestos 1. Realizar la carga del lado de un cuadrado, mostrar por pantalla el perímetro del mismo (El perímetro de un cuadrado se calcula multiplicando el valor del lado por cuatro) 2. Escribir un programa en el cual se ingresen cuatro números, calcular e informar la suma de los dos primeros y el producto del tercero y el cuarto. 3. Realizar un programa que lea cuatro valores numéricos e informar su suma y promedio. 4. Se debe desarrollar un programa que pida el ingreso del precio de un artículo y la cantidad que lleva el cliente. Mostrar lo que debe abonar el comprador. _____________________________________________________________________ import java.util.Scanner; public class PerimetroCuadrado { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int lado,perimetro; System.out.print("Ingrese el lado del cuadrado:"); lado=teclado.nextInt(); perimetro=lado * 4; System.out.print("El perímetro del cuadrado es:"); System.out.print(perimetro); } } _____________________________________________________________________ import java.util.Scanner; public class SumaProducto4Numeros { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,num3,num4,suma,producto; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); System.out.print("Ingrese tercer valor:"); num3=teclado.nextInt(); System.out.print("Ingrese cuarto valor:"); num4=teclado.nextInt(); suma=num1 + num2; producto=num3 * num4; System.out.print("La suma de los dos primero valores es:"); System.out.println(suma); System.out.print("El producto del tercer y cuarto valor es:"); System.out.print(producto); } } _____________________________________________________________________ import java.util.Scanner; public class SumaPromedio { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,num3,num4,suma,promedio; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); System.out.print("Ingrese tercer valor:"); num3=teclado.nextInt(); System.out.print("Ingrese cuarto valor:"); num4=teclado.nextInt(); suma=num1 + num2 + num3 + num4; promedio=suma/4; System.out.print("La suma de los cuatro valores es:"); System.out.println(suma); System.out.print("El promedio es:"); System.out.print(promedio); } } _____________________________________________________________________ import java.util.Scanner; public class CostoCompra { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int cantidad; float precio; float importe; System.out.print("Ingrese la cantidad de artículos a llevar:"); cantidad=teclado.nextInt(); System.out.print("Ingrese el valor unitario del producto:"); precio=teclado.nextFloat(); importe=precio * cantidad; System.out.print("El importe total a pagar es:"); System.out.print(importe); } } _____________________________________________________________________ - Estructuras condicionales simples y compuestas No todos los problemas pueden resolverse empleando estructuras secuenciales. Cuando hay que tomar una decisión aparecen las estructuras condicionales. En nuestra vida diaria se nos presentan situaciones donde debemos decidir. ¿Elijo la carrera A o la carrera B? ¿Me pongo este pantalón? Para ir al trabajo, ¿elijo el camino A o el camino B? Al cursar una carrera, ¿elijo el turno mañana, tarde o noche? Por supuesto que en un problema se combinan estructuras secuenciales y condicionales. Estructura condicional simple. Cuando se presenta la elección tenemos la opción de realizar una actividad o no realizar ninguna. Representación gráfica: Podemos observar: El rombo representa la condición. Hay dos opciones que se pueden tomar. Si la condición da verdadera se sigue el camino del verdadero, o sea el de la derecha, si la condición da falsa se sigue el camino de la izquierda. Se trata de una estructura CONDICIONAL SIMPLE porque por el camino del verdadero hay actividades y por el camino del falso no hay actividades. Por el camino del verdadero pueden existir varias operaciones, entradas y salidas, inclusive ya veremos que puede haber otras estructuras condicionales. Problema: Ingresar el sueldo de una persona, si supera los 3000 pesos mostrar un mensaje en pantalla indicando que debe abonar impuestos. Diagrama de flujo: Podemos observar lo siguiente: Siempre se hace la carga del sueldo, pero si el sueldo que ingresamos supera 3000 pesos se mostrará por pantalla el mensaje "Esta persona debe abonar impuestos", en caso que la persona cobre 3000 o menos no aparece nada por pantalla. Programa: _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalSimple1 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); float sueldo; System.out.print("Ingrese el sueldo:"); sueldo=teclado.nextFloat(); if (sueldo>3000) { System.out.println("Esta persona debe abonar impuestos"); } } } _____________________________________________________________________ La palabra clave "if" indica que estamos en presencia de una estructura condicional; seguidamente disponemos la condición entre paréntesis. Por último encerrada entre llaves las instrucciones de la rama del verdadero. Es necesario que las instrucciones a ejecutar en caso que la condición sea verdadera estén encerradas entre llaves { }, con ellas marcamos el comienzo y el fin del bloque del verdadero. Ejecutando el programa e ingresamos un sueldo superior a 3000 pesos. Podemos observar como aparece en pantalla el mensaje "Esta persona debe abonar impuestos", ya que la condición del if es verdadera. Volvamos a ejecutar el programa y carguemos un sueldo menor o igual a 3000 pesos. No debe aparecer mensaje en pantalla. Estructura condicional compuesta. Cuando se presenta la elección tenemos la opción de realizar una actividad u otra. Es decir tenemos actividades por el verdadero y por el falso de la condición. Lo más importante que hay que tener en cuenta que se realizan las actividades de la rama del verdadero o las del falso, NUNCA se realizan las actividades de las dos ramas. Representación gráfica: En una estructura condicional compuesta tenemos entradas, salidas, operaciones, tanto por la rama del verdadero como por la rama del falso. Problema: Realizar un programa que solicite ingresar dos números distintos y muestre por pantalla el mayor de ellos. Diagrama de flujo: Se hace la entrada de num1 y num2 por teclado. Para saber cual variable tiene un valor mayor preguntamos si el contenido de num1 es mayor (>) que el contenido de num2, si la respuesta es verdadera vamos por la rama de la derecha e imprimimos num1, en caso que la condición sea falsa vamos por la rama de la izquierda (Falsa) e imprimimos num2. Como podemos observar nunca se imprimen num1 y num2 simultáneamente. Estamos en presencia de una ESTRUCTURA CONDICIONAL COMPUESTA ya que tenemos actividades por la rama del verdadero y del falso. Programa: _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalCompuesta1 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); if (num1>num2) { System.out.print(num1); } else { System.out.print(num2); } } } _____________________________________________________________________ Cotejemos el diagrama de flujo y la codificación y observemos que el primer bloque de llaves después del if representa la rama del verdadero y el segundo bloque de llaves representa la rama del falso. Compilemos el programa, si hubo errores sintácticos corrijamos y carguemos dos valores, como por ejemplo: Ingrese el primer valor: 10 Ingrese el segundo valor: 4 10 Si ingresamos los valores 10 y 4 la condición del if retorna verdadero y ejecuta el primer bloque. Un programa se controla y corrige probando todos sus posibles resultados. Ejecutemos nuevamente el programa e ingresemos: Ingrese el primer valor: 10 Ingrese el segundo valor: 54 54 Cuando a un programa le corregimos todos los errores sintácticos y lógicos ha terminado nuestra tarea y podemos entregar el mismo al USUARIO que nos lo solicitó. Operadores En una condición deben disponerse únicamente variables, valores constantes y operadores relacionales. Operadores Relacionales: > (mayor) < (menor) >= (mayor o igual) <= (menor o igual) == (igual) != (distinto) Operadores Matemáticos + (más) - (menos) * (producto) / (división) % (resto de una división) Ej.: x=13%5; {se guarda 3} Hay que tener en cuenta que al disponer una condición debemos seleccionar que operador relacional se adapta a la pregunta. Ejemplos: _____________________________________________________________________ Se ingresa un número multiplicarlo por 10 si es distinto a 0. (!=) Se ingresan dos números mostrar una advertencia si son iguales. (==) _____________________________________________________________________ Los problemas que se pueden presentar son infinitos y la correcta elección del operador sólo se alcanza con la práctica intensiva en la resolución de problemas. Problemas propuestos 1. Realizar un programa que lea por teclado dos números, si el primero es mayor al segundo informar su suma y diferencia, en caso contrario informar el producto y la división del primero respecto al segundo. 2. Se ingresan tres notas de un alumno, si el promedio es mayor o igual a siete mostrar un mensaje "Promocionado". 3. Se ingresa por teclado un número positivo de uno o dos dígitos (1..99) mostrar un mensaje indicando si el número tiene uno o dos dígitos. (Tener en cuenta que condición debe cumplirse para tener dos dígitos, un número entero) _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalCompuesta2 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); if (num1>num2) { int suma,diferencia; suma=num1 + num2; diferencia=num1 - num2; System.out.print("La suma de los dos valores es:"); System.out.println(suma); System.out.print("La diferencia de los dos valores es:"); System.out.println(diferencia); } else { int producto,division; producto=num1 * num2; division=num1 / num2; System.out.print("El producto de los dos valores es:"); System.out.println(producto); System.out.print("La división de los dos valores es:"); System.out.println(division); } } } _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalSimple2 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int nota1,nota2,nota3; System.out.print("Ingrese primer nota:"); nota1=teclado.nextInt(); System.out.print("Ingrese segunda nota:"); nota2=teclado.nextInt(); System.out.print("Ingrese tercer nota:"); nota3=teclado.nextInt(); int promedio; promedio=(nota1 + nota2 + nota3) / 3; if (promedio>=7) { System.out.print("Promocionado"); } } } _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalCompuesta3 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num; System.out.print("Ingrese un valor entero de 1 o 2 dígitos:"); num=teclado.nextInt(); if (num<10) { System.out.print("Tiene un dígito"); } else { System.out.print("Tiene dos dígitos"); } } } _____________________________________________________________________ - Estructuras condicionales anidadas Decimos que una estructura condicional es anidada cuando por la rama del verdadero o el falso de una estructura condicional hay otra estructura condicional. El diagrama de flujo que se presenta contiene dos estructuras condicionales. La principal se trata de una estructura condicional compuesta y la segunda es una estructura condicional simple y está contenida por la rama del falso de la primer estructura. Es común que se presenten estructuras condicionales anidadas aún más complejas. Problema: Confeccionar un programa que pida por teclado tres notas de un alumno, calcule el promedio e imprima alguno de estos mensajes: Si el promedio es >=7 mostrar "Promocionado". Si el promedio es >=4 y <7 mostrar "Regular". Si el promedio es <4 mostrar "Reprobado". Diagrama de flujo: Analicemos el siguiente diagrama. Se ingresan tres valores por teclado que representan las notas de un alumno, se obtiene el promedio sumando los tres valores y dividiendo por 3 dicho resultado (Tener en cuenta que si el resultado es un valor real solo se almacena la parte entera). Primeramente preguntamos si el promedio es superior o igual a 7, en caso afirmativo va por la rama del verdadero de la estructura condicional mostramos un mensaje que indica "Promocionado" (con comillas indicamos un texto que debe imprimirse en pantalla). En caso que la condición nos de falso, por la rama del falso aparece otra estructura condicional, porque todavía debemos averiguar si el promedio del alumno es superior o igual a cuatro o inferior a cuatro. Estamos en presencia de dos estructuras condicionales compuestas. Programa: _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalAnidada1 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int nota1,nota2,nota3; System.out.print("Ingrese primer nota:"); nota1=teclado.nextInt(); System.out.print("Ingrese segunda nota:"); nota2=teclado.nextInt(); System.out.print("Ingrese tercer nota:"); nota3=teclado.nextInt(); int promedio=(nota1 + nota2 + nota3) / 3; if (promedio>=7) { System.out.print("Promocionado"); } else { if (promedio>=4) { System.out.print("Regular"); } else { System.out.print("Reprobado"); } } } } _____________________________________________________________________ Codifiquemos y ejecutemos este programa. Al correr el programa deberá solicitar por teclado la carga de tres notas y mostrarnos un mensaje según el promedio de las mismas. Podemos definir un conjunto de variables del mismo tipo en una misma línea: int nota1,nota2,nota3; Esto no es obligatorio pero a veces, por estar relacionadas, conviene. A la codificación del if anidado podemos observarla por el else del primer if. Para no tener problemas (olvidarnos) con las llaves de apertura y cerrado podemos ver la siguiente regla: Cada vértice representa una llave de apertura y una de cierre: Problemas propuestos 1. Se cargan por teclado tres números distintos. Mostrar por pantalla el mayor de ellos. 2. Se ingresa por teclado un valor entero, mostrar una leyenda que indique si el número es positivo, nulo o negativo. 3. Confeccionar un programa que permita cargar un número entero positivo de hasta tres cifras y muestre un mensaje indicando si tiene 1, 2, o 3 cifras. Mostrar un mensaje de error si el número de cifras es mayor. 4. Un postulante a un empleo, realiza un test de capacitación, se obtuvo la siguiente información: cantidad total de preguntas que se le realizaron y la cantidad de preguntas que contestó correctamente. Se pide confeccionar un programa que ingrese los dos datos por teclado e informe el nivel del mismo según el porcentaje de respuestas correctas que ha obtenido, y sabiendo que: Nivel máximo: Porcentaje>=90%. Nivel medio: Porcentaje>=75% y <90%. Nivel regular: Porcentaje>=50% y <75%. Fuera de nivel: Porcentaje<50%. _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalAnidada2 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,num3; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segunda valor:"); num2=teclado.nextInt(); System.out.print("Ingrese tercer valor:"); num3=teclado.nextInt(); if (num1>num2) { if (num1>num3) { System.out.print(num1); } else { System.out.println(num3); } } else { if (num2>num3) { System.out.print(num2); } else { System.out.print(num3); } } } } _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalAnidada3 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num; System.out.print("Ingrese un valor:"); num=teclado.nextInt(); if (num==0) { System.out.print("Se ingresó el cero"); } else { if (num>0) { System.out.print("Se ingresó un valor positivo"); } else { System.out.print("Se ingresó un valor negativo"); } } } } _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalAnidada4 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num; System.out.print("Ingrese un valor de hasta tres dígitos positivo:"); num=teclado.nextInt(); if (num<10) { System.out.print("Tiene un dígito"); } else { if (num<100) { System.out.print("Tiene dos dígitos"); } else { if (num<1000) { System.out.print("Tiene tres dígitos"); } else { System.out.print("Error en la entrada de datos."); } } } } } _____________________________________________________________________ import java.util.Scanner; public class EstructuraCondicionalAnidada5 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int totalPreguntas,totalCorrectas; System.out.print("Ingrese la cantidad total de preguntas del examen:"); totalPreguntas=teclado.nextInt(); System.out.print("Ingrese la cantidad total de preguntas contestadas correctamente:"); totalCorrectas=teclado.nextInt(); int porcentaje=totalCorrectas * 100 / totalPreguntas; if (porcentaje>=90) { System.out.print("Nivel máximo"); } else { if (porcentaje>=75) { System.out.print("Nivel medio"); } else { if (porcentaje>=50) { System.out.print("Nivel regular"); } else { System.out.print("Fuera de nivel"); } } } } } _____________________________________________________________________ - Condiciones compuestas con operadores lógicos Hasta ahora hemos visto los operadores: relacionales (>, <, >=, <= , ==, !=) matemáticos (+, -, *, /, %) pero nos están faltando otros operadores imprescindibles: lógicos (&&, ||). Estos dos operadores se emplean fundamentalmente en las estructuras condicionales para agrupar varias condiciones simples. Operador && Traducido se lo lee como “Y”. Si la Condición 1 es verdadera Y la condición 2 es verdadera luego ejecutar la rama del verdadero. Cuando vinculamos dos o más condiciones con el operador “&&”, las dos condiciones deben ser verdaderas para que el resultado de la condición compuesta de Verdadero y continúe por la rama del verdadero de la estructura condicional. La utilización de operadores lógicos permiten en muchos casos plantear algoritmos más cortos y comprensibles. Problema: Confeccionar un programa que lea por teclado tres números distintos y nos muestre el mayor. Diagrama de flujo: Este ejercicio está resuelto sin emplear operadores lógicos en un concepto anterior del tutorial. La primera estructura condicional es una ESTRUCTURA CONDICIONAL COMPUESTA con una CONDICION COMPUESTA. Podemos leerla de la siguiente forma: Si el contenido de la variable num1 es mayor al contenido de la variable num2 Y si el contenido de la variable num1 es mayor al contenido de la variable num3 entonces la CONDICION COMPUESTA resulta Verdadera. Si una de las condiciones simples da falso la CONDICION COMPUESTA da Falso y continua por la rama del falso. Es decir que se mostrará el contenido de num1 si y sólo si num1>num2 y num1>num3. En caso de ser Falsa la condición, analizamos el contenido de num2 y num3 para ver cual tiene un valor mayor. En esta segunda estructura condicional no se requieren operadores lógicos al haber una condición simple. Programa: _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas1 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,num3; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); System.out.print("Ingrese tercer valor:"); num3=teclado.nextInt(); if (num1>num2 && num1>num3) { System.out.print(num1); } else { if (num2>num3) { System.out.print(num2); }else { System.out.print(num3); } } } } _____________________________________________________________________ Operador || Traducido se lo lee como “O”. Si la condición 1 es Verdadera O la condición 2 es Verdadera, luego ejecutar la rama del Verdadero. Cuando vinculamos dos o más condiciones con el operador “Or", con que una de las dos condiciones sea Verdadera alcanza para que el resultado de la condición compuesta sea Verdadero. Problema: Se carga una fecha (día, mes y año) por teclado. Mostrar un mensaje si corresponde al primer trimestre del año (enero, febrero o marzo) Cargar por teclado el valor numérico del día, mes y año. Ejemplo: dia:10 mes:1 año:2010. Diagrama de flujo: La carga de una fecha se hace por partes, ingresamos las variables dia, mes y año. Mostramos el mensaje "Corresponde al primer trimestre" en caso que el mes ingresado por teclado sea igual a 1, 2 ó 3. En la condición no participan las variables dia y año. Programa: _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas2 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int dia,mes,año; System.out.print("Ingrese nro de día:"); dia=teclado.nextInt(); System.out.print("Ingrese nro de mes:"); mes=teclado.nextInt(); System.out.print("Ingrese nro de año:"); año=teclado.nextInt(); if (mes==1 || mes==2 || mes==3) { System.out.print("Corresponde al primer trimestre"); } } } _____________________________________________________________________ Problemas propuestos 1. Realizar un programa que pida cargar una fecha cualquiera, luego verificar si dicha fecha corresponde a Navidad. 2. Se ingresan tres valores por teclado, si todos son iguales se imprime la suma del primero con el segundo y a este resultado se lo multiplica por el tercero. 3. Se ingresan por teclado tres números, si todos los valores ingresados son menores a 10, imprimir en pantalla la leyenda "Todos los números son menores a diez". 4. Se ingresan por teclado tres números, si al menos uno de los valores ingresados es menor a 10, imprimir en pantalla la leyenda "Alguno de los números es menor a diez". 5. Escribir un programa que pida ingresar la coordenada de un punto en el plano, es decir dos valores enteros x e y (distintos a cero). Posteriormente imprimir en pantalla en que cuadrante se ubica dicho punto. (1º Cuadrante si x > 0 Y y > 0 , 2º Cuadrante: x < 0 Y y > 0, etc.) 6. De un operario se conoce su sueldo y los años de antigüedad. Se pide confeccionar un programa que lea los datos de entrada e informe: a) Si el sueldo es inferior a 500 y su antigüedad es igual o superior a 10 años, otorgarle un aumento del 20 %, mostrar el sueldo a pagar. b)Si el sueldo es inferior a 500 pero su antigüedad es menor a 10 años, otorgarle un aumento de 5 %. c) Si el sueldo es mayor o igual a 500 mostrar el sueldo en pantalla sin cambios. 7. Escribir un programa en el cual: dada una lista de tres valores numéricos distintos se calcule e informe su rango de variación (debe mostrar el mayor y el menor de ellos) _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas3 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int dia,mes,año; System.out.print("Ingrese nro de día:"); dia=teclado.nextInt(); System.out.print("Ingrese nro de mes:"); mes=teclado.nextInt(); System.out.print("Ingrese nro de año:"); año=teclado.nextInt(); if (mes==12 && dia==25) { System.out.print("La fecha ingresada corresponde a navidad."); } } } _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas4 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,num3; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); System.out.print("Ingrese tercer valor:"); num3=teclado.nextInt(); if (num1==num2 && num1==num3) { int suma=num1 + num2; System.out.print("La suma del primero y segundo:"); System.out.println(suma); int producto=suma * num3; System.out.print("La suma del primero y segundo multiplicado por el tercero:"); System.out.print(producto); } } } _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas5 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,num3; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); System.out.print("Ingrese tercer valor:"); num3=teclado.nextInt(); if (num1<10 && num2<10 && num3<10) { System.out.print("Todos los números son menores a diez"); } } } _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas6 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,num3; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); System.out.print("Ingrese tercer valor:"); num3=teclado.nextInt(); if (num1<10 || num2<10 || num3<10) { System.out.print("Alguno de los números es menor a diez"); } } } _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas7 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int x,y; System.out.print("Ingrese coordenada x:"); x=teclado.nextInt(); System.out.print("Ingrese coordenada y:"); y=teclado.nextInt(); if (x>0 && y>0) { System.out.print("Se encuentra en el primer cuadrante"); } else { if (x<0 && y>0) { System.out.print("Se encuentra en el segundo cuadrante"); } else { if (x<0 && y<0) { System.out.print("Se encuentra en el tercer cuadrante"); } else { System.out.print("Se encuentra en el cuarto cuadrante"); } } } } } _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas8 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); float sueldo; int antiguedad; System.out.print("Ingrese sueldo del empleado:"); sueldo=teclado.nextFloat(); System.out.print("Ingrese su antiguedad en años:"); antiguedad=teclado.nextInt(); if (sueldo<500 && antiguedad>10) { float aumento=sueldo * 0.20f; float sueldoTotal=sueldo+aumento; System.out.print("Sueldo a pagar:"); System.out.print(sueldoTotal); } else { if (sueldo<500) { float aumento=sueldo * 0.05f; float sueldoTotal=sueldo+aumento; System.out.print("Sueldo a pagar:"); System.out.print(sueldoTotal); } else { System.out.print("Sueldo a pagar:"); System.out.print(sueldo); } } } } _____________________________________________________________________ import java.util.Scanner; public class CondicionesCompuestas9 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.in); int num1,num2,num3; System.out.print("Ingrese primer valor:"); num1=teclado.nextInt(); System.out.print("Ingrese segundo valor:"); num2=teclado.nextInt(); System.out.print("Ingrese tercer valor:"); num3=teclado.nextInt(); System.out.print("Rango de valores:"); if (num1<num2 && num1<num3) { System.out.print(num1); } else { if (num2<num3) { System.out.print(num2); } else { System.out.print(num3); } } System.out.print("-"); if (num1>num2 && num1>num3) { System.out.print(num1); } else { if (num2>num3) { System.out.print(num2); } else { System.out.print(num3); } } } } _____________________________________________________________________

0
9
R
reconocimiento de voz de windows no inicia (solucion)
Apuntes Y MonografiasporAnónimo7/26/2011

hace poco me compre un microfono para usar el reconocimiento de voz yo muy feliz hice todo y cuando ejecute el rdv mi sorpresa me daba este error No se pudo iniciar el reconocimiento de voz al no ser compatible la configuración de idioma. El idioma del reconocedor debe coincidir con el idioma de la interfaz de usuario. no te funciona el reconocimiento de voz Los pasos son los siguientes: 1.-Establecer el mismo idioma tanto para mostrar (Configuración Regional y de Idioma), como el de el Reconocedor de voz (Opciones Avanzadas del Reconocimiento de Voz) Ejemplo: Mi Windows7 x32 Tiene como Idioma Nativo El Español de España Internacional Entoces el Idioma para mostrar debera ser "Español de España Internacional" -Y fijarse en la pestaña de la Config.Regional y de Idioma la pestaña de ADMINISTRATIVO, que dentro de sus opciones aparece Idiomas para Programas no UNICODE, en la cual debera quedar de igual forma "Español de España Internacional” Verificar que el idioma del reconocedor este en: Reconocedor...Windows8...Español de España Internacional OJO: Una vez que todo ya tiene el mismo IDIOMA, procederemos a reiniciar con el fin de que el SO realice todos los cambios que le estemos pidiendo. 2.-Ejecutar Regedit.exe (lo pueden buscar desde la ventana de busquedas del menu inicio -Busquen: HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun -Estando en Run, agreguen un NUEVO "Valor de Cadena" de nombre *CTFMON*, ya creada denle clic y agreguen el valor: C:WindowsSystem32ctfmon.exe Cierren todo________ 3.-Ejecuten Msconfig.exe (En el cuadro de busqueda) Opriman la pesta "Inicio de Windows" y corroboren que se inicia el programa CTFMON, ya sea por el nombre de la clave o bien lean minuciosamente todas sus rutas para localizarlo y ver que este marcado su inicio. (De no ser así repetir paso 3) ---Ya corroborado el inicio de dicho programa procedemos a dar click en la pestaña de servicios y buscaremos los servicios "Microsoft Office Diagnostics Service" y "Office Source Engine", comprobando que esten tildadas las casillas indicandonos que se inician...(sino estan tildadas, hay que tildarlas). ------Oprimir aceptar, si les dice que se necesita reiniciar, Reinician, de lo contrario reiniciar de forma manual desde el menu inicio ó bien con ALT+F4 ó desde un Gadget, etc. 4.-Una vez reiniciada, Ejecutan en el cuadro de busqueda CTFMON y si el reconocimiento de voz no inicia solo pues van hasta inicio-panel de control-accesibilidad-reconocimiento de voz-iniciar el reconocimientode voz y listo ya esta activado su reconocedor de voz de windows. te debe aparecer algo asi yo solo hice el post y subi las imagenes para que se guiaran esto lo saque de otro post pero estaba muy debil y el que no sepa mucho de regedit no lo iba a entender a por cierto si de casualidad al reiniciar o apagra la pc y al volver a encender no quiere activar el reconocimiento de voz solo deben volver a ejecutar CTFMON como anteriormente lo hicimos y listo

13
0
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.