Metodo en java
Publicado por Megumi (1 intervención) el 03/04/2016 04:04:59
Hola, estoy compilando una clase en netbeans que trabaje con racionales pero al momento de querer correrlo sale el mensaje "does no have a main metod" ¿qué necesito agregar?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
class racional {
// ******************* atributos ***********************
private int num; // numerador
private int den; // denominador
// ********** Métodos privados de la clase *************
// método para calcular el máximo común divisor de dos
// números enteros positivos. Algoritmo de Euclides
private int mcd(int a, int b) {
int r;
while (a % b != 0) {
r = a % b;
a = b;
b = r;
}
return b;
}
// método privado para simplificar una fracción que
// represente un racional.
// Por ejemplo: 60/-18 --simplifica--> -10/3
// num != 0 && den != 0
private void simplifica() {
// es inf?
if (den==0 && num !=0) num=1;
// es 0?
else if (den!=0 && num==0) den=1;
// es una fracción? -> normalizarla
else if (num!=0 && den!=0) {
// valores absolutos:
int absNum = Math.abs(num);
int absDen = Math.abs(den);
// signo del denominador:
int signo = den/absDen;
int s = mcd(absNum,absDen);
num = signo*(num/s);
den = signo*(den/s);
}
}
//
// *********** Constructores de la clase *************
public racional (int num, int den) {
this.num = num;
this.den = den;
// simplificación de la fracción
simplifica();
}
public racional (int num) {
this.num = num;
this.den = 1;
}
// *********** Operaciones aritméticas *************
//
// Para mantener las convenciones aritméticas habituales
// se han definido como operaciones "static"
//
public static racional suma (racional r1, racional r2) {
racional sum = new racional(r1.num*r2.den+r1.den*r2.num,
r1.den*r2.den);
sum.simplifica();
return sum;
}
public static racional resta (racional r1, racional r2) {
racional dif = new racional(r1.num*r2.den-r1.den*r2.num,
r1.den*r2.den);
dif.simplifica();
return dif;
}
public static racional multiplica (racional a, racional b) {
racional mult = new racional(a.num*b.num, a.den*b.den);
mult.simplifica();
return mult;
}
public static racional inverso (racional a) {
return new racional(a.den,a.num);
}
public static racional dividir (racional dn, racional dd) {
return multiplica(dn, inverso(dd));
}
// *************** Otras operaciones *****************
// conversión a double:
// this.den != 0
public double todouble () {
return num/den;
}
public String toString() {
return this.num+"/"+this.den;
}
public boolean equals (racional r) {
return (num==r.num && den==r.den);
}
public int compareTo (racional r) {
if (this.equals(r)) return 0;
else
// supongamos que no es una indeterminación,
// esto es num y den no son simultáneamente 0
if (den == 0) return 1;
else if (r.den==0) return -1;
else // comparar números double
if (this.todouble() > r.todouble()) return 1;
else return -1;
}
}
Valora esta pregunta


0