Guest User

Untitled

a guest
Jun 20th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.55 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3.  
  4.  
  5.  
  6. int main()
  7. {
  8.  
  9. int id,ie,ig,iErgebnis,iauswahl,ia,ib,ic,izaehler,izaehlermax,iEingabe;
  10. int ibin[20]={0},iver1[20]={0},iver2[20]={0},iverErgebnis[20]={0};
  11. char cEingabe,cEingabe2,cAuswahl,cAuswahl2;
  12. float fa,fb,fc;
  13.  
  14. fa=0;
  15. fb=0;
  16. fc=0;
  17.  
  18. izaehler=0;
  19. // Kopf des Programms mit Menue
  20. printf("Mathsoft TI1");
  21. printf("\n");
  22. printf("\n");
  23. printf("Nachname, Vorname: Zizlsperger, Helmut\n");
  24. printf("Matrikelnr. : 924660\n");
  25. printf("Erstelldatum : 01.11.2010\n");
  26. printf("Abgabedatum : 04.11.2010\n");
  27. printf("Version : 1.0\n");
  28. printf("\n");
  29. printf("\n");
  30. printf("\n");
  31. printf("\n");
  32. do
  33. {
  34. printf("MENUE :\n");
  35. printf("\n");
  36. printf("g) Grundrechenarten\n");
  37. printf("u) Dezimalzahlen in Dualzahlen umrechnen\n");
  38. printf("v) Bitweise Und-/Oder-Verknuepfung von Dualzahlen, dargestellt als Zeichenketten\n");
  39.  
  40.  
  41.  
  42.  
  43. printf("Waehlen sie aus: ");
  44. fflush(stdin);
  45. scanf("%c",&cEingabe);
  46.  
  47.  
  48. switch (cEingabe) //Auswahl der Recheneigenschaft
  49. {
  50. // Grundrechenarten
  51. case 'g' : printf("Bitte eine Rechenoperation mit [+,-,*,/] durchführen\n");
  52. fflush(stdin);
  53. scanf("%c", &cEingabe2);
  54.  
  55. switch(cEingabe2)
  56. {
  57.  
  58.  
  59. case '+': printf("Erste Zahl eingeben: ");
  60. scanf("%f", &fa);
  61. printf("Zweite Zahl eingeben: ");
  62. scanf("%f", &fb);
  63. fa=fa+fb;
  64. printf("%.2f", fa);
  65.  
  66. break;
  67. case '-': printf("Erste Zahl eingeben: ");
  68. scanf("%f", &fa);
  69. printf("Zweite Zahl eingeben: ");
  70. scanf("%f", &fb);
  71. fa=fa-fb;
  72. printf("%f", fa);
  73. break;
  74. case '*': printf("Erste Zahl eingeben: ");
  75. scanf("%f", &fa);
  76. printf("Zweite Zahl eingeben: ");
  77. scanf("%f", &fb);
  78. fa=fa*fb;
  79. printf("%f", fa);
  80. break;
  81. case '/': printf("Erste Zahl eingeben: ");
  82. scanf("%f", &fa);
  83. printf("Zweite Zahl eingeben: ");
  84. scanf("%f", &fb);
  85. fa=fa/fb;
  86. printf("%f", &fa);
  87. break;
  88. /* case '=': fc=fa;
  89. printf("Das Ergebniss ist: %.2f \n",fc);
  90. break;*/
  91.  
  92.  
  93. default: printf("Falsche Eingabe!\n");
  94. break;
  95.  
  96.  
  97. }while(cEingabe!='x');
  98.  
  99. break;
  100.  
  101.  
  102.  
  103. // Dezimal > Dual
  104. case 'u': printf("Welche Dezimalzahl soll in eine Dualzahl umgewandelt werden? \n");
  105. scanf("%i", &id);
  106. izaehler=0;
  107. do
  108. {
  109.  
  110. ig=id/2;
  111. ie=ig*2;
  112. iErgebnis=id-ie;
  113.  
  114. if (iErgebnis==0)
  115.  
  116. ibin[izaehler]=0;
  117.  
  118. else ibin[izaehler]=1;
  119.  
  120. id=ig;
  121. izaehler++;
  122.  
  123. }while(id>0);
  124.  
  125. printf("%d \n ", izaehler);
  126.  
  127. printf("Die Dualzahl lautet: ");
  128.  
  129. do
  130. {
  131. printf("%d", ibin[izaehler-1]/*,izaehler*/);
  132. izaehler--;
  133.  
  134.  
  135. } while (izaehler>0);
  136.  
  137. printf("\n");
  138.  
  139. break;
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147. case 'v': printf("Zahl 1 eingeben wenn Zahl fertig ist [-1] eingeben\n nach jeder Stelle Enter duecken\n");
  148. izaehler=0;
  149.  
  150.  
  151.  
  152. do
  153. {
  154.  
  155. scanf("%d", &iEingabe);
  156. iver1[izaehler]=iEingabe;
  157. izaehler++;
  158. /*printf("Zaehler ist : %d \n",zaehler);*/
  159. }while (iEingabe!=-1);
  160.  
  161. printf("Zahl 2 eingeben wenn Zahl fertig ist [-1] eingeben\n");
  162. izaehler=0;
  163. do
  164. {
  165.  
  166. scanf("%d", &iEingabe);
  167. iver2[izaehler]=iEingabe;
  168. izaehler++;
  169. /*printf("Zaehler ist : %d \n",zaehler);*/
  170.  
  171. }while (iEingabe!=-1);
  172.  
  173. izaehlermax=izaehler;
  174.  
  175. printf("Bitte die Art der Verknuepfung waehlen.");
  176. fflush(stdin);
  177. scanf("%c",&cAuswahl2);
  178.  
  179. switch (cAuswahl2)
  180. {
  181. case 'u': do
  182. {
  183. iErgebnis=iver1[izaehler-1]-iver2[izaehler-1];
  184. if (iver1[izaehler-1]==0 || iver2[izaehler-1]==0)
  185. iverErgebnis[izaehler]=0;
  186. else if (iErgebnis==0)
  187. iverErgebnis[izaehler]=1;
  188. else
  189. iverErgebnis[izaehler]=0;
  190. izaehler--;
  191.  
  192. }while (izaehler > 0);
  193.  
  194. izaehler=0;
  195.  
  196. do
  197. {
  198.  
  199.  
  200. printf("%d", iverErgebnis[izaehler]);
  201. izaehler++;
  202.  
  203. }while (izaehler < izaehlermax);
  204.  
  205.  
  206. printf("\n");
  207.  
  208. break;
  209. case 'o': do
  210. {
  211. iErgebnis=iver1[izaehler-1]-iver2[izaehler-1];
  212. if (iver1[izaehler-1]==1 || iver2[izaehler-1]==1)
  213. iverErgebnis[izaehler]=1;
  214. else if (iErgebnis==0)
  215. iverErgebnis[izaehler]=0;
  216. else
  217. iverErgebnis[izaehler]=1;
  218. izaehler--;
  219.  
  220. }while (izaehler > 0);
  221. izaehler=0;
  222.  
  223. do
  224. {
  225.  
  226. printf("%d", iverErgebnis[izaehler]);
  227. izaehler++;
  228.  
  229. }while (izaehler < izaehlermax);
  230.  
  231.  
  232. printf("\n");
  233.  
  234. break;
  235. default: printf("Falsche Eingabe!\n");
  236. break;
  237. }
  238.  
  239. break;
  240. default: if (cAuswahl!='x')
  241. printf("Bitte Eingabe ueberpruefen!\n");
  242. break;
  243. }
  244. }while (cAuswahl != 'x');
  245.  
  246.  
  247.  
  248.  
  249.  
  250. }
Add Comment
Please, Sign In to add comment