Advertisement
Guest User

Untitled

a guest
Mar 21st, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.48 KB | None | 0 0
  1. package com.SomeProject;
  2.  
  3. import java.util.Random;
  4.  
  5. public class TestMain {
  6. static Random rnd = new Random();
  7. public static void main(String[] args) throws InterruptedException {
  8.  
  9. TV[][] tvs = new TV[10][10];
  10. for (int col = 0; col < 10; col++)
  11. {
  12. for (int row = 0; row < 10; row++)
  13. {
  14. tvs[col][row] = new TV(10, 10, 0);
  15. }
  16. }
  17.  
  18. for (int i = 0; i < 100; i++)
  19. {
  20. resetCursorPos();
  21. printTV(tvs);
  22. shuffleTV(tvs);
  23. Thread.sleep(1000);
  24. }
  25. }
  26.  
  27. private static void shuffleTV(TV[][] tvs) {
  28. for (int col = 0; col < 10; col++)
  29. {
  30. for (int row = 0; row < 10; row++)
  31. {
  32. TV t = tvs[col][row];
  33. t.powered = (rnd.nextInt(10) % 2 == 0);
  34. for (int i = rnd.nextInt(100); i > 0; i--)
  35. {
  36. if (rnd.nextInt(10) % 2 == 0) {
  37. t.channelUp();
  38. }
  39. else
  40. {
  41. t.channelDown();
  42. }
  43. }
  44. }
  45. }
  46. }
  47.  
  48. private static void resetCursorPos() {
  49. char escCode = 0x1B;
  50. int row = 0; int column = 0;
  51. System.out.print(String.format("%c[%d;%df",escCode,row,column));
  52. }
  53.  
  54. private static void printTV(TV[][] tvs) {
  55. for (int col = 0; col < 10; col++)
  56. {
  57. for (int row = 0; row < 10; row++)
  58. {
  59. TV t = tvs[col][row];
  60. System.out.print(padRight(String.format(" Powered %s : Channel %d ", (t.powered ? "On" : "Off"), t.channel), 28));
  61. }
  62. System.out.println();
  63. }
  64. }
  65.  
  66. public static String padRight(String s, int n) {
  67. return String.format("%1$-" + n + "s", s);
  68. }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement