Viernes 8 de Noviembre de 2024, 09:36
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Java
(Moderador:
arielb
) »
Identificar el Problema
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Identificar el Problema (Leído 856 veces)
Zyteck
Nuevo Miembro
Mensajes: 2
Identificar el Problema
«
en:
Miércoles 29 de Septiembre de 2010, 18:36 »
0
Que tal pues tengo un problema con un codigo pero donde este el problema, el problema es que en el metodo de resultados imprime que el arreglo no tiene datos y no se porque. salu2
Código: Java
import
java.util.*
;
import
java.io.*
;
public
class
ArregloADPlus
{
double
AAD
[
]
=
new
double
[
30
]
;
double
copiaAAD
[
]
=
new
double
[
30
]
;
double
resp, temp2
;
int
modo, MDC, c1
=
0
;
String
temp
=
""
;
Scanner tecla
=
new
Scanner
(
System
.
in
)
;
BufferedReader
entrada
=
new
BufferedReader
(
new
InputStreamReader
(
System
.
in
)
)
;
public
static
final
String
CENTINELA
=
"fin"
;
void
inicio
(
)
{
System
.
out
.
println
(
"Arreglo para ordenar ascendente o descendentemente los valores ingresados"
)
;
}
void
menu
(
)
{
ArregloADPlus AADP
=
new
ArregloADPlus
(
)
;
System
.
out
.
println
(
"Ingrese 1 para modo ascendente o 2 para modo descendente"
)
;
modo
=
tecla.
nextInt
(
)
;
if
(
modo
!=
1
&&
modo
!=
2
)
{
System
.
out
.
println
(
"Ingrese 1 o 2"
)
;
AADP.
menu
(
)
;
}
System
.
out
.
println
(
"Ingrese como desea introducir los valores"
)
;
System
.
out
.
println
(
" 1)Lectura Por teclado n 2)Por Omisionn 3)Lectura De Archivon 4)Aleatorion"
)
;
MDC
=
tecla.
nextInt
(
)
;
}
void
modoCaptura
(
)
throws
IOException
{
ArregloADPlus AADP
=
new
ArregloADPlus
(
)
;
switch
(
MDC
)
{
case
1
:
AADP.
teclado
(
)
;
break
;
case
2
:
AADP.
omision
(
)
;
break
;
case
3
:
AADP.
archivo
(
)
;
break
;
case
4
:
AADP.
aleatorio
(
)
;
break
;
default
:
{
if
(
MDC
<
0
||
MDC
>
4
)
System
.
out
.
print
(
"ingrese un valor de 1 al 4n"
)
;
}
}
}
void
teclado
(
)
throws
IOException
{
System
.
out
.
println
(
"Ingrese un valor o "
fin
" para terminar"
)
;
System
.
out
.
flush
(
)
;
temp
=
entrada.
readLine
(
)
;
while
(
!
temp.
equals
(
CENTINELA
)
)
{
resp
=
Double
.
parseDouble
(
temp
)
;
AAD
[
c1
++
]
=
resp
;
System
.
out
.
println
(
"Ingrese una valor o "
fin
" para terminar"
)
;
System
.
out
.
flush
(
)
;
temp
=
entrada.
readLine
(
)
;
}
System
.
arraycopy
(
AAD,
0
,copiaAAD,
0
,AAD.
length
)
;
}
void
omision
(
)
{
double
AAD1
[
]
=
{
-
26.4
,
12.6
,
15
,
24
,
78.91
,.369,
74
,
14
,.1248,
7845
,
6941
,
1.257425
,
100
,
964
,
-
1.36
,
15485
,
1000
,
7895
,.137,
-
9784
,
4597
,
12
,
64
,
7461
,.100,
3.14
,
79.01
,
963.12
,
20
,
457.1
}
;
System
.
arraycopy
(
AAD1,
0
,AAD,
0
,AAD1.
length
)
;
System
.
arraycopy
(
AAD1,
0
,copiaAAD,
0
,AAD1.
length
)
;
}
double
archivo
(
)
{
String
s, file
;
int
i
=
0
;
Scanner sc
=
new
Scanner
(
System
.
in
)
;
System
.
out
.
print
(
"Ingrese la ruta del archivo:"
)
;
file
=
sc.
nextLine
(
)
;
System
.
out
.
println
(
"Leyendo del archivo:"
+
file
)
;
System
.
out
.
print
(
"n"
)
;
if
(
!
file.
equals
(
""
)
)
{
try
{
Scanner in
=
new
Scanner
(
new
File
(
file
)
)
;
while
(
in.
hasNextLine
(
)
)
{
s
=
in.
nextLine
(
)
;
AAD
[
i
++
]
=
Double
.
parseDouble
(
s
)
;
System
.
out
.
print
(
", "
+
AAD
[
i
-
1
]
)
;
}
System
.
arraycopy
(
AAD,
0
,copiaAAD,
0
,AAD.
length
)
;
in.
close
(
)
;
}
catch
(
IOException
e
)
{
e.
printStackTrace
(
)
;
}
}
else
System
.
out
.
println
(
"no se pudo abrir el archivo"
+
file
)
;
return
i
;
}
void
aleatorio
(
)
{
for
(
int
c3
=
0
;
c3
<
AAD.
length
;
c3
++
)
{
int
tmp
=
Math
.
round
(
(
float
)
Math
.
random
(
)
*
1000
%
37767
)
;
AAD
[
c3
]
=
(
double
)
tmp
;
}
System
.
arraycopy
(
AAD,
0
,copiaAAD,
0
,AAD.
length
)
;
}
void
calcula
(
)
{
if
(
modo
==
1
)
{
Arrays
.
sort
(
AAD
)
;
}
else
{
Arrays
.
sort
(
AAD
)
;
int
i,j
;
for
(
i
=
0
,j
=
AAD.
length
-
1
;
i
<
AAD.
length
/
2
;
i
++
,j
--
)
{
temp2
=
AAD
[
i
]
;
AAD
[
i
]
=
AAD
[
j
]
;
AAD
[
j
]
=
temp2
;
}
}
}
void
resultados
(
)
{
System
.
out
.
println
(
"nnLos valores ingresados son:"
)
;
for
(
int
c5
=
0
;
c5
<
AAD.
length
;
c5
++
)
{
System
.
out
.
print
(
copiaAAD
[
c5
]
+
", "
)
;
}
System
.
out
.
println
(
"nnLos valores ingresados ordenados son:"
)
;
for
(
int
c5
=
0
;
c5
<
AAD.
length
;
c5
++
)
{
System
.
out
.
print
(
AAD
[
c5
]
+
", "
)
;
}
}
public
static
void
main
(
String
args
[
]
)
throws
IOException
{
ArregloADPlus AADP
=
new
ArregloADPlus
(
)
;
int
r
=
'S'
;
AADP.
inicio
(
)
;
while
(
r
==
's'
||
r
==
'S'
)
{
AADP.
menu
(
)
;
AADP.
modoCaptura
(
)
;
AADP.
calcula
(
)
;
AADP.
resultados
(
)
;
System
.
out
.
println
(
"nnDesea Ordenar otros elementos s/n"
)
;
r
=
System
.
in
.
read
(
)
;
System
.
in
.
skip
(
2
)
;
}
}
}
gracias de antemano
Tweet
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Java
(Moderador:
arielb
) »
Identificar el Problema