Lektion 8: lösningsförslag

  1. // 1
  2. class Person1
  3. {
  4. public string FirstName;
  5. public string LastName;
  6. public int Age;
  7. public string Summary()
  8. {
  9. return FirstName + " " + LastName + " är " + Age + " år gammal.";
  10. }
  11. }
  12. // 2
  13. class Person2
  14. {
  15. public int Age;
  16. public string Country;
  17. public int Elected;
  18. public bool CanBePresident()
  19. {
  20. return Age >= 35 && Country == "USA" && Elected <= 1;
  21. }
  22. }
  23. // 3
  24. class Person3
  25. {
  26. public string Gender;
  27. public int Age;
  28. public bool Married;
  29. public int Children;
  30. public string Car;
  31. public string Summary()
  32. {
  33. string summary = Gender + ", " + Age;
  34. if (Married)
  35. {
  36. summary += ", gift";
  37. }
  38. else
  39. {
  40. summary += ", ogift";
  41. }
  42. if (Children > 0)
  43. {
  44. summary += ", " + Children + " barn";
  45. }
  46. if (Car != null)
  47. {
  48. summary += ", reg " + Car;
  49. }
  50. return summary;
  51. }
  52. }
  53. // 4
  54. class Company
  55. {
  56. public string Name;
  57. public string Headquarters;
  58. public int Age;
  59. public Company MergeWith(Company other)
  60. {
  61. return new Company
  62. {
  63. Name = Name + "-" + other.Name,
  64. Headquarters = Headquarters,
  65. Age = 0
  66. };
  67. }
  68. }
  69. // 5
  70. class Home
  71. {
  72. public double Temperature;
  73. public double Volume;
  74. public bool IsWarm()
  75. {
  76. return Temperature >= 18 && Temperature <= 26;
  77. }
  78. public bool IsQuiet()
  79. {
  80. return Volume <= 45;
  81. }
  82. public bool IsHabitable()
  83. {
  84. return IsWarm() && IsQuiet();
  85. }
  86. }
  87. // 6
  88. class Person4
  89. {
  90. public string FirstName;
  91. public string LastName;
  92. public int Age;
  93. public double Income;
  94. public string FullName()
  95. {
  96. return FirstName + " " + LastName;
  97. }
  98. public bool CanMarry()
  99. {
  100. return Age >= 18;
  101. }
  102. public double FederalIncomeTaxRate()
  103. {
  104. if (Income <= 438900)
  105. {
  106. return 0;
  107. }
  108. else if (Income <= 638500)
  109. {
  110. return 0.2;
  111. }
  112. else
  113. {
  114. return 0.25;
  115. }
  116. }
  117. }
  118. // 7
  119. class Person5
  120. {
  121. public string Name;
  122. public int Age;
  123. public double Wealth;
  124. public double Salary;
  125. public void PaySalary()
  126. {
  127. Wealth += Salary;
  128. }
  129. public void WinLottery()
  130. {
  131. Wealth += 10000;
  132. }
  133. public void CelebrateBirthday()
  134. {
  135. Age += 1;
  136. Wealth += 500;
  137. }
  138. public void ShowPerson()
  139. {
  140. Console.WriteLine(Age + "-åriga " + Name + " har en lön på " + Salary + " kronor och " + Wealth + " kronor på banken.");
  141. }
  142. }