Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2013
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.21 KB | None | 0 0
  1. "java.util.NoSuchElementException"
  2.  
  3. import java.util.*;
  4. import java.util.StringTokenizer;
  5. import java.io.*;
  6. import javax.swing.*;
  7. import java.text.DecimalFormat;
  8.  
  9.  
  10. class Grade
  11. {
  12. public static void main(String [] args)throws IOException
  13.  
  14. {
  15. //declaring
  16. String line = "";
  17. StringTokenizer st;
  18. String delim = " tnr,-";
  19. String token;
  20. String firstname;
  21. String lastname;
  22. String grade;
  23. String S69andbelow="Students with 69 or belown";
  24. String S70to79 ="Students with 70 to 79n";
  25. String S80to89= "Students with 80 to 89n";
  26. String S90to100= "Students with 90 to 100n";
  27. int gradeint;
  28. double gradeavg = 0;
  29. int count = 0;
  30. File inputFile = new File("input.txt");
  31. File outputFile = new File("output.txt");
  32. FileInputStream finput = new FileInputStream(inputFile);
  33. FileOutputStream foutput = new FileOutputStream(outputFile);
  34.  
  35. FileReader reader = new FileReader(inputFile);
  36. BufferedReader in = new BufferedReader(reader);
  37.  
  38. Scanner std = new Scanner(new File("input.txt"));
  39.  
  40. Scanner scanner = new Scanner(inputFile);
  41.  
  42. BufferedWriter out = new BufferedWriter(new FileWriter(outputFile));
  43.  
  44. Scanner scan = new Scanner(S69andbelow);
  45. //reading linev
  46. line = scanner.nextLine();
  47.  
  48. st = new StringTokenizer(line, delim);
  49. //avoiding selected characters
  50. try
  51. {
  52. while(st.hasMoreTokens())
  53. {
  54.  
  55.  
  56.  
  57. firstname = st.nextToken(); //<----error started to happen
  58. lastname = st.nextToken(); //here
  59. grade = st.nextToken(); //and here
  60. //storing tokens into their properties
  61.  
  62. gradeint = Integer.parseInt(grade);
  63. //converting token to int
  64.  
  65. gradeavg = gradeavg + gradeint;
  66. //calculating avg
  67.  
  68. count++;
  69. //recording number of entries
  70.  
  71. if (gradeint <=69)
  72. {
  73. S69andbelow = S69andbelow + lastname + " "
  74. + firstname + " " + "t" + grade + "n";
  75. } // saving data by grades
  76.  
  77. else if (gradeint >= 70 && gradeint <= 79)
  78. {
  79. S70to79 = S70to79 + lastname + " " + firstname
  80. + " " + "t" + grade + "n";
  81. } // saving data by grades
  82.  
  83. else if (gradeint >= 80 && gradeint <=89)
  84. {
  85. S80to89 = S80to89 + lastname + " " + firstname
  86. + " " + "t" + grade + "n";
  87. } // saving data by grades
  88.  
  89. else
  90. {
  91. S90to100 = S90to100 + lastname + " " + firstname
  92. + " " + "t" + grade + "n";
  93. } // saving data by grades
  94.  
  95.  
  96. }//end while
  97.  
  98. System.out.println(S69andbelow + "n" + S70to79 + "n"
  99. + S80to89 + "n" + S90to100);
  100. //caterorizing the grades
  101.  
  102. gradeavg = gradeavg / count;
  103. //calculating average
  104.  
  105. DecimalFormat df = new DecimalFormat("#0.00");
  106.  
  107. out.write("The average grade is: "
  108. + df.format(gradeavg));
  109.  
  110.  
  111. System.out.println("The average grade is: "
  112. + df.format(gradeavg));
  113.  
  114.  
  115.  
  116. Writer output = null;
  117.  
  118. output = new BufferedWriter(new FileWriter(outputFile));
  119.  
  120. // scanner.nextLine(S69andbelow);
  121. //output.write(S69andbelow + "n" + S70to79 + "n"
  122. // + S80to89 + "n" + S90to100);
  123. // output.close();
  124.  
  125.  
  126. }
  127. catch( Exception e )
  128. {
  129. System.out.println(e.toString() );
  130. }
  131. // Close the stream
  132. try
  133. {
  134. if(std != null )
  135. std.close( );
  136.  
  137.  
  138. }
  139. catch( Exception e )
  140. {
  141. System.out.println(e.toString());
  142. }
  143.  
  144. }
  145. }
  146.  
  147. {
  148. //declaring
  149. String delim = " tnr,-";
  150. String token;
  151. String firstName;
  152. String lastName;
  153. String grade;
  154. String S69andbelow="Students with 69 or belown";
  155. String S70to79 ="Students with 70 to 79n";
  156. String S80to89= "Students with 80 to 89n";
  157. String S90to100= "Students with 90 to 100n";
  158. String all;
  159. int gradeint;
  160. double gradeavg = 0;
  161. int count = 0;
  162. int countTwo = 0;
  163. File inputFile = new File("input.txt");
  164. File outputFile = new File("output.txt");
  165. FileInputStream finput = new FileInputStream(inputFile);
  166. FileOutputStream foutput = new FileOutputStream(outputFile);
  167.  
  168. FileReader reader = new FileReader(inputFile);
  169. BufferedReader in = new BufferedReader(reader);
  170.  
  171. Scanner std = new Scanner(new File("input.txt"));
  172.  
  173. Scanner scanner = new Scanner(inputFile);
  174.  
  175. BufferedWriter out = new BufferedWriter(new FileWriter(outputFile));
  176.  
  177. Scanner scan = new Scanner(S69andbelow);
  178.  
  179. try
  180. {
  181. String line, newLine = (String)System.getProperty("line.separator");
  182. //seperating lines
  183. while((line = in.readLine()) != null){
  184. //Will only work if the file is properly formatted
  185. StringTokenizer st = new StringTokenizer(line, " ");
  186.  
  187. if (st.countTokens() == 3)
  188. {
  189. firstName = st.nextToken();
  190. lastName = st.nextToken();
  191. grade = st.nextToken();
  192. gradeint = Integer.parseInt(grade);
  193. //retrieving tokens
  194. gradeavg = gradeavg + gradeint;
  195. //formula for avg
  196. count++;
  197. //avg count
  198.  
  199. //organizing by grades
  200. if (gradeint <=69)
  201. {
  202. S69andbelow = S69andbelow + newLine+ lastName + " "
  203. + firstName + " " + "t" + grade + newLine;
  204. }
  205. else if (gradeint >= 70 && gradeint <= 79)
  206. {
  207. S70to79 = S70to79 +newLine+ lastName + " " + firstName
  208. + " " + "t" + grade + newLine;
  209. }
  210.  
  211. else if (gradeint >= 80 && gradeint <=89)
  212. {
  213. S80to89 = S80to89 + newLine+ lastName + " " + firstName
  214. + " " + "t" + grade + newLine;
  215. }
  216.  
  217. else
  218. {
  219. S90to100 = S90to100 + newLine+ lastName + " " + firstName
  220. + " " + "t" + grade + newLine;
  221. }
  222.  
  223. System.out.println(S69andbelow + "n" + S70to79 + "n"
  224. + S80to89 + "n" + S90to100);
  225. //caterorizing the grades
  226.  
  227. gradeavg = gradeavg / count;
  228. //calculating average
  229.  
  230. DecimalFormat df = new DecimalFormat("#0.00");
  231. //formating
  232.  
  233.  
  234.  
  235. System.out.println("The average grade is: "
  236. + df.format(gradeavg));
  237. //displaying
  238.  
  239.  
  240. Writer output = null;
  241.  
  242. output = new BufferedWriter(new FileWriter(outputFile));
  243. //make file
  244. output.write(newLine + S69andbelow + newLine + S70to79 + newLine
  245. + S80to89 + newLine + S90to100);
  246. output.write("The average grade is: "
  247. + df.format(gradeavg));
  248. //outputing to file
  249. output.close();
  250. //saving
  251.  
  252. }
  253. catch( Exception e )
  254. {
  255. System.out.println(e.toString());
  256. }
  257.  
  258. String line, newLine = (String)System.getProperty("line.separator");
  259. while((line = in.readLine()) != null){
  260. //Will only work if the file is properly formatted
  261. StringTokenizer st = new StringTokenizer(line, " ");
  262. firstName = st.nextToken();
  263. lastName = st.nextToken();
  264. grade = st.nextToken();
  265. gradeint = Integer.parseInt(grade);
  266.  
  267. gradeavg = gradeavg + gradeint;
  268.  
  269. count++;
  270.  
  271. if (gradeint <=69)
  272. {
  273. S69andbelow = S69andbelow + lastname + " "
  274. + firstname + " " + "t" + grade + newLine;
  275. }
  276. else if (gradeint >= 70 && gradeint <= 79)
  277. {
  278. S70to79 = S70to79 + lastname + " " + firstname
  279. + " " + "t" + grade + "n";
  280. }
  281.  
  282. else if (gradeint >= 80 && gradeint <=89)
  283. {
  284. S80to89 = S80to89 + lastname + " " + firstname
  285. + " " + "t" + grade + newLine;
  286. }
  287.  
  288. else
  289. {
  290. S90to100 = S90to100 + lastname + " " + firstname
  291. + " " + "t" + grade + newLine;
  292. }
  293.  
  294.  
  295. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement