Poprawa programu

W tym dziale możesz uzyskać pomoc (nie ich rozwiązanie) przy zadaniach domowych
PATIX14

Użytkownik
Posty: 15
Rejestracja: 05 kwie 2012, 17:19

Poprawa programu

Post22 sty 2015, 12:39

Witam mam prośbę czy mógłby mi ktoś poprawić program z treści

Dany jest ciąg nieskończony:
f(x)=A/B(sinx-sinx^3+sinx^5-sinx^7+...) liczba wartości elementów sumy czytana z klawiatury
1. Stablicować funkcję dla zakresu x zdefinowanego w pliku dane.dat za pomocą: xo, xk, deltax.
2. Tablicowanie funkcji przeprowadzić w funkcji: (function). Parametry A i B zadeklarować jako zmienne globalne zadawane
z klawiatury.
3. Zapisać do pliku wynik1.dat następujące kolumny: x, f(x).
4. Zapisać do pliku wynik2.dat wartości x,f(x) dla tych argumentówx, dla których wartości iloczynu x f(x) są ujemne. 3. Rozmiar tej tablicy zadeklarować
dynamicznie..
5. Dane z pliku wynik1.dat wkleić do Excela i przedstawić funkcję na wykresie.

na taką

Dany jest ciąg nieskończony:
f(x)=A/B(x+x^3-x^5+x^7-...) liczba wartości elementów sumy czytana z klawiatury
1. Stablicować funkcję dla zakresu x zdefinowanego w pliku dane.dat za pomocą: xo, xk, deltax.
2. Tablicowanie funkcji przeprowadzić w funkcji: (function). Parametry A i B zadeklarować jako zmienne globalne zadawane
z klawiatury.
3. Zapisać do pliku wynik1.dat następujące kolumny: x, f(x).
4. Zapisać do pliku wynik2.dat wartości x,f(x) w kolejności odwrotnej niż w punkcie 3. Rozmiar tej tablicy zadeklarować
dynamicznie..
5. Dane z pliku wynik1.dat wkleić do Excela i przedstawić funkcję na wykresie.

program

Kod: Zaznacz cały

#include <iostream>
#include <math.h>
#include <fstream>
#include <cstdlib>


using namespace std;

float A,B,tr,ij,wynik=0,elementy,pot;


int main()
{
    cout <<"wprowadz A:";
    cin >> A ;
    cout <<"wprowadz B:";
    cin >> B ;
    cout <<"wprowadz liczbe elementow sumy:";
    cin >> elementy ;


    fstream dane;
    dane.open("dane.dat" ,ios::in);


    string linia;int nr_linii=1;float xp,xk,dx;

    while( getline(dane,linia) ){
            switch(nr_linii){
                case 2:xp=atof(linia.c_str());break;
                case 3:xk=atof(linia.c_str());break;
                case 4:dx=atof(linia.c_str());break;
            }
        nr_linii++;
    }

    for( float x =xp ; x<=xk ; x=x+dx ){







    tr = sin(M_PI*x/180);
    //cout <<"Sinus "<<x<<" to "<<tr;
    for( int i=1 ; i<=elementy ; i++){
        pot = 2*i-1;
        if( i%2==0 )
                wynik = wynik - pow(tr,pot);
            else
                wynik = wynik + pow(tr,pot);

       // pow(tr,1)-pow( tr,3)+ pow( tr,5 )- pow( tr, 7)
    }
    //ZAD 3
    fstream plik;
    plik.open("wynik1.dat" ,ios::out | ios::app );

    //plik << "y x" << endl;
    plik <<"y="<<wynik <<" x="<< x << endl;
    plik.close();


    // cout <<"LOL"<<endl;
    cout <<"y="<<wynik <<" x="<< x << endl;

    //ZAD 4
    if(x*wynik<0){
        fstream wynik2;
    wynik2.open("wynik2.dat" ,ios::out | ios::app );

    //plik << "y x" << endl;
    wynik2 <<"y="<<wynik <<" x="<< x << endl;
    wynik2.close();

    }


    //wynik =a/b(wynik);
    //cout << "Hello world!" << endl;

     }

    return 0;
}


  • Reklama

Wróć do „Pomoc przy zadaniach domowych”



Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość