Moin,
ich fange gerade mit der C-Programmierung an, und versuche mich aktuell an einem Programm zur Bestimmung von Pi. Leider hat sich ein (Syntax-)Fehler eingeschlichen, den ich nicht ausfindig machen kann. Das ist das Programm:
Das sind die Meldung, die mir der C-Compiler ausgibt:Code:#include <stdio.h> // Dies ist ein Programm das Pi bestimmt. Es werden Zufälligen Punkte in einem quadrat von 1x1 FE #include <time.h> // erstellt. Gleichzeitig werden die Punkte näher als 1 zum Ursprung gemessen. Das Verhältnis #include <stdlib.h> // zur Gesammtanzahl wird mit vier multipliziert, #include <math.h> // da hier nur ein Viertelkreis betrachtet wird. Und // Und man erhält Pi #define rand() (a=a*1103515245+12345, a&0x2710) #define srand(r) a=r unsigned long int a=1; int main(void) { int Zaehler, Anzahl, Zaehlerb; // Zähler zählt die Durchläufe, Anzahl gibt die Anzahl der durchläufe an, float c, b; // Zahlerb zählt die Punkte näher als 1 zum Uhrsprung. a und b bezeichnen die double s,k,d; // Koordinaten im Quadrat, s den Abstand zum Ursprung. x wird für den int x=10000; // Zufallsgenerator benötigt srand(time(NULL)); printf("Dies ist ein Programm zur Bestimmung von Pi\n"); printf("Geben Sie die Anzahl der Durchläufe an:"); scanf("%d",&Anzahl); do { srand(time(NULL)); c=rand(); c/=x; b=rand(); b/=x; // Teil durch x für einen Wert zwischen 0 und 1. Zaehler++; d=c*c+b*b; k=double sqrt(d); if(k<=1){Zaehlerb++;} }while(Zaehler<=Anzahl); s=Zaehlerb/Anzahl; s*=4; Printf("\nBei der Betimmung ist für Pi folgender Wert herrausgekommen: %f",s); return(0); }
/tmp/cc1CJaLB.o: In function `main':
Bestimmung_Pi2.c.text+0x10b): undefined reference to `sqrt'
Bestimmung_Pi2.c.text+0x16d): undefined reference to `Printf'
collect2: ld gab 1 als Ende-Status zurück
Ich hoffe ihr könnt mir weiterhelfen,
mfg Arthur






Zitieren


Lesezeichen