Vorlesung 5. #include double fv(double x) { return sin(x); } int main(){ int i,N=10; double a=1,b=2,del,x,sum,f,integral; for(i=1,sum=0.0,del = (b-a)/N;i<=N;sum.

Slides:



Advertisements
Ähnliche Präsentationen
Dauermagnete Bei magnetischen Materialien unterscheidet man Eisenkerne bzw. Weicheisenstücke und Dauermagnete bzw. Hart-magnetische Materialien. Dauermagnete.
Advertisements

TAGUNG DER DEUTSCH-LUSITANISCHEN JURISTENVEREINIGUNG O processo penal português Panorâmica introdutória Der portugiesische Strafprozess ein einführender.
Ach wie gut, daß niemand weiß Der Schutz von Wissen
Herzlich Willkommen bei SIMPLE STABLE BULDING
Adjektivendungen Tabellen und Übungen.
ZWILLING Neuheiten 2008.
Das Hexenkochbuch Nicht Rattenschwänze, Spinnenbein
 Präsentation transkript:

Vorlesung 5

#include double fv(double x) { return sin(x); } int main(){ int i,N=10; double a=1,b=2,del,x,sum,f,integral; for(i=1,sum=0.0,del = (b-a)/N;i<=N;sum += fv(a+del*(i++-1))) ; integral = sum*del; printf("Integral = %lf\n",integral); printf("Integral = %lf\n",-cos(b)+cos(a)); return 0; }

Zeiger und Vektoren Ein Zeiger ist eine Variable, die die Adresse einer Variablen enthält. & unäre Adress-Operator * Inhalts-Operator (indirection, dereferencing - Objekt) int x = 1, y = 2; int *ip; ip = &x; y = *ip; *ip = 0;

Zeiger und Vektoren Die Vereinbarung int a[10]; double v[25]; definiert einen Vektor mit 10 (25) Elementen, einen Block aus 10 (25) aufeinanderfolgenden Objekten, mit den Namen a[0] a[1]... a[9]

Zeiger und Vektoren Mehrdimensionale Vektoren Mehrdimenisonale Vektoren werden durch 2 oder mehr Paare eckiger Klammern nach dem Objektnamen definiert Ein 2-dimensionaler Vektor ist ein Vektor, dessen Komponenten Vektoren sind int md[5][10];

Zeiger und Vektoren Vereinbart man pa als Zeiger auf einen int Wert int *pa; dann zeigt pa durch die Zuweisung pa = &a[0]; auf das erste Element 0 von a; pa enthält die Adresse von a[0]

Zeiger und Vektoren pa + 1 ist eine Zeiger auf das nachfolgende Element pa + i ist eine Zeiger auf das i-te Element nach (hinter) pa Statt a[i] auch *(a+i) geschrieben werden kann pa = &a[0]; equivalent mit pa = a;

Zeigern als Funktionsargumente void no_swap(int x, int y) { int temp; temp = x; x = y; y = temp; } /* no_swap() */ void do_swap(int *px, int *py) { int temp; temp = *px; *px = *py; *py = temp; } /* do_swap() */

Zeigern als Funktionsargumente void tausch(int *px,int *py) { int temp; temp = *px; *px = *py; *py = temp; } in main() Funktion tausch(&a,&b);

Zeigern als Funktionsargumente Auswahl maximaler Element #include int max(int *v,int g){ int maxwert = 0; if(g){ maxwert = v[0]; while(--g) if (v[g]>maxwert) maxwert = v[g]; } return maxwert; } int main() { int vekt[10],i; for (i=0;i<10;i++){ vekt[i] = rand(); } printf("%d \n",max(vekt,10)); return 0; }

Freundliche Zahlen for (sz1=2;sz1<=N0;sz1++) { sz2 = 1; for(i=2;i<sz1;i++) if (!(sz1%i)) sz2+=i; s1 = 1; for(i=2;i<sz2;i++) if (!(sz2%i)) {s1+=i; if (s1>sz1) break;} if (sz1==s1) printf("%ld %ld \n",sz1,sz2); }

Freundliche Zahlen for(i=2;i<=N0;i++) a[i] = 1; for(i=2;i<=N0;i++) { j=i; while (j<N0-i) {j=j+i; a[j] += i;} } for(i=2;i<=N0;i++) if (a[i]<=i) if (a[a[i]]==i) printf("%ld %ld \n",i,a[i]);