Letztes Update 2020/10/07 12:08
An der Konsole starten wir den Editor Nano:
nano dreieck.c
Hier geben wir folgendes ein:
/* dreieck.c Eingabe zur Laufzeit Dreiecksberechnung nach dem Satz des Heron scanf(), sqrt(), <math.h> 25.9.2020 */ #include <stdio.h> #include <stdlib.h> #include <math.h> int main() { float a, b, c, F, U, s, inkr, umkr; printf("\nDreiecksberechnung nach dem Satz des Heron\n"); printf("Als Eingabe werden die Seiten a, b und c des Dreiecks benötigt!\n"); printf("\n"); printf("Seite a [mm]: "); scanf("%f", &a); printf("Seite b [mm]: "); scanf("%f", &b); printf("Seite c [mm]: "); scanf("%f", &c); printf("\n===========================\n"); // printf("\nSeite a = %.2f\nSeite b = %.2f\nSeite c = %.2f\n", a, b, c); printf("\nUmfang = %.2f mm\n", a+b+c); s = (a+b+c)/2; F = sqrt(s*(s-a)*(s-b)*(s-c)); printf("Fläche = %.2f mm2\n", F); inkr = 2*F/(a+b+c); printf("Radius Inkreis = %.2f mm\n", inkr); umkr = (a*b*c)/(4*F); printf("Radius Umkreis = %.2f mm\n", umkr); printf("\n===========================\n"); return 0; }
mit Strg+o
den Text speichern und mit Strg+x
den Editor verlassen.
Mit der Funktion sqrt() wird die Quadratwurzel des in der Klammer befindlichen Wertes berechnet. sqrt()
wird in C über math.h
eingebunden. Aus einer negativen Zahl kann keine Quadratwurzel gebildet werden. Weitere Info
Das &-Zeichen in der scanf()
Funktion ist der Adressoperator, der aber nur bei numerischen Werten verwendet werden darf. Bei der Eingabe von Zeichenketten darf dieser Adressoperator nicht verwendet werden.
gcc
enthält aus historischen Gründen standardmäßig nicht die mathematischen Funktionen. Sie wurden auch von libc
in eine separate Bibliothek libm
getrennt. Um mit diesen Funktionen zu verknüpfen, muss der Linker angewiesen werden, die Option Bibliothek -l Linker
gefolgt vom Bibliotheksnamen m
also -lm
einzuschließen. Daher mus der Befehl zum Compilieren wie folgt lauten:
gcc -o dreieck dreieck.c -lm
Ausgeführt wird das Programm, indem folgendes eingegeben wird:
./dreieck
Die Ausgaben an der Konsole könnten dann so aussehen:
pi@server:~/c_kurs $ ./dreieck Dreiecksberechnung nach dem Satz des Heron Als Eingabe werden die Seiten a, b und c des Dreiecks benötigt! Seite a [mm]: 3 Seite b [mm]: 4 Seite c [mm]: 5 =========================== Umfang = 12.00 mm Fläche = 6.00 mm2 Radius Inkreis = 1.00 mm Radius Umkreis = 2.50 mm =========================== pi@server:~/c_kurs $