fork download
  1. class Curso {
  2. private String nome_curso, nivel_curso;
  3. private double mensalidade_curso;
  4.  
  5. public Curso(String nome_curso, String nivel_curso, double mensalidade_curso) {
  6. this.nome_curso = nome_curso;
  7. this.nivel_curso = nivel_curso;
  8. this.mensalidade_curso = mensalidade_curso;
  9. }
  10.  
  11. public String getDados() {
  12. return "Curso: " + this.nivel_curso + " em " + this.nome_curso + "\n";
  13. }
  14.  
  15. public double getMensalidade() {
  16. return mensalidade_curso;
  17. }
  18. }
  19.  
  20. class Aluno {
  21. private String nome;
  22. private int cod_matricula;
  23. private boolean eh_bolsista;
  24. private double desconto;
  25. private Curso curso;
  26.  
  27. public Aluno(String nome,
  28. Curso curso,
  29. int cod_matricula,
  30. boolean eh_bolsista,
  31. double desconto) {
  32. this.nome = nome;
  33. this.curso = curso;
  34. this.cod_matricula = cod_matricula;
  35. this.eh_bolsista = eh_bolsista;
  36. this.desconto = desconto;
  37. }
  38.  
  39. public String getMensalidadeFinal() {
  40. String resp = "";
  41. if (eh_bolsista) {
  42. resp += "Bolsista com desconto de: " + this.desconto + "%\n";
  43. resp += "Mensalidade: R$ " + curso.getMensalidade() * (1 - this.desconto / 100);
  44. } else {
  45. resp += "Mensalidade: R$ " + curso.getMensalidade();
  46. }
  47. return resp;
  48. }
  49.  
  50. public String getDados() {
  51. String resp = "Aluno: " + this.nome + "\n";
  52. resp += curso.getDados();
  53. resp += getMensalidadeFinal();
  54. return resp;
  55. }
  56. }
  57.  
  58. class Teste {
  59. public static void main(String[] args) {
  60. Aluno a1 = new Aluno("Martin Fowler",
  61. new Curso("ADS", "Graduação", 920.50),
  62. 11223344,
  63. true,
  64. 20.5);
  65.  
  66. Aluno a2 = new Aluno("Kent Beck",
  67. new Curso("Computação Aplicada", "Mestrado", 2150.25),
  68. 22334455,
  69. false,
  70. 0);
  71.  
  72. System.out.println(a1.getDados());
  73. System.out.println(a2.getDados());
  74. }
  75. }
  76.  
Success #stdin #stdout 0.23s 61192KB
stdin
Standard input is empty
stdout
Aluno: Martin Fowler
Curso: Graduação em ADS
Bolsista com desconto de: 20.5%
Mensalidade: R$ 731.7975
Aluno: Kent Beck
Curso: Mestrado em Computação Aplicada
Mensalidade: R$ 2150.25