002
05.05.2004, 10:48 Uhr
Pac
|
Bitte hilft mir !!!!!!!!!!!!!!
Es sind drei Dateien :
C++: |
# include <stdio.h> # include <stdlib.h> # include <math.h> # include "header.h"
int main (void)
{ char selection = 'a' , returntaste;
struct VEKTOR V[10]; struct VEKTOR *pV; pV=&V[0];
printf ("\n"); printf ("Willkomen bei der Dreiecksflaechenberechnung\n"); while(selection !='e')
{ printf("\n"); printf("\t Gib A fuer Eingabe der Vektoren\n"); printf("\t Gib B fuer Berechnung ein \n"); printf("\t Gib E fuer Ende des Programms ein \n"); fflush(stdin); /*Returntaster*/ /* scanf ("%c %c",&selection,&returntaste);*/ scanf ("%c",&selection); switch (selection) { case 'A': case 'a': vektor (pV); break; case 'B': case 'b': Berechnung (pV); break; case 'E': case 'e': printf("Programm wurde beendet\n\n"); exit(1); break; default: printf ("Falsche Eingabe\n\n"); break; } } return 0; }
|
2. Datei :::
C++: |
#include <stdio.h> #include <stdlib.h> #include <math.h> #include "header.h"
void vektor (struct VEKTOR *pV)
{ printf ("Bitte geben Sie die erste x-Koordinate ein: "); fflush(stdin); scanf("%lf" , &(pV->x));
printf ("Bitte geben Sie die erste y-Koordinate ein: "); fflush(stdin); scanf("%lf" , &(pV->y)); printf ("Bitte geben Sie die zweite x-Koordinate ein: "); fflush(stdin); scanf("%lf" , &((pV+1)->x)); printf ("Bitte geben Sie die zweite y-Koordinate ein: "); fflush(stdin); scanf("%lf" , &((pV+1)->y)); printf ("Bitte geben Sie die dritte x-Koordinate ein: "); fflush(stdin); scanf("%lf" , &((pV+2)->x)); printf ("Bitte geben Sie die dritte y-Koordinate ein: "); fflush(stdin); scanf("%lf" , &((pV+2)->y)); }
double Berechnung (struct VEKTOR *pV) { double flaeche; double a,b,c,d,u,v; (pV+3)->x = (((pV+1)->x) - ((pV)->x)); /* Vektor zwischen Punkt 1 und Punkt 2 */ (pV+3)->y = (((pV+1)->y) - ((pV)->y)); /* Vektor zwischen Punkt 1 und Punkt 2 */ (pV+4)->x = (((pV+2)->x) - ((pV)->x)); /* Vektor zwischen Punkt 1 und Punkt 3 */ (pV+4)->y = (((pV+2)->y) - ((pV)->y)); /* Vektor zwischen Punkt 1 und Punkt 3 */ (pV+5)->x= pow((pV+3)->x,2); /* hochgenommen Vektor zwischen Punkt 1 und 2 */ (pV+5)->y= pow((pV+3)->y,2); /* hochgenommen Vektor zwischen Punkt 1 und 2 */ (pV+6)->x= pow((pV+4)->x,2); /* hochgenommen Vektor zwischen Punkt 1 und 3 */ (pV+6)->y= pow((pV+4)->y,2); /* hochgenommen Vektor zwischen Punkt 1 und 3 */
(pV+7)->x = (pV+5)->x * (pV+6)->x; /* hochgenommenen Vektoren multipliziert */ (pV+7)->y = (pV+5)->y * (pV+6)->y; /* hochgenommenen Vektoren multipliziert */ (pV+8)->x = pow((pV+3)->x * (pV+4)->x,2); /* Vektoren multipliziert und potenziert */ (pV+8)->y = pow((pV+3)->y * (pV+4)->y,2); /* Vektoren multipliziert und potenziert */ (pV+9)->x = (pV+7)->x - (pV+8)->x (pV+9)->y = (pV+7)->y - (pV+8)->y flaeche=0.5 * sqrt( printf("\n Der Flaecheninhalt betraegt %lf\n", flaeche); return 0; }
/* double Berechnung (struct VEKTOR *pV) { double flaeche; double a,b,c,d; a=((pV+1)->x - (pV)->x) * ((pV+1)->x - (pV) ->x) + ((pV+1)->y -(pV)->y)*((pV+1)->y -(pV)->y); b=((pV+2)->x - (pV)->x) * ((pV+2)->x - (pV) ->x) + (pV+2)->y -(pV)->y)*((pV+2)->y -(pV)->y); c=sqrt(a); d=sqrt(b); flaeche=(c*d)/2; printf("\n Der flächeninhalt beträgt %lf\n", flaeche); return 0; } */
Header datei :
long fakult (long) ; double potenz (double*, double*); struct VEKTOR { double x; double y; } ;
struct VEKTOR vektoraddition (struct VEKTOR*,struct VEKTOR*); struct VEKTOR vektorsubtraktion (struct VEKTOR*);
void vektorprint (struct VEKTOR); void vektorinput (struct VEKTOR*,struct VEKTOR*); void vektor (struct VEKTOR*); double Berechnung (struct VEKTOR*);
|
Bearbeitung von typecast: |
cpp-Tags gesetzt
|
Dieser Post wurde am 05.05.2004 um 12:28 Uhr von typecast editiert. |