Hej wszystkim
Bardzo proszę Was o pomoc. Proszę o sprawdzenie mojego kodu i podpowiedź jak to dokończyć.
Mianowicie założenia są takie aby program, na podstawie danych o dacie narodzin, płci i kondycji, wyświetlał szacowaną ilosc uderzeń serca człowieka od momentu urodzenia do chwili obecnej. Niezbędne informacje, takie jak średnia ilość bicia serca biorę z wikipedii (wpisuję tętno).
Granice faz życia przed dorosłością przyjęłam jako stałe.
Moim problemem jest tablica ( przedstawiająca ilość uderzeń serca) na końcu mojego kodu, nie wiem jak 'podpiąć' ją z kondycją oraz przedziałem życia dorosłego.
Wiem, że kod jest prymitywny i wstydzę się go trochę, ponieważ wiem, że można to lepiej napisać ale jest to mój pierwszy kod po 'Hello World' bardzo proszę o cierpliwość i wyrozumiałość!
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class AgeCalc {
public static void main(String[] args)throws Exception
{
// read inputs
Scanner sc = new Scanner(System.in);
System.out.println("Enter your date of birth DD-MM-YYYY: ");
String dob=sc.next();
//convert String date value to java.until.Date class obj
SimpleDateFormat sdf1=new SimpleDateFormat("dd-mm-yyyy");
Date udob=sdf1.parse(dob);
//get system date
Date sysdate=new Date();
//calculate age
long milis=System.currentTimeMillis()-udob.getTime();
long secLife = milis/1000;
long minLife = secLife/60;
double years = minLife / 365.2425 / 24 / 60;
System.out.println("You lived: " +secLife + " seconds and " + minLife + " minutes. You are " + years + " years old");
final double embryo ; // 365/12 = 30,417, 9 months
embryo = (30.417 * 9 * 24 * 60) * ((110+150)/2) ;
final int baby; // 0-2 years
baby = (int) (embryo + (365 * 2 * 24 * 60));
final int child; //2-12 years
child = baby + (365 * 11 * 24 * 60 );
final int teenager; //13-17 years
teenager = child + (365 * 5 * 24 * 60);
sc.nextLine();
int period;
int periodOfLife;
{
if(years>65)
{
period = 6;
}
else if(years>=56 && years<=65)
{
period = 5;
}
else if(years>=46 && years<=55)
{
period = 4;
}
else if(years>=36 && years<=45)
{
period = 3;
}else if(years>=26 && years<=35)
{
period = 2;
}
else if(years>=18 && years<=25)
{
period = 1;
}
// return; - don't know if I need this
}
System.out.print("If you are a woman type letter 'w', If you are a man type letter 'm': ");
String sex=sc.next();
boolean w = true;
if (w) {
System.out.print("Your contition is: 1 - performance, 2 - perfect, 3 - good, 4 - above average, 5 - average, 6 - poor, 7 - bad: " );
int condition = sc.nextInt(); }
else {
System.out.print("Your contition is: 1 - performance, 2 - perfect, 3 - good, 4 - above average, 5 - average, 6 - poor, 7 - bad: " );
int condition = sc.nextInt();
}
class arrays
{
int[][] men = {{55,54,56,57,56,55}, // int[row][col]
{61,61,62,63,61,61},
{65,65,66,67,67,65},
{69,70,70,71,71,69},
{73,74,75,76,75,73},
{81,81,82,83,81,79},
{83,83,84,85,83,81}};
int[][] women = {{60,59,59,60,59,59},
{65,64,64,65,64,64},
{69,68,69,69,68,68},
{73,72,73,73,73,72},
{78,76,78,77,77,76},
{84,82,84,83,83,84},
{86,84,86,85,85,85}};
}
}
}