Advertisement
Guest User

Untitled

a guest
Oct 19th, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <iomanip>
  4. using namespace std;
  5. int main()
  6. {
  7. for(;;)
  8. {
  9. bool Ausgabe = true;
  10. double Menge = 0;
  11. double Ergebnis = 0;
  12. string Einheit = "";
  13. string WunschEinheit = "";
  14. string ErgebnisEinheit = "";
  15. cout<<"Geben sie eine Strecke (Zahl und Gr\x94\xE1 \be (Auswahl: \"mm\", \"cm\", \"dm\", \"m\", \"Km\", \"Mm\", \"Gm\") mit Leerzeichen trennen) an: ";
  16. cin>>Menge>>Einheit;
  17. cout<<"Geben sie die Gr\x94\xE1 \be an, in die die Strecke umgerechnet werden soll: ";
  18. cin>>WunschEinheit;
  19.  
  20. if(WunschEinheit=="mm")
  21. {
  22. if(Einheit=="cm")
  23. Ergebnis=Menge*pow(10,1);
  24. else if(Einheit=="dm")
  25. Ergebnis=Menge*pow(10,2);
  26. else if(Einheit=="m")
  27. Ergebnis=Menge*pow(10,3);
  28. else if(Einheit=="Km")
  29. Ergebnis=Menge*pow(10,6);
  30. else if(Einheit=="Mm")
  31. Ergebnis=Menge*pow(10,9);
  32. else if(Einheit=="Gm")
  33. Ergebnis=Menge*pow(10,12);
  34. }
  35. else if(WunschEinheit=="cm")
  36. {
  37. if(Einheit=="mm")
  38. Ergebnis=static_cast<double>(Menge)/pow(10,1);
  39. else if(Einheit=="dm")
  40. Ergebnis=Menge*pow(10,1);
  41. else if(Einheit=="m")
  42. Ergebnis=Menge*pow(10,2);
  43. else if(Einheit=="Km")
  44. Ergebnis=Menge*pow(10,5);
  45. else if(Einheit=="Mm")
  46. Ergebnis=Menge*pow(10,8);
  47. else if(Einheit=="Gm")
  48. Ergebnis=Menge*pow(10,11);
  49. }
  50. else if(WunschEinheit=="dm")
  51. {
  52. if(Einheit=="mm")
  53. Ergebnis=static_cast<double>(Menge)/pow(10,2);
  54. else if(Einheit=="cm")
  55. Ergebnis=static_cast<double>(Menge)/pow(10,1);
  56. else if(Einheit=="m")
  57. Ergebnis=Menge*pow(10,1);
  58. else if(Einheit=="Km")
  59. Ergebnis=Menge*pow(10,4);
  60. else if(Einheit=="Mm")
  61. Ergebnis=Menge*pow(10,7);
  62. else if(Einheit=="Gm")
  63. Ergebnis=Menge*pow(10,10);
  64. }
  65. else if(WunschEinheit=="m")
  66. {
  67. if(Einheit=="mm")
  68. Einheit=static_cast<double>(Menge)/pow(10,3);
  69. else if(Einheit=="cm")
  70. Ergebnis=static_cast<double>(Menge)/pow(10,2);
  71. else if(Einheit=="dm")
  72. Ergebnis=static_cast<double>(Menge)/pow(10,1);
  73. else if(Einheit=="Km")
  74. Ergebnis=Menge*pow(10,3);
  75. else if(Einheit=="Mm")
  76. Ergebnis=Menge*pow(10,6);
  77. else if(Einheit=="Gm")
  78. Ergebnis=Menge*pow(10,9);
  79. }
  80. else if(WunschEinheit=="Km")
  81. {
  82. if(Einheit=="mm")
  83. Ergebnis=static_cast<double>(Menge)/pow(10,6);
  84. else if(Einheit=="cm")
  85. Ergebnis=static_cast<double>(Menge)/pow(10,5);
  86. else if(Einheit=="dm")
  87. Ergebnis=static_cast<double>(Menge)/pow(10,4);
  88. else if(Einheit=="m")
  89. Ergebnis=static_cast<double>(Menge)/pow(10,3);
  90. else if(Einheit=="Mm")
  91. Ergebnis=Menge*pow(10,3);
  92. else if(Einheit=="Gm")
  93. Ergebnis=Menge*pow(10,6);
  94. }
  95. else if(WunschEinheit=="Mm")
  96. {
  97. if(Einheit=="mm")
  98. Ergebnis=static_cast<double>(Menge)/pow(10,9);
  99. else if(Einheit=="cm")
  100. Ergebnis=static_cast<double>(Menge)/pow(10,8);
  101. else if(Einheit=="dm")
  102. Ergebnis=static_cast<double>(Menge)/pow(10,7);
  103. else if(Einheit=="m")
  104. Ergebnis=static_cast<double>(Menge)/pow(10,6);
  105. else if(Einheit=="Km")
  106. Ergebnis=static_cast<double>(Menge)/pow(10,3);
  107. else if(Einheit=="Gm")
  108. Ergebnis=Menge*pow(10,3);
  109. }
  110. else if(WunschEinheit=="Gm")
  111. {
  112. if(Einheit=="mm")
  113. Ergebnis=static_cast<double>(Menge)/pow(10,12);
  114. else if(Einheit=="cm")
  115. Ergebnis=static_cast<double>(Menge)/pow(10,11);
  116. else if(Einheit=="dm")
  117. Ergebnis=static_cast<double>(Menge)/pow(10,10);
  118. else if(Einheit=="m")
  119. Ergebnis=static_cast<double>(Menge)/pow(10,9);
  120. else if(Einheit=="Km")
  121. Ergebnis=static_cast<double>(Menge)/pow(10,6);
  122. else if(Einheit=="Mm")
  123. Ergebnis=static_cast<double>(Menge)/pow(10,3);
  124. }
  125. else
  126. {
  127. cout<<"Die Einheit wurde abgelehnt.\n";
  128. Ausgabe=false;
  129. }
  130. if(Ausgabe)
  131. {
  132. cout<<"Das Ergebnis lautet: "<<fixed<<setprecision(6)<<Ergebnis<<WunschEinheit<<endl;
  133. }
  134. }
  135.  
  136. getchar();
  137. return 0;
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement