-
Lenguaje
Java
-
Descripción
Pide el año, mes y día de nacimiento y calcula la edad con meses y días cumplidos
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
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
import java.util.Calendar;
import java.util.Scanner;
public class Edad {
public static void main(String[] args) {
int anno, mes, dia, annos, meses, dias, tm_year, tm_mon, tm_mday;
int[] dias_del_mes = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
Calendar hoy = Calendar.getInstance();
tm_year = hoy.get(Calendar.YEAR);
tm_mon = hoy.get(Calendar.MONTH) + 1;
tm_mday = hoy.get(Calendar.DAY_OF_MONTH);
Scanner in = new Scanner(System.in);
System.out.printf ("Fecha actual: %04d/%02d/%02d\n\n", tm_year, tm_mon, tm_mday);
do {
System.out.print("Ingrese el a\244o de nacimiento: ");
anno = in.nextInt();
if (anno < 1900 || anno > tm_year)
System.out.println("A\244o incorrecto.");
} while (anno < 1900 || anno > tm_year);
do {
System.out.print("Ingrese el mes de nacimiento: ");
mes = in.nextInt();
if (mes < 1 || mes > 12)
System.out.println("Mes incorrecto.");
} while (mes < 1 || mes > 12);
do {
System.out.print("Ingrese el d\241a de nacimiento: ");
dia = in.nextInt();
if (dia < 1 || dia > dias_del_mes[mes])
System.out.println("D\241a incorrecto.");
} while (dia < 1 || dia > dias_del_mes[mes]);
annos = tm_year - anno;
meses = tm_mon - mes;
dias = tm_mday - dia;
if (dias < 0) {
dias += dias_del_mes[tm_mon];
meses--;
}
if (meses < 0) {
meses += 12;
annos--;
}
System.out.println();
System.out.println("A\244os : " + annos);
System.out.println("Meses: " + meses);
System.out.println("D\241as : " + dias);
System.out.println();
}
}
import java.util.Scanner;
public class Edad {
public static void main(String[] args) {
int anno, mes, dia, annos, meses, dias, tm_year, tm_mon, tm_mday;
int[] dias_del_mes = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
Calendar hoy = Calendar.getInstance();
tm_year = hoy.get(Calendar.YEAR);
tm_mon = hoy.get(Calendar.MONTH) + 1;
tm_mday = hoy.get(Calendar.DAY_OF_MONTH);
Scanner in = new Scanner(System.in);
System.out.printf ("Fecha actual: %04d/%02d/%02d\n\n", tm_year, tm_mon, tm_mday);
do {
System.out.print("Ingrese el a\244o de nacimiento: ");
anno = in.nextInt();
if (anno < 1900 || anno > tm_year)
System.out.println("A\244o incorrecto.");
} while (anno < 1900 || anno > tm_year);
do {
System.out.print("Ingrese el mes de nacimiento: ");
mes = in.nextInt();
if (mes < 1 || mes > 12)
System.out.println("Mes incorrecto.");
} while (mes < 1 || mes > 12);
do {
System.out.print("Ingrese el d\241a de nacimiento: ");
dia = in.nextInt();
if (dia < 1 || dia > dias_del_mes[mes])
System.out.println("D\241a incorrecto.");
} while (dia < 1 || dia > dias_del_mes[mes]);
annos = tm_year - anno;
meses = tm_mon - mes;
dias = tm_mday - dia;
if (dias < 0) {
dias += dias_del_mes[tm_mon];
meses--;
}
if (meses < 0) {
meses += 12;
annos--;
}
System.out.println();
System.out.println("A\244os : " + annos);
System.out.println("Meses: " + meses);
System.out.println("D\241as : " + dias);
System.out.println();
}
}