probleme mit programm



  • Hallo,
    also programm gibt 1. nicht alle kräfte bzw. winkel aus
    und errechnet auch nicht die resoltierende kraft

    #include "g:\ruben2\hilfe.h"
    #include <math.h>
    
    #define pi 3.14
    
    int i=0;
    int anzahl=0;
    float kraft[30], winkel[30], fx, fy,frx,fry,summe,fr,wr;
    
    //Eingabe
    
    void eingabe()
    {
    printf ("Bitte geben Sie die Anzahl der Kraefte ein\nEingab") ;
    	cin>>anzahl;
    
    	i=0;
    
    	do
    	{
    		cout<<"Geben Sie die "<<i+1<<" Kraft ein: \n";
    		cin>>kraft[i];
    		cout<<"Geben Sie den dazugehoerigen Winkel ein: \n";
    		cin>>winkel[i];
    		i++;
    
    frx=0;
    fry=0;
    fx=kraft[i]*cos((winkel[i]/360)*(2*pi));
    fy=kraft[i]*sin((winkel[i]/360)*(2*pi));
    frx=frx+fx;
    fry=fry+fy;
    
    	}while(i<anzahl);
    
    }
    
    	void rechne()
    	{
    
    fr=sqrt (fry*fry+frx*frx);
    wr=atan (fry/frx);
    
    }
    
    //Ergebniss ausgabe
    
    void ausgabe()
    
    {
    	cout<<"kraft = "<<kraft[i]<< " N \n"<<endl;
    
    	cout<<"winkel  = "<<winkel[i]<< " grad \n\n"<<endl;
    
    	cout<<"Fx = "<<fr<< " N (Teilkraft x) \n\n"<<endl;
    
    	cout<<"Fy = "<<wr<< " N (Teilkraft y) \n\n"<<endl;
    
    }
    
    //Hauptprogramm
    
    void main()
    
    {
    	gruss();
    
    getch();
    passw();
    getch();
    
    	eingabe();
    rechne();
    
    	ausgabe();
    	getch();
    
    }
    


  • Und wo ist da das Problem ?



  • wie sollte er alle kräfte ausgeben, wenn du nur den letzten ausgeben lässt?



  • #include <cmath> bitte.
    hast du auch include <iostream> und using namespace std (cout und so)??



  • O_o also ich habs mir jetzt net so genau angeschaut, aber willst du dich nicht lieber im C-Forum melden? 🙄
    Ne, mal im ernst, bevor du weiter machst:
    -#include <cmath>
    -#include <iostream> wenn das nicht schon in der anderen header ist
    -using namespace std; dito
    -pi brauchste net zu definiren, bereits (durch cmath) als M_PI vorhanden
    -int main() + return 0 am Ende
    -keine globalen Variablen
    -wenn du nicht weißt, wie groß den array sein soll -> #include <vector> und benutzen
    -was mischst du printf/scanf mit cin/cout? letzteres
    -mach eine sinnvolle Funktionseinteilung! (struct winkel_und_kraft, winkel_und_kraft lese_wert(), ergebnis berechne_wert_fuer(const winkel_und_kraft&), gib_winkel_und_kraft_aus(const winkel_und_kraft&)...)


Anmelden zum Antworten