resolución de problemas con java
TRANSCRIPT
Resolución de Problemas con java
Presenta
Castro ramos diego Osvaldo
Grupo
“402”
Escuela
Cecytem Plantel Tecámac
Sumando
Problema
Se tiene un matriz cuadrada de tamaño “n” y se requiere saber cuánto suma cada columna.
Entrada
En el primer renglón un valor “n” indicando el tamaño de la matriz donde 1<=n<=1000 y en los
siguientes “n” renglones habrán “n” valores correspondientes los valores de cada renglón de la matriz
donde 1<=V<= 1000.
Salida
Un renglón con “n” cantidades, cada cantidad representa la sumatoria de cada columna de la matriz,
el primer valor corresponde a la columna 1, el segundo a la columna 2 ,... y el último valor
corresponde a la columna “n”.
Ejemplos
Entrada Salida Descripción
3
1 2 3 3 5 6
7 8 9
11 15 18 Case #1
import java.util.*;
public class sumando{
public static void main (String []args){
Scanner in=new Scanner (System.in);
int n=in.nextInt();
int numeros [][]= new int [n][n];
int suma [] = new int [n];
for(int i=0;i<n;i++){
for (int k=0;k<n ;k++ ) {
numeros [i][k]=in.nextInt(); Figura 1.1
suma[i]=0;
}
}
Imprimir(numeros,n);
obtenersuma(numeros, n, suma);
imprimirsuma (suma, n);
}
public static void Imprimir (int [] [] numeros, int n){
for (int i=0;i<n ;i++ ) {
for (int k=0; k<n; k++) {
System.out.print("numeros["+ (i+1)+ "]["+(k+1)+"]=>"+numeros[i][k]+" ");
}
System.out.println (" ");
}
}
public static void obtenersuma(int [] [] numeros, int n, int [] suma){
for (int i=0;i<n;i++){
for (int k=0;k<n ;k++ ) {
suma[i]+=numeros[k][i];
}
}
}
public static void imprimirsuma (int [] suma, int n){
for (int i=0;i<n ;i++ ) {
System.out.print(" "+suma[i]+" ");
}
}
}
El problema lo puedes apreciar en la figura 1.1
Calculadora:
Problema:
Se tiene que realizar una clase principal y agregar unas clases privadas este es un claro ejemplo de
programación orientada a objetos este programa realiza las 4 operaciones básicas
Entrada:
Realizara las operaciones con dos números ya introducidos
Salida:
Me mostrara los resultados de las operaciones
Entrada Salida Descripcion
20+10 20-10 20*10 20/10
30 10 200 2
Case#1
Este es el código de la clase principal
import java.util.*;
public class calculadora{
int n1;
int n2;
calculadora(int a,int b){
this.n1=a;
this.n2=b;
System.out.println("constructor 2");
}
calculadora(){
System.out.println("hola constructor calculadora");
}
calculadora(int n){
this.n1=n;
System.out.println("Numero1");
}
calculadora(String msj){
System.out.println("tu mensaje es:"+msj);
}
public int suma(){
return n1+n2; }
public int resta(){
return n1-n2;
}
public int multi(){
return n1-n2;
}
public int divi(){
return n1-n2;
}
public void setNumero1(int n){
this.n1=n;
}
public void setNumero2(int n){
this.n2=n;
}
public int getNumero1(int n){
return n1;
}
public int getNumero2(int n){
return n2;
}
public void aCadena (){
System.out.println ("numero1:"+n1+"\n numero2:"+n2);
}
}
Este es el código de las clases privadas
import java.util.*;
public class calculadora{
int n1;
int n2;
calculadora(int a,int b){
this.n1=a;
this.n2=b;
System.out.println("constructor 2");
}
calculadora(){
System.out.println("hola constructor calculadora");
}
calculadora(int n){
this.n1=n;
System.out.println("Numero1");
}
calculadora(String msj){
System.out.println("tu mensaje
es:"+msj);
}
public int suma(){
return n1+n2;
}
public int resta(){
return n1-n2;
}
public int multi(){
return n1-n2;
}
public int divi(){
return n1-n2;
}
public void setNumero1(int n){
this.n1=n;
}
public void setNumero2(int n){
this.n2=n;
}
public int getNumero1(int n){
return n1;
}
public int getNumero2(int n){
return n2;
}
public void aCadena (){
System.out.println ("numero1:"+n1+"\n numero2:"+n2);
}
}
El resultado lo puedes apreciar en la figura 1.2
Cuadrado
Descripción.
A continuación te mostramos un giro de 90 grados a la derecha de una matriz de 2 por 2 cuyos
valores son:
Matriz original
1 2
3 4
Matriz Girada 90° a la derecha
3 1
4 2
Problema
Dada una matriz cuadrada de tamaño “n” , debes hacer que tu programa la gire 90 grados a la
derecha.
Entrada
En la primera línea el valor “n” indicando el tamaño de la matriz donde 1<=n<=1000, en los
siguientes “n” renglones habrán “n” valores de la matriz separados por un espacio.
Salida
“n” renglones cada renglón con "n" valores mostrando la matriz girada 90 grados.
Consideraciones Tu programa se evaluará con varios casos de prueba
Ejemplo:
Entrada Salida Descripción 3 1 2 3 4
3 1 4 2
Case#1
3 1 2 3 4 5 6 7 8 9
7 4 1 8 5 2 9 6 3
Case#2
Código:
import java.util.*;
public class cuadrado{
public static void main (String []args){
Scanner in=new Scanner (System.in);
int n=in.nextInt();
int numeros [][]= new int [n][n];
for(int x=0;x<n;x++){
for (int y=0;y<n ;y++ ) {
numeros [x][y]=in.nextInt();
}
}
System.out.println("Giro de 90°");
for (int x=0;x<n ;x++ ) {
for (int y=(n-1);y>=0;y--) {
if (y==0){
System.out.print(numeros[y][x]+" ");
System.out.print("\n");
}
else{
System.out.print(numeros[y][x]+" "); Figura 1.3
}
}
}
}} El resultado de puede apreciar en la Figura 1.3
Bardeando
Descripción
Se tiene un conjunto de “n” trozos de malla ciclónica y un terreno de perímetro “P” el terreno es
cuadrado.
Problema
Debes escribir un programa que nos diga cuántos metros de malla ciclonica nos hace falta para
poder bardear el terreno.
Entrada
En la primera línea dos números “P” y "n", donde "P" representa el perímetro del terreno con un
rango de valores de 1<=P <= 2,000,000,000 y “n” representa la cantidad de trozos de malla ciclónica
que tenemos, donde 1<=n<=100,000. En las siguientes “n” líneas es el tamaño de cada trozo de
malla que tenemos. La suma de todos los trozos siempre será menor a 2147483648.
Salida
Un único valor entero indicando los metros de malla que nos hacen falta para bardear el terreno.
Ejemplos:
Entrada Salida Descripción
100 3 25 20 10
45 Case#1
100 2 1000 2000
0 Case#2
Código :
import java.util.*;
public class bardeando{
public static void main(String[] args) {
Scanner in=new Scanner (System.in);
int a=in.nextInt();
int t=in.nextInt();
int trozos []= new int [t];
int total []= new int [t];
for (int i=0;i<t ; i++) {
trozos[i]=in.nextInt();
}
int x=trozos[0];
for(int i=1;i<t;i++){
x=x+trozos[i];
}
System.out.println(x);
if (x==a){ Figura1.4
System.out.println("faltan 0 mts");
}
else if(x>a){
System.out.println("faltan 0 mts");
}
else if (x<a) {
int q=a-x;
System.out.println("fatltan "+ q+ " metros");
}
}
}
El resultado se puede apreciar en la figura 1.4
Triangulo:
Descripción
Un triángulo es formado por 3 segmentos (con valor entero) de recta unidos por sus extremos, sin
embargo no todas las combinaciones de 3 segmentos pueden formar un triángulo.
Problema
Escriba un programa que dados 3 números que representan 3 segmentos de rectas, diga si pueden
formar un triángulo rectángulo.
Entrada
En la primera línea 3 números “a”, “b” y “c” representando las longitudes de 3 segmentos de recta en
un rango de entre 1 y 32,000.
Salida
Una sola línea en donde si es posible generar un triángulo rectángulo debes imprimir la hipotenusa,
el cateto mayor y el cateto menor y si no es posible formar un triángulo rectángulo imprime la palabra
“imposible”.
Consideraciones
Tu programa se evaluará con varios casos de prueba, para cada caso de prueba (entrada)
Código:
import java.lang.Math;
import java.util.*;
public class triangulo{
public static void main(String[] args) {
Scanner b1= new Scanner (System.in);
Scanner b2= new Scanner (System.in);
Scanner b3= new Scanner (System.in);
int a,b,c,ax,bx,cx,d,e,f;
Double raiz;
a=b1.nextInt();
b=b2.nextInt();
c=b3.nextInt();
ax=a*a;
bx=b*b;
cx=c*c;
if (a>=b){
if(a>=c){
if(b>=c){
System.out.println("\n N:"+a+"\n N:"+b+"\n N:"+c);
d=bx+cx;
raiz=Math.sqrt(d);
if(raiz==a){
System.out.println("Si es posible el triangulo y sus medidas serian Hipotenusa "+a+"\n Cateto
Adyacente "+b+"\n Cateto Opuesto "+c);
}
else{
System.out.println("Es imposible");
}
}
else{
System.out.println("\n N:"+a+"\n N:"+c+"\n N:"+b);
d=cx+bx;
raiz=Math.sqrt(d);
if(raiz==a){
System.out.println("Si es posible el triangulo y sus medidas serian Hipotenusa "+a+"\n Cateto
Adyacente "+c+"\n Cateto Opuesto "+b);
}
else{
System.out.println("Es imposible");
}
}
}
else{
System.out.println("\n N:"+c+"\n N:"+a+"\n N:"+b);
d=ax+bx;
raiz=Math.sqrt(d);
if(raiz==c){
System.out.println("Si es posible el triangulo y sus medidas serian Hipotenusa "+c+"\n Cateto
Adyacente "+a+"\n Cateto Opuesto "+b);
}
else{
System.out.println("Es imposible");
}
}
}
else {
if(b>=c){
if(c>=a){
System.out.println("\n N:"+b+"\n
N:"+c+"\n N:"+a);
d=ax+cx;
raiz=Math.sqrt(d);
if(raiz==b){ Figura 1.5
System.out.println("Si es posible el triangulo y sus medidas serian Hipotenusa "+b+"\n Cateto
Adyacente "+c+"\n Cateto Opuesto "+a);
}
else{
System.out.println("Es imposible");
}
}
else{
System.out.println("\n N:"+b+"\n N:"+a+"\n N:"+c);
d=ax+cx;
raiz=Math.sqrt(d);
if(raiz==b){
System.out.println("Si es posible el triangulo y sus medidas serian Hipotenusa "+b+"\n Cateto
Adyacente "+a+"\n Cateto Opuesto "+c);
}
else{
System.out.println("Es imposible");
}
}
}
else{
System.out.println("\n N:"+c+"\n N:"+b+"\n N:"+a);
d=ax+bx;
raiz=Math.sqrt(d);
if(raiz==c){
System.out.println("Si es posible el triangulo y sus medidas serian Hipotenusa "+c+"\n Cateto
Adyacente "+b+"\n Cateto Opuesto "+a);
}
else{
System.out.println("Es imposible");
}
}
}
} } El resultado se puede apreciar en la figura 1.5
Matriz Cuadrada
Descripción Tenemos una matriz de “R” renglones por “C” columnas, donde podemos enumerar las
casillas de la siguiente manera, la casilla 1,1 (renglón 1, columna 1), la casilla 1,2 (renglón 1,
columna 2) y la casilla 1,3 (renglón 1, columna 3 ) serían respectivamente las posiciones 1, 2 y 3
como se puede ver en la figura, donde la casilla 1,1 es la esquina superior izquierda y la celda “R” x
“C” es la celda ubicada en la esquina inferior derecha.
En esta cuadrícula, podemos hacer preguntas de la forma, ¿que número está en la casilla 1,2 ? y su
respuesta sería 2 otro ejemplo ¿qué número está en la celda 2,3? y su respuesta es 6.
Problema
Escribe un programa que dada las dimensiones de la cuadrícula responda una cantidad “P” de
preguntas.
Entrada
En la primera línea dos valores indicando las dimensiones de la cuadrícula separados por un espacio
„R‟ cantidad de renglones donde 1<=R<=10000 y “C” cantidad de columnas donde 1<=C<=10000,
En la tercera línea el número “P” cantidad de preguntas donde 1<=P<=10,000 y en las siguientes “P”
líneas un par de coordenadas de la forma r, c, representando las coordenadas de cada pregunta en
donde “r” indica el renglón 1<=r<=R y “c” la columna 1<=c<=C por cada pregunta.
Salida
Por cada pregunta debe escribir en cada línea el número de casilla que le corresponde.
Ejemplos
Entrada Salida Descripción
3 3 3 1 1 2 2 3 3
1 5 9 Case#1
3 1000 2 2 1 2 10
1001 1010
Case#2
Código:
import java.util.*;
public class matriz2{
public static void main (String []args){
Scanner in=new Scanner (System.in);
int fila=in.nextInt();
int columna=in.nextInt();
int n=in.nextInt();
int ar[][]=new int [n][2];
int res []=new int [n];
for(int i=0;i<n;i++){
for (int k=0;k<=1 ;k++ ) {
ar[i][k]=in.nextInt();
}
}
for(int i=0;i<n;i++){
res[i]=((ar[i][0]-1)*columna)+ar[i][1]; Figura 1.6
}
for (int c=0;c<n ;c++ ) {
System.out.println(""+res[c]);
}
}
}
El resultado se puede apreciar en la figura 1.6
Suma:
Descripción
Se tiene la siguiente función f(n), formada por la suma de los tres números anteriores.
f(1)=1
f(2)=1
f(3)=2
f(4)=4
f(5)=7
f(6)=13
f(7)=24
f(8)=44
f(9)=81
Note que f(1) = 1 ya que no tiene números anteriores, f(2)=1 ya que es el único número anterior, f(3)
tiene solo 2 números anteriores y a partir de f(4) se da la suma de los tres números anteriores.
Problema
Escribe un programa que dado el valor de “n” escriba la serie correspondiente.
Entrada
Un solo renglón conteniendo el valor “n”donde 1<=n<=64.
Salida
Una sola línea mostrando la serie desde el número menor hasta el mayor cada número debe estar
separado por un espacio.
Código:
import java.util.*;
public class suma{
public static void main (String []args){
Scanner in=new Scanner (System.in);
int a=in.nextInt();
int b=1;
int x;
int pre []=new int [a];
pre[0]=1;
pre[1]=1;
for(int i=2;i<a;i++){
if (pre[0]<=pre[i-1]){
x=pre[i-2]+pre[i-1];
pre [i]=x;
}
}
for(int q=0;q<a;q++){
System.out.println(pre[q]); Figura 1.7
}
}
}
Intervalo
Descripción
En este problema buscamos ingresar tres números de los cuales el tercer número ingresado debe de
mostrarnos que secuencia lleva si su secuencia es menor que los números ingresados anteriormente
debe de mostrarnos un mensaje que diga
Entrada
Tres números enteros (dependiendo del valor del tercer numero imprimirá los mensajes).
Salida
Un mensaje especificando el tipo de secuencia.
Ejemplo:
Entrada Salida Descripción
3 6 9
DERECHA Caso 1
3 6 2
IZQUIERDA Caso 2
3 6 4
INTERVALO Caso 3
Solución
import java.util.*;
public class intervalo{
public static void main(String []args){Scanner in=new Scanner (System.in);
int a=in.nextInt();
int b=in.nextInt();
int c=in.nextInt();
if (c<a){
if(c<b){
System.out.println("Izquierda");
}
else if (c==b){
System.out.println("intervalo");
}
else {
System.out.println("intervalo");
}
}
else if (c==a){ imagen 1.8
System.out.println("intervalo");
}
else {
if(c<b){
System.out.println("intervalo");
}
else if (c==b){
System.out.println("intervalo");
}
else {
System.out.println("derecha");
}}}}
El resultado se puede apreciar en la imagen 1.8
Romanos
Descripcion
En este programa se pretende realizar un programa que al ingresar cierta cantidad entre 1 -100 nos
imprima un mensaje que nos de la cantidad en numeros romanos.
Entrada
Un numero cualquiera entero entre 1-100.
Salida
Un mensaje que nos muestre la cantidad en numeros romanos.
Ejemplo
Entrada Salida Descripcion
45 XLV Caso 1
34 XXXIV Caso 2
100
c Caso 3
Solución
import java.util.Scanner;
public class romanos{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String Unidad[]={"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"};
String Decena[]={"", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"};
int N = sc.nextInt();
int u=N%10;
int d=(N/10)%10;
if(N==100){
System.out.println("C");
}
else if(N>=10){ imagen 1.9
System.out.println(Decena[d]+Unidad[u]);
}
else{
System.out.println(Unidad[N]);
}
}
}
El resultado se puede apreciar en la imagen 1.9
Ajedrez
Descripción
En este problema se pretende realizar un programa que identifique las casillas de un tablero de
ajedrez de 8x8 en donde al ingresar una coordenada del tablero identifique si la casilla es blanca o
negra según corresponda.
Entrada
Una coordenada tomando en cuenta que se ingresa una letra y un número para indicar la
coordenada.
Salida
Un mensaje que diga blanco o negro según corresponda.
Ejemplo
Entrada Salida Descripcion
a 5 Negro Caso 1
C 4 Blanco
Caso 2
Solucion
import java.util.*;
import java.math.*;
public class ajedrez{
public static void main(String[]args){
Scanner con=new Scanner (System.in);
String a=con.nextLine();
int b=con.nextInt();
int res=0;
switch (a){
case "a":
res=b%2;
if(res==1 ){
System.out.println("Black");
}
else{
System.out.println("White");
}
break;
case "b":
res=b%2;
if(res==1 ){
System.out.println("White");
}
else{
System.out.println("Negro");
}
break;
case "c":
res=b%2;
if(res==1 ){
System.out.println("Black");
}
else{
System.out.println("White");
}
break;
case "d":
res=b%2;
if(res==1 ){
System.out.println("White");
}
else{
System.out.println("Black");
}
break;
case "e":
res=b%2;
if(res==1 ){
System.out.println("Black");
}
else{
System.out.println("White");
}
break;
case "f":
res=b%2;
if(res==1 ){
System.out.println("White");
}
else{
System.out.println("Black");
}
break;
case "g":
res=b%2;
if(res==1 ){
System.out.println("Black");
}
else{
System.out.println("White");
}
break;
case "h":
res=b%2;
if(res==1 ){ Figura 2.0
System.out.println("White");
}
else{
System.out.println("Black");
}
break;
default:
break;
}}}
EL resultado se puede apreciar en la figura 2.0
Sedes
Descripcion
Se busca un programa donde al ingresar una cantidad n de números enteros imprima como resultado la
distancia máxima entre dos distancias esto quieres decir que al ingresar una cadena de números el numero
mayor le restara el numero menor
Entrada
Una numero indicando cuantas distancias va a ingresar
Salida
Un solo numero indicando la distancia máxima entre la cadena de números
Ejemplo
Entrada Salida Descripcion 4
7 5
13 4
9 Caso 1
import java.util.*;
public class sede3{
public static void main(String[] args) {
Scanner in=new Scanner (System.in);
int a=in.nextInt();
int ar[]=new int [a];
for (int i=0;i<a ;i++ ){
ar[i]=in.nextInt();
}
int c=ar[0];
for (int i=1;i<a ;i++ ) {
if (ar[i]>c){
c=ar[i];
}
}
int q=ar[0];
for (int i=1;i<a ;i++ ) {
if (ar[i]<q){
q=ar[i];
}
}
int x=c-q;
System.out.println(" "+x); Figura 2.1
}
}
El resultado se puede apreciar en la figura 2.1
No Fibonacci
Descripcion
La serie de Fibonacci es una serie de números que lleva una secuencia de
sumar los dos números anteriores 1, 2, 3, 5, 8, 13, 21, 34, 55... El problema
es calcular exactamente lo contrario ósea la serie que no lleve los números
de Fibonacci.
Entrada
Un numero indicando hasta donde llegara la serie de no Fibonacci
Salida
Una serie de números indicando la serie de no Fibonacci hasta el numero
que se introdujo.
Ejemplo
Entrada Salida Descripcion
9 4 6 7 Caso 1
Solución
import java.util.*;
public class fibo2{
public static void main(String[] args) {
Scanner in=new Scanner (System.in);
int a=in.nextInt();
int ar []=new int [a];
if (a>2) {
ar[0]=1;
ar[1]=1;
for (int i=2;i<a ;i++ ) {
ar[i]=ar[i-1]+ar[i-2];
}
}
else if(a==2){
ar[0]=1;
ar[1]=1;
}
else if (a<2){
ar[0]=1;
int ar1 []=new int [a];
for (int i=0;i<a ;i++ ) { Figura 2.2
ar1[i]=i+1;
}
for (int i=0;i<a ;i++ ) {
for (int k=1;k<a ;k++ ) {
if (ar1[i]==ar[k]){
k=a-1;
}
else if (k==(a-1)){
System.out.println(ar1[i]);
}
}
}
System.out.println("\n");
}
}
El resultado se puede apreciar en la figura 2.2
Dados
Descripcion
El dado tiene seis lados y en cada lado viene un numero del uno al seis en este problema buscamos
ingresar un número y que nos dé como resultado saber cuál es la suma máxima de los números
ingresados y cuál es la mínima según las tiradas que allá hecho.
Entrada
Un número indicando las tiradas y los números que salieron por tirada
Salida
La suma máxima de los números y la mínima
Ejemplo
Entrada Salida Descripcion
4 5
2 3
6
Máxima 15 Mínima 5
Caso 1
Solución
import java.util.*;
public class dado{
public static void main(String [] args){
Scanner z=new Scanner (System.in);
int a=z.nextInt();
int i, x, y, l=1;;
int dado [] = new int [a];
for(i=0; i<a; i++){
dado[i]=z.nextInt();
}
System.out.print(" ");
for(i=0; i<a; i++){
for(x=i+1; x<a; x++){
if(dado [i]>dado[x]){
y=dado[i];
dado[i]=dado[x];
dado[x]=y;
}
}
}
for(i=0; i<a; i++){
System.out.print(dado[i]+",");
}
int c=dado[0]+dado[1];
System.out.println("La suma minima es ,"+c);
int e=dado[a-2]+dado[a-1];
System.out.println("La suma maxima es ,"+e);
System.exit(0);
}
}
Figura 2.3
Año Bisiesto
Descripcion
Cada cuatro años el mes de febrero tiene 29 días lo cual significa que el año es bisiesto en este
problema lo que busca en saber cuáles son y cuales no bisiestos .Realizar un programa que te diga
cuales son bisiestos y cuales no
Entrada
Un número indicando los años que va a introducir y los años
Salida
Mensajes diciendo si es o no año bisiesto
Ejemplo
Entrada Salida Descripcion
4 2013
2016 2010
2018
No Si
No No
Caso 1
Solucion
import java.util.*;
public class bisiesto{
public static void main(String[] args) {
Scanner in=new Scanner (System.in);
int a=in.nextInt();
int b[]=new int [a];
int c[]=new int [a];
int d[]=new int [a];
int e[]=new int [a];
for (int i=0;i<a ;i++ ) {
b[i]=in.nextInt();
}
for (int i=0;i<a ;i++ ) {
c[i]=b[i]%4;
d[i]=b[i]%100;
e[i]=b[i]%400;
}
for (int i=0;i<a ;i++ ) {
Figura 2.4
if (d[i]==0){
if (e[i]==0) {
System.out.println("Si");
}
else{
System.out.println("no");
}
}
else if(c[i]==0){
System.out.println("Si");
}
else{
System.out.println("no");
}}}}} El resultado se puede apreciar en la figura 2.4
Par de números
Descripcion
En este problema se busca ingresar numero positivo y negativos e imprimir si son pares o impares
positivos o negativos
Entrada
Un número indicando cuantos números va a ingresar
Salida
Mensaje indicando par o impar positivo o negativo según corresponda
Ejemplo
Entrada Salida Descripcion
4
4 5
6 4
Par positivo Impar positivo
Par Positivo Par positivo
Caso1
Solucion
import java.util.*;
public class par{
public static void main(String[] args) {
Scanner in=new Scanner (System.in);
int a=in.nextInt();
int b[]=new int [a];
System.out.println("\n");
for (int i=0;i<a ;i++ ) {
b[i]=in.nextInt();
}
for(int j=0;j<a;j++){
int c=b[j]%2;
if (b[j]==0) {
System.out.println("CERO");
}
else if (c==0) {
if (b[j]<0){
System.out.println("PAR NEGATIVO");
}
else{
System.out.println("PAR POSITIVO");
}
}
else{ Figura 2.5
if (b[j]<0) {
System.out.println("IMPAR NEGATIVO");
}
else{
System.out.println("IMPAR POSITIVO");
}
}
}
}
}
El resultado se puede apreciar en la figura 2.5
Divisores
Descripcion
En este problema buscamos los divisores de cualquier numero en este caso solo se pueden ingresar
de 1 a 10 numero pero cualquier numero para saber el divisor o divisores.
Entrada
Un numero indicando cuantos números se van a ingresar y los números
Salida
El numero ingresado más los divisores del mismo
Ejemplo
Entrada Salida Descripcion
3 4
13 4
4 1
2 4
13 1
13
4 1 2
4
Caso 1
Solucion
import java.util.*;
public class divisores{
public static void main(String[] args) {
Scanner in=new Scanner (System.in);
int a=in.nextInt();
int c[]=new int [a];
for (int i=0;i<a ;i++ ) {
c[i]=in.nextInt();
int cx=c[i];
int d[]=new int [cx];
for (int k=0;k<cx ;k++ ) {
int ax=k+1;
d[k]=c[i]%ax;
if (d[k]==0) {
System.out.println(" "+ax);
}
Figura 2.6
}
}
}
}
El resultado se puede apreciar en la figura 2.6