Advertisement
Guest User

Untitled

a guest
Feb 19th, 2019
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.84 KB | None | 0 0
  1. /*
  2. * To change this license header, choose License Headers in Project Properties.
  3. * To change this template file, choose Tools | Templates
  4. * and open the template in the editor.
  5. */
  6. package metingapp;
  7.  
  8. import java.time.LocalDate;
  9. /**
  10. *
  11. * @author aaron.lison
  12. */
  13. public class Meting {
  14. private final String NAAM;
  15. private final int JAAR;
  16. private double[][] meetwaarden = new double[12][];
  17. private String[] maanden = {"JAN", "FEB", "MAA", "APR", "MEI", "JUN", "JUL", "AUG", "SEP", "OKT", "NOV", "DEC"};
  18. private int dagHoogsteTemp;
  19. private int dagLaagsteTemp;
  20.  
  21. public Meting(String naam, int jaar){
  22. this.JAAR = jaar;
  23. this.NAAM = naam;
  24. }
  25.  
  26. public void zetWaardenVoorMaand(int maand, double[] tempWaarden){
  27. meetwaarden[maand] = tempWaarden;
  28.  
  29. }
  30.  
  31. public String geefOverzichtWaarden(){
  32. String overzicht = "OVERZICHT VAN MEETWAARDEN" + "\n";
  33. char[] chJaar = Integer.toString(JAAR).toCharArray();
  34. for (int i = 0 ; i < 12 ; i++){
  35. overzicht += maanden[i] + "'" + chJaar[2] + chJaar[3];
  36. for (int j = 0 ; j < meetwaarden[i].length; j++){
  37. overzicht += "\t" + Double.toString(meetwaarden[i][j]);
  38. }
  39. overzicht += "\n";
  40. }
  41. return overzicht;
  42. }
  43.  
  44. public String geefAnalyse(){
  45. String analyse = "maand" + "\t" + "minimum" + "\t" + "maximum" + "\t" + "gemiddelde" + "\n";
  46. analyse += "______" + "\t" + "______" + "\t" + "______" + "\t" + "__________" + "\n";
  47. char[] chJaar = Integer.toString(JAAR).toCharArray();
  48. for (int i = 0; i < 12; i++){
  49. analyse += maanden[i] + "'" + chJaar[2] + chJaar[3] + "\t" + zoekMin(meetwaarden[i]) + "\t" + zoekMax(meetwaarden[i]) + "\t" + zoekGem(meetwaarden[i]) + "\n";
  50. }
  51. return analyse;
  52. }
  53.  
  54. public double geefWaardeHoogsteMeting(){
  55. double max = 0;
  56. for (int i = 0; i < 12; i++ ){
  57. if (max < zoekMax(meetwaarden[i])){
  58. max = zoekMax(meetwaarden[i]);
  59. }
  60. }
  61. return max;
  62. }
  63.  
  64. public double geefWaardeLaagsteMeting(){
  65. double min = 0;
  66. for (int i = 0; i < 12; i++ ){
  67. if (min > zoekMin(meetwaarden[i])){
  68. min = zoekMin(meetwaarden[i]);
  69. }
  70. }
  71. return min;
  72. }
  73.  
  74. public LocalDate geefDatumHoogsteMeting(){
  75. double max = 0;
  76. int maand = 0;
  77. int dag = 0;
  78. int jaar = JAAR;
  79. for (int i = 0; i < 12; i++){
  80. if (max < zoekMax(meetwaarden[i])){
  81. max = zoekMax(meetwaarden[i]);
  82. maand = i + 1 ;
  83. }
  84. }
  85.  
  86. for (int j = 0; j < meetwaarden[maand-1].length ; j++ ){
  87. if (max == meetwaarden[maand-1][j]){
  88. dag = j + 1;
  89. }
  90. }
  91.  
  92. return LocalDate.of( jaar , maand , dag );
  93. }
  94.  
  95. public LocalDate geefDatumLaagsteMeting(){
  96. double min = 0;
  97. int maand = 0;
  98. int dag = 0;
  99. int jaar = JAAR;
  100. for (int i = 0; i < 12; i++){
  101. if (min > zoekMin(meetwaarden[i])){
  102. min = zoekMin(meetwaarden[i]);
  103. maand = i + 1;
  104. }
  105. for (int j = 0; j < meetwaarden[i].length; j++ ){
  106. if (min == meetwaarden[i][j]){
  107. dag = 0;
  108. dag = j + 1;
  109. }
  110. }
  111. }
  112. return LocalDate.of( jaar , maand, dag );
  113. }
  114.  
  115.  
  116. public double geefWaardeHoogsteMaandgemiddelde(){
  117. double[] temp = new double[12];
  118. for (int i = 0; i < 12; i++){
  119. temp[i] = zoekGem(meetwaarden[i]);
  120. }
  121. return zoekMax(temp);
  122. }
  123.  
  124. public double geefWaardeLaagsteMaandgemiddelde(){
  125. double[] temp = new double[12];
  126. for (int i = 0; i < 12; i++){
  127. temp[i] = zoekGem(meetwaarden[i]);
  128. }
  129. return zoekMin(temp);
  130. }
  131.  
  132. public String geefMaandHoogsteMaandgemiddelde(){
  133. double[] temp = new double[12];
  134. int maand = 0;
  135. char[] chJaar = Integer.toString(JAAR).toCharArray();
  136. for (int i = 0; i < 12; i++){
  137. temp[i] = zoekGem(meetwaarden[i]);
  138. }
  139. double max = zoekMax(temp);
  140.  
  141. for (int i = 0; i < 12; i++){
  142. if ( max == temp[i] ){
  143. maand = i;
  144. }
  145. }
  146. return maanden[maand] + "'" + chJaar[2] + chJaar[3];
  147. }
  148. public String geefMaandLaagsteMaandgemiddelde(){
  149. double[] temp = new double[12];
  150. int maand = 0;
  151. char[] chJaar = Integer.toString(JAAR).toCharArray();
  152. for (int i = 0; i < 12; i++){
  153. temp[i] = zoekGem(meetwaarden[i]);
  154. }
  155. double min = zoekMin(temp);
  156.  
  157. for (int i = 0; i < 12; i++){
  158. if ( min == temp[i] ){
  159. maand = i;
  160. }
  161. }
  162. return maanden[maand] + "'" + chJaar[2] + chJaar[3];
  163. }
  164.  
  165. public double zoekMin(double[] rij) {
  166. double temp;
  167. double min = 100;
  168. for (int i = 0; i < rij.length; i++) {
  169. if (rij[i] < min) {
  170. min = rij[i];
  171. }
  172. }
  173. return min;
  174. }
  175.  
  176.  
  177. public double zoekMax(double[] rij) {
  178. double max = 0;
  179. for (int i = 0; i < rij.length; i++) {
  180. if (rij[i] > max) {
  181. max = rij[i];
  182. }
  183. }
  184. return max;
  185.  
  186. }
  187.  
  188. public double zoekGem(double[] rij) {
  189. double gem = 0;
  190. for (int i = 0; i < rij.length; i++) {
  191. gem += rij[i];
  192. }
  193.  
  194. gem = (double) Math.round((gem / rij.length) * 10) / 10;
  195. return gem;
  196. }
  197.  
  198. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement