Advertisement
Guest User

Untitled

a guest
Apr 25th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.60 KB | None | 0 0
  1. /*
  2. Beschreibung : Aufgabe 3.1 (Wurzel)
  3. Autor : BUI MINH TUNG
  4. Matrikelsnummer : 2360077
  5. Gruppe : PPR1/01 E1B
  6. Datum : 25/04/2018
  7. */
  8.  
  9. // Benötiger Header
  10. #define _CRT_SECURE_NO_WARNINGS
  11. #include<stdio.h>
  12.  
  13. // Prototypen
  14. void flashStandarInput(void);
  15. //Beginnung mit der Hauptfunktion
  16. int main(void)
  17. {
  18. double a;
  19. double xn;
  20. double xn_1;
  21. int genau;
  22. double abstand = 1; // der Abstand am Anfang ist 1
  23. int lv;
  24.  
  25. printf("Bitte Zahl eingeben, deren Wurzel berechnet werden soll!\n");
  26. scanf("%lf", &a); //a ist hier der aktuelle Parameter.
  27. flashStandarInput();
  28. printf("Bitte Anzahl der g¨ultigen Stellen hinter dem Komma eingeben!\n");
  29. scanf("%d", &genau);
  30. flashStandarInput();
  31.  
  32. if ((a >= 0) && (genau >= 0))
  33. {
  34. xn = a;
  35. xn_1 = a;
  36.  
  37. for (lv = 1; lv <= genau; lv++)
  38. {
  39. abstand = abstand*0.1; // nach jeder Schleife wird abstand mit 0.1 multiplizieren.
  40. lv++;
  41. }
  42.  
  43. do
  44. {
  45. xn = xn_1;
  46. xn_1 = 0.500*(xn + a / xn);
  47. } while ((xn - xn_1) > abstand || (xn - xn_1) < (-1)*abstand);
  48.  
  49. printf("Die Wurzel von %lf ergibt %.*lf.\n", a, genau,xn_1);
  50. /*
  51. %.*lf ist hier das Ergebnis, in dem %lf der Typ-Wert des Ergebnisses ist
  52. und ".*" ist entsprechend in deisem Fall mit "genau". Mit dem "%.*lf" können wir eine reelle Zahl
  53. mit beliebige Stelle nach dem Komma ausgeben, die aus der Tastatur eizugeben ist .
  54. */
  55. }
  56.  
  57. return 0;
  58.  
  59. }
  60.  
  61. // Hilfsfunktion um den Eingabepuffer zu leeren
  62. void flashStandarInput(void)
  63. {
  64. int IntCharacter;
  65. while ((IntCharacter = getchar()) != '\n' && IntCharacter != EOF);
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement