C Programmierung (brauche Hilfe)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • C Programmierung (brauche Hilfe)

    Hallo erstmal ich habe mit der C Programmierung angefange und versuche mit grade an meinem 2. Projekt. Ich habe versucht ein C Programm welches die Fläche und den Umfang eines Kreises und Rechtecks angiebt. Die Funktion der berechnung für den Kreis Funktioniert nur die für das Rechteck noch nicht würde mich über eure Hilfe Freuen" :D
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    #define PI 3.141592654




    int kreis(void)
    {
    float a;
    float u;
    float r = 0;
    printf("Berechnung der Flaeche und dem Umfang eines Kreises\n");
    printf("Geben Sie den Radius ein:");
    scanf("%f", &r);
    printf("%f\n", r);
    printf("%f\n", PI);
    a = PI * (((r + r) * (r + r)) / 4);
    u = 2 * PI * r;

    printf("Die Flaeche betraegt: %f\n", a);
    printf("Der Umfang betraegt: %f\n", u);
    }
    int rechteck(void)
    {
    float flaeche;
    float umfang;



    float x, y;
    x = 0;
    y = 0;


    printf("Bitte Kantenlaenge x eingeben:");
    scanf("%f",&x);



    printf("Bitte Kantenlaenge y eingeben:");
    scanf("%f",&y);



    flaeche = x * y;
    umfang = 2 * x + 2 * y;

    printf("Die Flaeche betraegt: %d, der Umfang: %d !\n\n\n\n ", flaeche, umfang);
    }


    main (void)
    {
    int auswahl;
    int d;
    int i;
    printf("Herzlich Willkommen zur Flaechenberechnung\n");
    printf("Bitte geben Sie das Objekt ein Kreis=0, Rechteck=1, Dreieck=2\n");
    scanf("%i", &auswahl);
    // printf("auswahl=%i",auswahl);
    switch (auswahl)
    {
    case 0:
    // printf("Juhu");
    kreis();
    break;
    case 1:
    rechteck();
    break;
    }
    return(0);
    }


    Das wäre das Programm soweit wäre toll wenn Ihr mir helfen könntet. :D
  • Also ich hab mir mal dein Programm

    angesehen, und mir sind einige Dinge aufgefallen. Ich hab den Code überarbeitet und mit Kommentaren versehen:


    C-Quellcode

    1. #include <stdio.h> /*Standard Ein/Ausgabe*/
    2. #include <stdlib.h> /*Standard Bibliothek*/
    3. /*#include <math.h>*/ ///Auskommentiert da nicht benötigt
    4. #define PI 3.141592654 /*PI mit 9 Nachkommastellen*/
    5. int kreis(void) /*Funktion für Berechnung von Kreisfläche und Kreisumfang*/
    6. {
    7. double r = 0; /*Radius r als double*/ ///Als double definiert da dieser Datentyp genauer ist
    8. double A = 0; /*Flächeninhalt A als double*/ ///Als double definiert da dieser Datentyp genauer ist
    9. double u = 0; /*Umfang u als double*/ ///Als double definiert da dieser Datentyp genauer ist
    10. printf("Berechnung der Flaeche und dem Umfang eines Kreises\n"); /*Anweisungen für Benutzer*/
    11. printf("Geben Sie den Radius ein:"); /*Anweisungen für Benutzer*/
    12. scanf("%lf", &r); /*Benutzereingabe des Radius r (double)*/
    13. A = (r * r) * PI; /*Berechnung von A*/ ///Geht viel einfacher :)
    14. u = 2 * PI * r; /*Berechnung von u*/
    15. printf("Die Flaeche betraegt: %f\n", A); /*Ausgabe der Fläche A */
    16. printf("Der Umfang betraegt: %f\n", u); /*Ausgabe des Umfangs u*/
    17. return 0; /*Return 0 (Erfolgreiches beenden)*/ ///Nicht vergessen da Funktionstyp int ist!
    18. }
    19. int rechteck(void)
    20. {
    21. double A = 0; /*Fläche A als double*/ ///Als double definiert da dieser Datentyp genauer ist
    22. double u = 0; /*Umfang u als double*/ ///Als double definiert da dieser Datentyp genauer ist
    23. double x = 0; /*Seite x als double*/ ///Als double definiert da dieser Datentyp genauer ist
    24. double y = 0; /*Seite y als double*/ ///Als double definiert da dieser Datentyp genauer ist
    25. printf("Bitte Kantenlaenge x eingeben:"); /*Anweisung für Benutzer*/
    26. scanf("%lf", &x); /*Benutzereingabe der Kantenlänge x (double)*/
    27. printf("Bitte Kantenlaenge y eingeben:"); /*Anweisung für Benutzer*/
    28. scanf("%lf", &y); /*Benutzereingabe der Kantenlänge x (double)*/
    29. A = x * y; /*Berechnung der Fläche A*/
    30. u = 2 * x + 2 * y; /*Berechnung des Umfangs u*/
    31. printf("Die Flaeche betraegt: %lf, der Umfang: %lf !\n\n\n\n ", A, u); /*Ausgabe der Fläche A und des Umfangs u*/
    32. return 0; /*Return 0 (Erfolgreiches beenden)*/
    33. }
    34. int main(void) ///Das int vor main nicht vergessen :D
    35. {
    36. int auswahl; /*Auswahl auswahl als int*/ ///Hab die anderen beiden gelöscht, brauchst nicht ;)
    37. printf("Herzlich Willkommen zur Flaechenberechnung\n"); /*Anweisung für Benutzer*/
    38. printf("Bitte geben Sie das Objekt ein Kreis=0, Rechteck=1\n"); /*Anweisung für Benutzer*/ ///Wenn es eine Funktion noch nicht gibt, sag dem Benutzer nichts davon sonst wird er nur sauer wenns nicht geht :D
    39. scanf("%i", &auswahl); /*Benutzereingabe der Auswahl auswahl (int)*/
    40. switch (auswahl) /*switch-case Anweisung mit auswahl als Parameter*/
    41. {
    42. case 0: /*Fall auswahl = 0*/
    43. kreis(); /*Aufrufen der Funktion kreis() (int)*/
    44. break; /*Abbruch*/
    45. case 1: /*Fall auswahl = 1*/
    46. rechteck(); /*Aufrufen der Funktion rechteck() (int)*/
    47. break; /*Abbruch*/
    48. }
    49. return 0; /*Return 0 (Erfolgreiches beenden)*/ ///Die Klammern brauchst du nur wenn du etwas berechnest
    50. }
    Alles anzeigen
    Leider ist die Formatierung hier nicht so gut aber wenn du es in Visual Studio kopierst sollte es leicht lesbar sein. Falls noch Fragen auftauchen, meld dich einfach bei mir.

    Viel Glück
    Power_Gamer122
    Grüße, Power_Gamer122