Faça um algoritmo que leia a idade de uma pessoa expressa em anos, meses e dias e mostre-a expressa em dias. Leve em consideração o ano com 365 dias e o mês com 30. (Ex: 3 anos, 2 meses e 15 dias = 1170 dias.)

ESTÁ CERTO O PROGRMAR?

package Curso;

import java.util.Locale;
import java.util.Scanner;
public class Aula_01 {

public static void main(String[] args) {
	Locale.setDefault(Locale.US);
Scanner input = new Scanner(System.in);

double idade = Input.nexDouble;
double anos = 365*idade;
double mes = 12;
System.out.println(" Idade " + idade);
System.out.println(" Mês " + mes * idade);
System.out.println(" Dias " + anos);
}

}

Creio que a sua dúvida seja quanto aos cálculos:

365 dias * idade em anos = idade em dias (idadeDias)
idadeDias / 30 = idade em meses (idadeMes)

Exemplo: 19 anos = 6.935 dias = 231,17 meses (aproximadamente). No entanto, como pede em dias, faça:

1 - Converta os anos (multiplique por 365, já que um ano tem 365 dias);
2 - Converta os meses em dias (multiplique por 30, já que 1 mês tem 30 dias).

Do exemplo:

1 -> 3 * 365 = 1.095 dias;
2 -> 2 * 30 = 60 dias

Total = 1.095 + 60 + 15 = 1.170 dias.

Observação: se a idade é um valor inteiro, porque ler em double? Como se trata de idade, você, até mesmo, pode ler em short que é menor que int.

Exemplo:

import java.util.Scanner;

public class IdadeDiaMesAno {
	public static void main(String[] args){
		final short DIAS_NO_ANO = 365;
		final short DIAS_NO_MES = 30;
		short dias;
		short meses;
		short anos;
		Scanner leitor = new Scanner(System.in);
		
		System.out.println("Informe a sua idade.");
		System.out.print("Anos: ");
		anos = leitor.nextShort();
		
		System.out.print("Meses: ");
		meses = leitor.nextShort();
		
		System.out.print("Dias: ");
		dias = leitor.nextShort();
		
		dias += (anos * DIAS_NO_ANO) + (meses * DIAS_NO_MES);
		
		System.out.println("\n\nA sua idade em dias é " + dias);
	}
}

Rodando…

image