Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

Array Lab

By: a guest on Oct 12th, 2012  |  syntax: C++  |  size: 16.02 KB  |  views: 4  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. //
  2. //  SongArray.cpp
  3. //  
  4. //
  5. //  Created by Graham Gier on 10/9/12.
  6. //
  7. //
  8.  
  9. #include <Myro.h>
  10. #include <math.h>
  11. #include <stdio.h>
  12. #include <iostream>
  13. #include <cstdlib>
  14.  
  15. using namespace std;
  16. void fightsong();
  17. void eighteen();
  18. void SingPokemon();
  19. void storms();
  20. void Viva();
  21. void PlayNote(string note, string duration);
  22. int main();
  23.  
  24.  
  25. double a = 880;
  26. double b= 987.77;
  27. double c = 1046.5;
  28. double d = 1174.66;
  29. double e = 1318.51;
  30. double f = 1396.9;
  31. double g = 1567.98;
  32. double beat = (60.0/176);
  33.  
  34.  
  35. float D5 = 587.33;
  36. float Eb5 = 622.25;
  37. float E5 = 659.26;
  38. float F5 = 698.46;
  39. float Gb5 = 739.99;
  40. float G5 = 783.99;
  41. float Ab5 = 830.61;
  42. float A5 = 880.00;
  43. float Bb5 = 932.33;
  44. float B5 = 984.77;
  45. float C6 = 1046.50;
  46. float Db6 = 1108.73;
  47. float D6 = 1174.66;
  48. float Eb6 = 1244.51;
  49. float E6 = 1318.51;
  50. float F6 = 1396.91;
  51. float Gb6 = 1479.98;
  52. float G6 = 1567.98;
  53. float Ab6 = 1661.22;
  54. float A6 = 1760.00;
  55. float Bb6 = 1864.66;
  56. float B6 = 1975.53;
  57. float C7 = 2093.00;
  58. float Db7 = 2217.46;
  59. float D7 = 2349.32;
  60. float Eb7 = 2489.02;
  61. float E7 = 2637.02;
  62. float F7 = 2793.83;
  63.  
  64. float uBPM;
  65.  
  66. const int MAX = 5;
  67. const int MAX2 = 4;
  68.  
  69. void fightsong()
  70. {
  71.     robot.beep((1.0/3.0)*beat,1046.50);
  72.     robot.beep((2.0/3.0)*beat,0.0);
  73.     //1
  74.     robot.beep((2.0)*beat,1046.50);
  75.     robot.beep((2.0/3.0)*beat,0.0);
  76.     robot.beep((1.0/3.0)*beat,880.000);
  77.     robot.beep((0)*beat,0.0);
  78.     robot.beep((1.0/3.0)*beat,932.328);
  79.     robot.beep((1.0/3.0)*beat,0.0);
  80.     robot.beep((1.0/3.0)*beat,783.991);
  81.     robot.beep((0)*beat,0.0);
  82.     //2
  83.     robot.beep((2)*beat,880.000);
  84.     robot.beep((2.0/3.0)*beat,0.0);
  85.     robot.beep((1.0/3.0)*beat,698.456);
  86.     robot.beep((0)*beat,0.0);
  87.     robot.beep((1.0/3.0)*beat,659.255);
  88.     robot.beep((1.0/3.0)*beat,0.0);
  89.     robot.beep((1.0/3.0)*beat,587.330);
  90.     robot.beep((0)*beat,0.0);
  91.     //3
  92.     robot.beep((2)*beat,523.251);
  93.     robot.beep((2.0/3.0)*beat,0.0);
  94.     robot.beep((1.0/3.0)*beat,880.000);
  95.     robot.beep((0)*beat,0.0);
  96.     robot.beep((1.0/3.0)*beat,932.328);
  97.     robot.beep((1.0/3.0)*beat,0.0);
  98.     robot.beep((1.0/3.0)*beat,659.255);
  99.     robot.beep((0)*beat,0.0);
  100.     //4
  101.     robot.beep((2)*beat,698.456);
  102.     robot.beep((1)*beat,0.0);
  103.     robot.beep((1.0/3.0)*beat,1046.50);
  104.     robot.beep((2.0/3.0)*beat,0.0);
  105.     //5
  106.     robot.beep((2)*beat,1046.50);
  107.     robot.beep((2.0/3.0)*beat,0.0);
  108.     robot.beep((1.0/3.0)*beat,880.000);
  109.     robot.beep((0)*beat,0.0);
  110.     robot.beep((1.0/3.0)*beat,932.328);
  111.     robot.beep((1.0/3.0)*beat,0.0);
  112.     robot.beep((1.0/3.0)*beat,783.991);
  113.     robot.beep((0)*beat,0.0);
  114.     //6
  115.     robot.beep((2)*beat,880.000);
  116.     robot.beep((2.0/3.0)*beat,0.0);
  117.     robot.beep((1.0/3.0)*beat,698.456);
  118.     robot.beep((0)*beat,0.0);
  119.     robot.beep((1.0/3.0)*beat,659.255);
  120.     robot.beep((1.0/3.0)*beat,0.0);
  121.     robot.beep((1.0/3.0)*beat,587.330);
  122.     robot.beep((0)*beat,0.0);
  123.     //7
  124.     robot.beep((2)*beat,523.251);
  125.     robot.beep((2.0/3.0)*beat,0.0);
  126.     robot.beep((1.0/3.0)*beat,880.000);
  127.     robot.beep((0)*beat,0.0);
  128.     robot.beep((1.0/3.0)*beat,932.328);
  129.     robot.beep((1.0/3.0)*beat,0.0);
  130.     robot.beep((1.0/3.0)*beat,659.255);
  131.     robot.beep((0)*beat,0.0);
  132.     //8
  133.     robot.beep((1.0/3.0)*beat,698.456);
  134.     robot.beep((1.0/3.0)*beat,0.0);
  135.     robot.beep((1.0/3.0)*beat,523.251);
  136.     robot.beep((0)*beat,0.0);
  137.     robot.beep((1.0/3.0)*beat,698.456);
  138.     robot.beep((1.0/3.0)*beat,0.0);
  139.     robot.beep((1.0/3.0)*beat,880.000);
  140.     robot.beep((0)*beat,0.0);
  141.     robot.beep((1.0/3.0)*beat,1046.50);
  142.     robot.beep((2.0/3.0)*beat,0.0);
  143.     robot.beep((5.0/6.0)*beat,659.255);
  144.     robot.beep((1.0/6.0)*beat,0.0);
  145.     //9
  146.     robot.beep((1.0/3.0)*beat,698.456);
  147.     robot.beep((1.0/3.0)*beat,0.0);
  148.     robot.beep((1.0/3.0)*beat,523.251);
  149.     robot.beep((0)*beat,0.0);
  150.     robot.beep((1.0/3.0)*beat,698.456);
  151.     robot.beep((1.0/3.0)*beat,0.0);
  152.     robot.beep((1.0/3.0)*beat,880.000);
  153.     robot.beep((0)*beat,0.0);
  154.     robot.beep((1.0/3.0)*beat,1046.50);
  155.     robot.beep((2.0/3.0)*beat,0.0);
  156.     robot.beep((5.0/6.0)*beat,659.255);
  157.     robot.beep((1.0/6.0)*beat,0.0);
  158.     //10
  159.     robot.beep((2)*beat,698.456);
  160.     return;
  161. }
  162.  
  163. void eighteen()
  164. {
  165.     robot.beep(.2, 783);
  166.     robot.beep(.2, 1046.5);
  167.     robot.beep(.2, 1174.66);
  168.     robot.beep(.2, 1318.5);
  169.     robot.beep(.2, 1174.66);
  170.     robot.beep(.2, c);
  171.     robot.beep(.2, 1174.66);
  172.     robot.beep(.4, e);
  173.     robot.beep(.4, c);
  174.     robot.beep(.8, c);
  175.     wait(.2);
  176.     robot.beep(.2, 783);
  177.     robot.beep(.2, 1046.5);
  178.     robot.beep(.2, 1174.66);
  179.     robot.beep(.2, 1318.5);
  180.     robot.beep(.2, 1174.66);
  181.     robot.beep(.2, c);
  182.     robot.beep(.2, 1174.66);
  183.     robot.beep(.4, e);
  184.     robot.beep(.4, c);
  185.     robot.beep(.8, c);
  186.     wait(.2);
  187.     robot.beep(.2, a);
  188.     robot.beep(.2, d);
  189.     robot.beep(.2, e);
  190.     robot.beep(.2, d);
  191.     robot.beep(.2, a);
  192.     robot.beep(.2, 698.46);
  193.     robot.beep(.2, a);
  194.     robot.beep(.2, d);
  195.     robot.beep(.2, a);
  196.     robot.beep(.2, 698.46);
  197.     robot.beep(.2, a);
  198.     robot.beep(.8,d);
  199.     wait(.2);
  200.     robot.beep(.2,783.99);
  201.     robot.beep(.2, c);
  202.     robot.beep(.2, d);
  203.     robot.beep(.2, e);
  204.     robot.beep(.2, d);
  205.     robot.beep(.2, c);
  206.     robot.beep(.2, d);
  207.     robot.beep(.4, e);
  208.     robot.beep(.4, c);
  209.     robot.beep(.8, c);
  210.     wait(.2);
  211.     robot.beep(.2, 783);
  212.     robot.beep(.2, 1046.5);
  213.     robot.beep(.2, 1174.66);
  214.     robot.beep(.2, 1318.5);
  215.     robot.beep(.2, 1174.66);
  216.     robot.beep(.2, c);
  217.     robot.beep(.2, 1174.66);
  218.     robot.beep(.4, e);
  219.     robot.beep(.4, c);
  220.     robot.beep(.8, c);
  221.     wait(.2);
  222.     robot.beep(.133333, a);
  223.     robot.beep(.133333, a);
  224.     robot.beep(.133333, a);
  225.     robot.beep(.4, c);
  226.     robot.beep(.4, a);
  227.     wait(.4);
  228.     robot.beep(.133333, a);robot.beep(.133333, a);robot.beep(.133333, a);
  229.     robot.beep(.4, b);
  230.     robot.beep(.4, 783.99);
  231.     wait(.4);
  232.     robot.beep(.133333, a);robot.beep(.133333, a);robot.beep(.133333, a);
  233.     robot.beep(.4, 932.33);
  234.     robot.beep(.4, a);
  235.     robot.beep(.4, c);
  236.     robot.beep(.4, b);
  237.     robot.beep(.4, d);
  238.     robot.beep(.4, c);
  239.     robot.beep(.2666666, g);
  240.     robot.beep(.2666666, 1479.98);
  241.     robot.beep(.2666666, f);
  242.     robot.beep(.2666666,e);
  243.     robot.beep(.2666666, 1244.51);
  244.     robot.beep(.2666666,d);
  245.     robot.beep(.2666666, 1108.73);
  246.     robot.beep(.2666666, c);
  247.     robot.beep(.2666666, b);
  248.     robot.beep(.2666666, 932.33);
  249.     robot.beep(.2666666, a);
  250.     robot.beep(.2666666, 830.61);
  251.     robot.beep(.2666666, 783.99);
  252.     wait(.4);
  253.     robot.beep(.4, 830.61);
  254.     wait(.4);
  255.     robot.beep(.4, a);
  256.     wait(.4);
  257.     robot.beep(.4, b);
  258.     wait(.4);
  259.     robot.beep(.2, c);
  260.     robot.beep(.2, 783.99);
  261.     robot.beep(.2, c);
  262.     robot.beep(.2, d);
  263.     robot.beep(.2, e);
  264.     robot.beep(.2, d);
  265.     robot.beep(.2, c);
  266.     robot.beep(.2, d);
  267.     robot.beep(.4, e);
  268.     wait(.4);
  269.     robot.beep(.4, e);
  270.     robot.beep(.6, c);
  271.     return;
  272. }
  273.  
  274. void PlayNote(string note, string duration)
  275. {
  276.         double freq;
  277.         double time;
  278.    
  279.         // freq
  280.         if (note == "G5")
  281.         {
  282.                 freq = 783.99;
  283.         }
  284.         else if (note == "B5")
  285.         {
  286.                 freq = 987.77;
  287.         }
  288.         else if (note == "C6")
  289.         {
  290.                 freq = 1046.50;
  291.         }
  292.         else if (note == "D6")
  293.         {
  294.                 freq = 1174.66;
  295.         }
  296.         else if (note == "D#6")
  297.         {
  298.                 freq = 1244.51;
  299.         }
  300.         else if (note == "E6")
  301.         {
  302.                 freq = 1318.51;
  303.         }
  304.         else if (note == "F6")
  305.         {
  306.                 freq = 1396.91;
  307.         }
  308.         else if (note == "G6")
  309.         {
  310.                 freq = 1567.98;
  311.         }
  312.         else if (note == "A6")
  313.         {
  314.                 freq = 1760.00;
  315.         }
  316.         else if (note == "A#6")
  317.         {
  318.                 freq = 1864.66;
  319.         }
  320.         else if (note == "B6")
  321.         {
  322.                 freq = 1975.53;
  323.         }
  324.         else if (note == "C7")
  325.         {
  326.                 freq = 2093.00;
  327.         }
  328.         else if (note == "C#7")
  329.         {
  330.                 freq = 2217.46;
  331.         }
  332.         else if (note == "D7")
  333.         {
  334.                 freq = 2349.32;
  335.         }
  336.         else if (note == "Rest")
  337.         {
  338.                 freq = 0.0;
  339.         }
  340.    
  341.         // time
  342.         if (duration == "1/16")
  343.         {
  344.                 time = 0.1;
  345.         }
  346.         else if (duration == "1/8")
  347.         {
  348.                 time = 0.2;
  349.         }
  350.         else if (duration == "1/4")
  351.         {
  352.                 time = 0.4;
  353.         }
  354.         else if (duration == "3/8")
  355.         {
  356.                 time = 0.6;
  357.         }
  358.         else if (duration == "1/2")
  359.         {
  360.                 time = 0.8;
  361.         }
  362.         else if (duration == "5/8")
  363.         {
  364.                 time = 1.0;
  365.         }
  366.         else if (duration == "3/4")
  367.         {
  368.                 time = 1.2;
  369.         }
  370.         else if (duration == "1")
  371.         {
  372.                 time = 1.6;
  373.         }
  374.         else if (duration == "2")
  375.         {
  376.                 time = 3.2;
  377.         }
  378.        
  379.         robot.beep(time, freq);
  380. }
  381.  
  382. void SingPokemon()
  383. {
  384.         PlayNote("G5", "3/8");
  385.         PlayNote("B5", "1/16");
  386.         PlayNote("D6", "1");
  387.         PlayNote("F6", "3/8");
  388.         PlayNote("E6", "1/16");
  389.         PlayNote("D#6", "1/16");
  390.         PlayNote("D6", "1");
  391.         PlayNote("Rest", "1");
  392.        
  393.         PlayNote("G5", "3/8");
  394.         PlayNote("B5", "1/16");
  395.         PlayNote("D6", "1");
  396.         PlayNote("F6", "1/4");
  397.         PlayNote("E6", "1/8");
  398.         PlayNote("F6", "1/8");
  399.         PlayNote("G6", "3/8");
  400.         PlayNote("A6", "1/4");
  401.         PlayNote("G6", "1");
  402.         PlayNote("Rest", "1");
  403.     return;
  404. }
  405.  
  406.  
  407. void Viva()
  408. {
  409.         for(int i = 0; i < 2; i++)
  410.         {
  411.        
  412.                 robot.beep(0.3,698.46);
  413.                 robot.beep(0.3,698.46);
  414.                 robot.beep(0.2,698.46);
  415.                 robot.beep(0.2,659.26);
  416.                 robot.beep(0.2,698.46);
  417.                 robot.beep(0.5,659.26);
  418.                 robot.beep(0.2,698.46);
  419.                 robot.beep(0.3,493.88);
  420.                 robot.beep(1,554.37);
  421.                 wait(1);
  422.                
  423.                 robot.beep(0.3,659.26);
  424.                 robot.beep(0.3,659.26);
  425.                 robot.beep(0.2,659.26);
  426.                 robot.beep(0.2,493.88);
  427.                 robot.beep(0.2,659.26);
  428.                 robot.beep(0.5,493.88);
  429.                 robot.beep(0.2,369.99);
  430.                 robot.beep(0.3,415.30);
  431.                 wait(1);
  432.         }
  433.    
  434.         robot.beep(0.3,698.46);
  435.         robot.beep(0.3,698.46);
  436.         robot.beep(0.2,698.46);
  437.         robot.beep(0.2,659.26);
  438.         robot.beep(0.5,783.99);
  439.         robot.beep(0.2,783.99);
  440.         robot.beep(0.2,783.99);
  441.         robot.beep(0.5,783.99);
  442.         wait(1);
  443.    
  444.         robot.beep(0.3,659.26);
  445.         robot.beep(0.3,659.26);
  446.         robot.beep(0.3,659.26);
  447.         robot.beep(0.2,587.33);
  448.         robot.beep(0.2,554.37);
  449.         robot.beep(0.5,554.37);
  450.         wait(1);
  451.         robot.beep(0.2,659.26);
  452.         robot.beep(0.3,554.37);
  453.         robot.beep(0.3,554.37);
  454.         robot.beep(0.5,554.37);
  455.         robot.beep(0.2,587.33);
  456.         robot.beep(1,493.88);
  457.         wait(1);
  458.         robot.beep(0.2,369.99);
  459.         robot.beep(0.2,493.88);
  460.         robot.beep(0.2,440.00);
  461.         robot.beep(0.2,369.99);
  462.         robot.beep(0.5,369.99);
  463.         robot.beep(0.5,493.88);
  464.         robot.beep(0.2,369.99);
  465.         robot.beep(1,440.00);
  466.         wait(5);
  467.     return;
  468. }
  469.  
  470. void storms()
  471. {
  472.     float qNote = 60/uBPM;
  473.         float eNote = 30/uBPM;
  474.         float hNote = 120/uBPM;
  475.         float dqNote = 180/uBPM;
  476.         wait(2); //Begin song of storms
  477.         robot.beep(eNote, D6);//Measure 1
  478.         robot.beep(eNote, F6);
  479.         robot.beep(hNote, D7);
  480.         robot.beep(eNote, D6);
  481.         robot.beep(eNote, F6);
  482.         robot.beep(hNote, D7);
  483.         robot.beep(qNote, E7);
  484.         wait(eNote);
  485.         robot.beep(eNote, F7);
  486.         robot.beep(eNote, E7);
  487.         robot.beep(eNote, F7);
  488.         robot.beep(eNote, E7);
  489.         robot.beep(eNote, C7);
  490.         robot.beep(hNote, A6);//end of line 3
  491.         robot.beep(qNote, A6);
  492.         robot.beep(qNote, D6);
  493.         robot.beep(eNote, F6);
  494.         robot.beep(eNote, G6);
  495.         robot.beep(dqNote, A6);
  496.         robot.beep(qNote, A6);
  497.         robot.beep(qNote, D6);
  498.         robot.beep(eNote, F6);
  499.         robot.beep(eNote, G6);
  500.         robot.beep(dqNote, E6);//first ending
  501.    
  502.         robot.beep(eNote, D6);//Measure 1, second repeat
  503.         robot.beep(eNote, F6);
  504.         robot.beep(hNote, D7);
  505.         robot.beep(eNote, D6);
  506.         robot.beep(eNote, F6);
  507.         robot.beep(hNote, D7);
  508.         robot.beep(qNote, E7);
  509.         wait(eNote);
  510.         robot.beep(eNote, F7);
  511.         robot.beep(eNote, E7);
  512.         robot.beep(eNote, F7);
  513.         robot.beep(eNote, E7);
  514.         robot.beep(eNote, C7);
  515.         robot.beep(hNote, A6);//end of line 3, second repeat
  516.         robot.beep(qNote, A6);
  517.         robot.beep(qNote, D6);
  518.         robot.beep(eNote, F6);
  519.         robot.beep(eNote, G6);
  520.         robot.beep(hNote, A6);
  521.         robot.beep(qNote, A6);
  522.         robot.beep(dqNote, D6);
  523.         wait(dqNote*3);       //end of Section 1, Rehearsal B
  524.        
  525.         robot.beep(eNote, D5);//Rehearsal C
  526.         robot.beep(eNote, F5);
  527.         robot.beep(hNote, D6);
  528.         robot.beep(eNote, D5);
  529.         robot.beep(eNote, F5);
  530.         robot.beep(hNote, D6);
  531.         robot.beep(qNote, E6);
  532.         wait(eNote);
  533.         robot.beep(eNote, F6);
  534.         robot.beep(eNote, E6);
  535.         robot.beep(eNote, F6);
  536.         robot.beep(eNote, E6);
  537.         robot.beep(eNote, C6);
  538.         robot.beep(hNote, A5);//end of line 3, second page
  539.         robot.beep(qNote, A5);
  540.         robot.beep(qNote, D5);
  541.         robot.beep(eNote, F5);
  542.         robot.beep(eNote, G5);
  543.         robot.beep(dqNote, A5);
  544.         robot.beep(qNote, A5);
  545.         robot.beep(qNote, D5);
  546.         robot.beep(eNote, F5);
  547.         robot.beep(eNote, G5);
  548.         robot.beep(dqNote, E5);//first ending, second page
  549.    
  550.         robot.beep(eNote, D5);//Rehearsal C, second repeat
  551.         robot.beep(eNote, F5);
  552.         robot.beep(hNote, D6);
  553.         robot.beep(eNote, D5);
  554.         robot.beep(eNote, F5);
  555.         robot.beep(hNote, D6);
  556.         robot.beep(qNote, E6);
  557.         wait(eNote);
  558.         robot.beep(eNote, F6);
  559.         robot.beep(eNote, E6);
  560.         robot.beep(eNote, F6);
  561.         robot.beep(eNote, E6);
  562.         robot.beep(eNote, C6);
  563.         robot.beep(hNote, A5);//end of line 3, second repeat, second page
  564.         robot.beep(qNote, A5);
  565.         robot.beep(qNote, D5);
  566.         robot.beep(eNote, F5);
  567.         robot.beep(eNote, G5);
  568.         robot.beep(hNote, A5);
  569.         robot.beep(qNote, A5);
  570.         robot.beep(dqNote, D5);
  571.         wait(2);
  572.     return;
  573. }
  574.  
  575. void stickman()
  576. {
  577.     //legs
  578.     robot.forward(1, 1);
  579.     robot.turnRight(1, 1);
  580.     robot.forward(1, 1);
  581.     robot.turnLeft(1, 1.55);
  582.     robot.forward(1, 1);
  583.     robot.turnRight(1, .3);
  584.     //body
  585.     robot.forward(1, 1.25);
  586.     //arms
  587.     robot.turnRight(1, 1);
  588.     robot.forward(1,.7);
  589.     robot.turnLeft(1, 1.55);
  590.     robot.forward(1,.7);
  591.     robot.turnRight(1, .55);
  592.     robot.turnLeft(1,1);
  593.     robot.forward(1,.7);
  594.     robot.turnRight(1, 1.55);
  595.     robot.forward(1,.7);
  596.     //head
  597.     robot.motors(-.5, 1);
  598.     wait(4);
  599.     robot.motors(0,0);
  600.     return;
  601. }
  602.  
  603. void heart()
  604. {
  605.     connect("/dev/rfcomm0");
  606.         robot.motors(1.0, 1.0);
  607.         wait(1);
  608.         robot.motors(0, 1.0);
  609.         wait(3.0);
  610.         robot.motors(1.0, -1.0);
  611.         wait(0.8);
  612.         robot.motors(0, 1.0);
  613.         wait(3.2);
  614.         robot.motors(1.0, 1.0);
  615.         wait(1.1);
  616.         cout << "Disconnecting" << endl;
  617.         disconnect();
  618.     return;
  619. }
  620.  
  621. void DrawPokeball()
  622. {
  623.         cout << "Moving\n";
  624.         robot.motors(1.0/7.0, 1);
  625.         wait(7.0*3.14159/3.0);
  626.         robot.turnLeft(1, 0.75);
  627.         robot.forward(1, 0.4);
  628.         robot.turnRight(1, 0.75);
  629.         robot.motors(-.5, 1);
  630.         wait(2.0*3.14159);
  631.         robot.turnRight(1, 0.75);
  632.         robot.forward(1, 0.4);
  633.         robot.stop();
  634.         return;
  635. }
  636.  
  637. void randomdraw()
  638. {
  639.     for(int i=0; i<20; i++)
  640.     {
  641.         robot.forward(rand());
  642.         robot.turnRight((double) rand());
  643.         robot.backward(rand());
  644.     }
  645. }
  646.  
  647.  
  648. int main()
  649. {
  650.     srand (time(NULL));
  651.     connect("/dev/tty.Fluke2-0221-Fluke2");
  652.     int playlist[MAX];
  653.     int drawlist[MAX2];
  654.    
  655.     for(int i =0; i<MAX; i++)
  656.     {
  657.     cout << "Choose a song. 0= fight song, 1= 1812 overture, 2 = pokemon, 3= viva la vida, 4 = song of storms" << endl;
  658.     cin >> playlist[i];
  659.     }
  660.    
  661.     for(int i=0; i<MAX; i++)
  662.     {
  663.         cout << "Song " << i << " is:";
  664.         if (playlist[i] == 0) cout<< "The Trojan Fight Song"<<endl;
  665.         else if (playlist[i] == 1) cout<< "The 1812 Overture"<<endl;
  666.         else if (playlist[i] == 2) cout<<"The Pokémon Fight Song"<<endl;
  667.         else if (playlist[i] == 3) cout<<"Viva la Vida"<<endl;
  668.         else if (playlist[i] == 4) cout<<"The Song of Storms"<<endl;
  669.         else cout << "invalid choice"<< endl;
  670.     }
  671.    
  672.     for( int i = 0; i<MAX; i++)
  673.     {
  674.         if (playlist[i] == 0) fightsong();
  675.         if (playlist[i] == 1) eighteen();
  676.         if (playlist[i] == 2) SingPokemon();
  677.         if (playlist[i] == 3) Viva();
  678.         if (playlist[i] == 4) storms();
  679.     }
  680.    
  681.     for (int i = 0; i<MAX2; i++)
  682.     {
  683.         cout << "Choose a drawing. 0= Stick figure, 1 = heart, 2 = pokéball 3= random"<<endl;
  684.         cin>>drawlist[i];
  685.     }
  686.    
  687.     for(int i = 0; i<MAX2; i++)
  688.     {
  689.         cout << "Drawing " << i << " is:";
  690.         if (drawlist[i] == 0) cout<<"A stick figure"<<endl;
  691.         else if (drawlist[i] == 1) cout <<"A heart"<<endl;
  692.         else if (drawlist[i] == 2) cout <<"A Pokéball"<<endl;
  693.         else if (drawlist[i] == 3) cout <<"Random"<<endl;
  694.         else cout<<"invalid"<<endl;
  695.     }
  696.    
  697.     for (int i =0; i<MAX2; i++)
  698.     {
  699.     switch (drawlist[i])
  700.         {
  701.     case 0:stickman();
  702.         break;
  703.     case 1: heart();
  704.         break;
  705.     case 2: DrawPokeball();
  706.         break;
  707.     case 3: randomdraw();
  708.         break;
  709.     default: cout<<"invalid"<<endl;
  710.         break;
  711.         }
  712.        
  713.     }
  714.    
  715.     disconnect();
  716.     return 0;
  717.    
  718. }