Witam
Jestem początkujący i proszę o pomoc z moim programem bo siedzę nad tym błędem i pomysły mi się skończyły może ktoś zna odpowiedz z góry dziękuje za każdą pomoc
double FBiorytm(double fDni, Biorytmy rodzaj )
{
return (100 * Math.sin((2 * Math.PI / rodzaj) * fDni));
}
The operator / is undefined for the argument type(s) double, biorytmConsola.Biorytmy - może przyczyna leży w typie wyliczeniowym
Kod programu:
**
**
import java.util.Calendar;
import java.math.*;
import javax.swing.*;
import javax.xml.crypto.Data;
import java.util.Date;
import java.util.GregorianCalendar;
public class biorytmConsola {
//final double PI = 3.1415926538;
public enum Biorytmy {
BIOF (23),
BIOE (28),
BIOI (33);
private final int typbiorytmu; //rodzaj biorytmu
Biorytmy(int typbiorytmu){
this.typbiorytmu = typbiorytmu;
}
private int getTypBiorytmu(){
return typbiorytmu;
}
}
//private static final double PI = 3.1415926538;
double FBiorytm(double fDni, Biorytmy rodzaj )
{
return (100 * Math.sin((2 * Math.PI / rodzaj) * fDni));
}
/**
* @param args
*/
public static void main(String[] args) {
Biorytmy m = Biorytmy.BIOE;
GregorianCalendar DataUrodzenia = new GregorianCalendar();
GregorianCalendar AktualnyCzas = new GregorianCalendar();
GregorianCalendar RoznicaCzasu = new GregorianCalendar();
// aktualna data
int adzien = AktualnyCzas.get(Calendar.DAY_OF_MONTH);
int amiesiac = AktualnyCzas.get(Calendar.MONTH);
int arok = AktualnyCzas.get(Calendar.YEAR);
//pobieranie daty urodzenia
String wejscie = JOptionPane.showInputDialog("Podaj rok urodzenia");
int prok = Integer.parseInt(wejscie);
prok -= 1900;
wejscie = JOptionPane.showInputDialog("Podaj miesiac urodzenia");
int pmiesiac = Integer.parseInt(wejscie);
wejscie = JOptionPane.showInputDialog("Podaj dzien urodzenia");
int pdzien = Integer.parseInt(wejscie);
//oblicznie roznicy w dacie urodzenia
int rdzien;
rdzien = adzien - pdzien;
RoznicaCzasu.set(Calendar.DAY_OF_MONTH,rdzien);
int rmiesiac;
rmiesiac = amiesiac - pmiesiac;
RoznicaCzasu.set(Calendar.MONTH, rmiesiac);
int rrok;
rrok = arok - prok;
RoznicaCzasu.set(Calendar.YEAR, rrok);
//obliczanie ile dni uplynelo od narodzin
//przy wykorzystaniu sredniej dni dla miesiaca i roku nie trzeba uwzgledniac lat przestepnych
double PrzezyteDni = rrok * 365.25 + rmiesiac * 30.4375 + rdzien;
//Wyswietlenie biorytmow dla danej osoby
System.out.println("Biorytm fizyczny: " + FBiorytm(PrzezyteDni,m.getTypBiorytmu()));
System.out.println("Biorytm emocjonalny: " + FBiorytm(PrzezyteDni,m.getTypBiorytmu()));
System.out.println("Biorytm intelektualny: " + FBiorytm(PrzezyteDni,m.getTypBiorytmu()));
}**
**
Problem występuje również z wyświetleniem biorytmu gdyż funkcja FBiorytm zwraca błąd przy wywołaniu jej z tymi parametrami
FBiorytm(PrzezyteDni,m.getTypBiorytmu())
Dziękuje za pomoc