Guest User

Untitled

a guest
Apr 20th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.07 KB | None | 0 0
  1. Application File:
  2.  
  3. #include <cstdlib>
  4. #include <iostream>
  5. #include "Triangle.h"
  6. #include <cmath>
  7. using namespace std;
  8.  
  9. int main()
  10. {
  11.  
  12. Triangle Driver_Object();
  13.  
  14. cout << Driver_Object() << endl;
  15.  
  16. cout.operator<< (os, object);
  17.  
  18. Driver_Object.setName(right-tri);
  19. for (int i=0; i<3; i++){
  20. Driver_Object.setSide(i+3);
  21. }
  22. Driver_Object.Perimeter(perimeter);
  23.  
  24. outfile << theTriangle << endl;
  25. theTriangle.setLeg( 6, 0 );
  26. theTriangle.setLeg( 8, 1 );
  27. theTriangle.setLeg( 10, 2 );
  28. outfile << theTriangle << endl;
  29.  
  30.  
  31. while( infile >> theTriangle ) {
  32. cout << theTriangle << endl;
  33. }
  34.  
  35. system("PAUSE");
  36. return 0;
  37. }
  38.  
  39.  
  40.  
  41. Implementation File:
  42.  
  43. #include <cstdlib>
  44. #include <iostream>
  45. #include "Triangle.h"
  46. #inclue <string>
  47.  
  48. using namespace std;
  49.  
  50. Triangle::Triangle (){
  51. Name = "no_name";
  52. for (int i=0; i<3; i++){
  53. Side[i]=0;
  54. }
  55. }
  56.  
  57. double Triangle::Perimeter(double perimeter){
  58. for (int i=0; i<3; i++){
  59. Side[i+1]+=Side[i];
  60. }
  61. }
  62.  
  63. string Triangle::getName(){
  64. return Name;
  65. }
  66.  
  67. string Triangle::setName(new_name){
  68. new_name = Name;
  69. return new_name;
  70. }
  71.  
  72. double Triangle::getSide(){
  73. return Side;
  74. }
  75.  
  76. double Triangle::setSide(new_side, int index){
  77. Side[index] = new_side;
  78. return new_side;
  79. }
  80.  
  81. friend bool operator< (const Triangle& lhs, const Triangle& rhs){
  82. bool comparison;
  83. if (lhs.perimeter() < rhs.perimeter()){
  84. comparison = true;
  85. }
  86. else comparison = false;
  87. return comparison;
  88. }
  89.  
  90. friend ostream& operator<< (ostream& os, const Triangle object){
  91. Name = name;
  92. Side = side;
  93. os<<object.name<<" ";
  94. for (int i=0; i<3; i++){
  95. os<<object.side[i]<<" ";
  96. }
  97.  
  98. friend istream& operator>> (istream& inFile, const& Triangle object){
  99. if (!inFile){
  100. cout << "There was an error reading your file." << endl'
  101. exit(1);
  102. }
  103. while (inFile>>object){
  104. cout << object << endl;
  105. }
  106. }
  107.  
  108. bool Triangle::isEquilateral(){
  109. bool comparison;
  110. for (int i=1; i<3; i++){
  111. for (int j=0; j<3; j++){
  112. if (abs(Side[i]-Side[j]) <= .001){
  113. comparison = true;
  114. }
  115. else comparison = false;
  116. }
  117. }
  118. }
  119.  
  120.  
  121. Class Header File:
  122.  
  123. #pragma once
  124.  
  125. #include <cstdlib>
  126. #include <iostream>
  127.  
  128. using namespace std;
  129.  
  130. class Triangle {
  131.  
  132. public:
  133.  
  134. Triangle ();
  135.  
  136. double Perimeter(double perimeter);
  137.  
  138. string getName();
  139.  
  140. string setName(string new_name);
  141.  
  142. double getSide();
  143.  
  144. double setSide();
  145.  
  146. friend bool operator< (const Triangle& lhs, const Triangel& rhs);
  147.  
  148. friend ostream& operator<<(ostream& os, const Triangle object);
  149.  
  150. friend istream& operator>>(istream inFile, const Triangle object);
  151.  
  152. bool isEquilateral ();
  153.  
  154. private:
  155. double Side[];
  156. string Name;
  157.  
  158. };
Add Comment
Please, Sign In to add comment