Advertisement
Guest User

dickbutt

a guest
Oct 22nd, 2014
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.40 KB | None | 0 0
  1. //????????
  2. //2014? 10? 19?
  3. #include <iostream>
  4. using namespace std;
  5. void Append( int Array[], int &numUsed, int number);
  6. void print(int Array[], int numUsed, int cursor);
  7. //void Init(int A[], int num);
  8. void insert(int Array[],int &numUsed,int number, int position);
  9. int Search(int Array[],int &numUsed, int number);
  10. //void GoBack(int cursor, int &numUsed,int position);
  11. //void GoForward(int &cursor, int &numUsed, int &position);
  12. void Reverse(int Array[],int &numUsed);
  13. void Sort();
  14. void Delete(int Array[], int &numUsed, int position);
  15. void swap(int &a, int &b);
  16. const int MAX = 5;
  17. int main()
  18. {
  19. char command;
  20. int num = 0;
  21. int size = 0;
  22. int cursor = 0;
  23. // int integer =0;
  24. int array[MAX];
  25. // int array2[MAX];
  26. int a;
  27. int b;
  28. int location = 0; //position
  29. while(true){
  30. cout<<"[A]ppend, [I]nsert, [D]elete, [S]earch, [R]everse, [4]GoBack, [6]GoForward, S[o]rt, e[x]it "<<endl;
  31. cin>>command;
  32. switch(command){
  33. case 'a':
  34. case 'A':{
  35. cout<<"Enter a number"<<endl;
  36. cin>>num;
  37. Append(array, size,num);
  38. cout << "size: " << size << endl;
  39. cursor = size - 1;
  40. break;
  41. }
  42. case 'i':
  43. case 'I':{
  44. cout<<"Enter a digit to insert"<<endl;
  45. cin>>num;
  46. insert(array, size, num, location);
  47. break;
  48. }
  49. case 'd':
  50. case 'D':{
  51. Delete(array, size, location);
  52. cursor = size -1;
  53. if(size < 0){
  54. size =0;
  55. }
  56. break;
  57. }
  58. case 's':{
  59. cin>>num;
  60. location = Search(array, size, num);
  61. cursor = location;
  62. break;
  63. }
  64. case 'r':
  65. case 'R':{
  66. Reverse(array, size);
  67. swap(a ,b);
  68. break;
  69. }
  70. case '4':{
  71. cursor--;
  72. if(cursor < 0)
  73. cursor = 0;
  74. location = cursor;
  75. break;
  76. }
  77. case '6':{
  78. cursor++;
  79. if(cursor >= size)
  80. cursor = size -1;
  81. location = cursor;
  82. break;
  83. }
  84. // case 'o':
  85. // case 'O':
  86. // Sort();
  87. // break;
  88. default:
  89. cout<<"That is not a valid entry"<<endl;
  90. break;
  91. }
  92. print(array, size, cursor);
  93. }
  94. return 0;
  95. }
  96. void Append(int Array[], int &numUsed, int number){
  97. // if(numUsed >= MAX){
  98. // return 1;
  99. // }
  100. if(numUsed < MAX){
  101. Array[numUsed] = number;
  102. numUsed++;
  103. }
  104. // return ;
  105. }
  106. void print(int Array[], int numUsed, int cursor){
  107. cout << "numUsed: " << numUsed << endl;
  108. for(int i=0; i<numUsed;i++){
  109. if(i == cursor){
  110. cout<<"["<<Array[i]<<"]"<<" ";
  111. }
  112. else cout<<Array[i]<<" ";
  113. }
  114. cout << endl;
  115. }
  116. //void Init(int A[], int num){
  117. // for(int i=0; i<MAX; i++){
  118. // A[i]=num;
  119. // }
  120. //}
  121. void insert(int Array[],int &numUsed,int number, int position){
  122. if(numUsed < MAX){
  123. for(int i = numUsed -1; i>=position; i--){ //subtract size to add number into new location.
  124. Array[i+1] = Array[i];
  125. Array[i]=number;
  126. }
  127. numUsed++;
  128. }
  129. }
  130. void Delete(int Array[], int &numUsed, int position){
  131. if(position > 0){
  132. for(int i = position; i<numUsed; i++){ //subtract size to add number into new location.
  133. Array[i] = Array[i+1];
  134. }
  135. }
  136. numUsed--;
  137. }
  138. int Search(int Array[],int &numUsed, int number){
  139. for(int i=0; i<numUsed; i++){
  140. if(Array[i] == number){ //????
  141. return i;
  142. }
  143. }
  144. return -1;
  145. }
  146. void Reverse(int Array[],int &numUsed){
  147. // int temp =i;
  148. // i=j;
  149. // j=temp;
  150. for(int i = 0, j = numUsed -1; i>j; i++, j--){
  151. swap(Array[i],Array[j]);
  152. }
  153. }
  154. void swap(int &a, int &b){
  155. int temp = a;
  156. a=b;
  157. b=temp;
  158. }
  159. //use swap reverse instead.
  160. // for(int i=0; i < numUsed; i++){
  161. // Array2[i] = Array[numUsed-i-1];
  162. // }
  163. // for (int i=0; i<numUsed; i++){ // This outputs the first array
  164. // Append(Array, numUsed, Array2[i]);
  165. // }
  166. //}
  167. //void Swap(int Array[], int &numUsed)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement