Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int main()
- {
- fstream zad1;
- zad1.open("zad1.csv",ios::out);
- //------------plik-----------------
- if (!zad1.is_open())
- {
- exception("Nie mozna otworzyc pliku \"zad1\"");
- return 0;
- }
- //----------------------------------
- fstream zad2;
- zad2.open("zad2.csv",ios::out);
- //------------plik-----------------
- if (!zad2.is_open())
- {
- exception("Nie mozna otworzyc pliku \"zad2\"");
- return 0;
- }
- //----------------------------------
- double f=15.0;
- double fs=800;
- double ts=2;
- double fi=M_PI/2;
- double N=fs*ts;
- double FIm=0, FIc=0, Am=1.0, Ac=1.0; // stale
- double kAM, kPM; // stale
- //-----ustwawienie_k---------------
- //kAM=0.1;
- //kAM=0.8;
- kAM=1.0;
- //kPM=1.0;
- //kPM=2.1;
- kPM=5.0;
- //----------------------------------
- double fm=30; //stale pm = fi
- double m[1600];
- double c[1600];
- double zAM[1600]; // z(t) dla AM
- double zPM[1600]; // z(t) dla PM
- double amplituda1=0, amplituda2=0;
- double xi1[1600];
- double xi2[1600];
- double zi[1600];
- double max=0;
- for(int t=0;t<=N-1;t++)
- {
- m[t]=Am*(sin(2.0*M_PI*fm*t/fs+fi)); // fi = pm
- }
- for(int s=0;s<=N-1;s++)
- {
- c[s]=Ac*(sin(2.0*M_PI*f*s/fs+fi));
- }
- //----------------------AM--------------------
- for(int r=0;r<=N-1;r++)
- {
- amplituda1 = 1.0+kAM*c[r];
- zAM[r] = amplituda1 * (sin(2.0*M_PI*fm*r+fi));
- //zad1 << r*fs/N << ";" << zAM[r] << "\n";
- amplituda1=0;
- }
- //----------------------PM--------------------
- for(int w=0;w<=N-1;w++)
- {
- zPM[w]=Am*(sin(2.0*M_PI*fm*w+kPM+c[w]));
- //zad2 << w*fs/N << ";" << zPM[w] << "\n";
- }
- //--------------------------------------------
- for(int h=0;h<=N-1;h++)
- {
- zi[h]=(sqrt(zAM[h]*zAM[h]+zPM[h]*zPM[h]));
- xi1[h]=10*log(zi[h]*zi[h]);
- //zad2 << h*fs/N << ";" << xi1[h] << "\n";
- }
- // obliczanie maxa w tablicy xi1
- for(int d=0;d<=1600-1;d++)
- {
- if(xi1[d]>max)
- {
- max=xi1[d];
- }
- }
- for(int p=0;p<=N-1;p++)
- {
- xi2[p]=xi1[p]-max;
- //zad1 << p*fs/N << ";" << xi2[p] << "\n";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement