не пашет прога - вопрос №843904

#include <iostream>;<br />#include <math.h>;<br />#include <fstream>;<br />using namespace std;<br />int main()<br />{<br /> ofstream f("d://text1.txt");<br /> ofstream g("d://textLamda.txt");<br /> ofstream w("d://text2.txt");<br /> //float E0[1][1];<br /> //float E[1][1];<br /> float J[1][1][1][1000];<br /> double kz1[1000];<br /> double kz2[1000];<br /> double deltak[10000];<br /> double ks[10000];<br /> double hama[10000];<br /> double lamda, pi,fi,psi,no,ne,k0,beta,p,z;<br /> fi=3.14;<br /> no=1.3;<br /> ne=1.6;<br /> pi=3.14;<br /> psi=pi/2;<br /> z=10000;<br /> p=5000;<br /> lamda=300;<br /> beta=2*pi*z/p;<br /> /*E0[0][0]=1.0;<br /> E0[0][1]=0.0;<br /> E0[1][0]=0.0;<br /> E0[1][1]=1.0;*/<br /> int i,m;<br /> float h;<br /> h=0.5;<br /> m=(800-300)/h;<br /> f<<"n0=" <<no <<",ne=" <<ne <<",psi=" <<psi <<", fi=" <<fi <<"\n";<br /> f<<"Z=" <<z <<" P=" <<p <<" beta=" <<beta <<"\n";<br /> double A;<br /> for(i=0;i<1000;i++)<br /> {<br /> kz1[i]=0;<br /> kz2[i]=0;<br /> deltak[i]=0;<br /> ks[i]=0;<br /> }<br /> f<<"---------------------------------------------------------\n";<br /> for(i=0;i<m;i++)<br /> {<br /> f<<"LAMDA=" <<lamda <<"\n\n";<br /> k0=2*pi/lamda;<br /> kz1[i]=k0*pow((pow(no,2)-pow(sin(psi),2)),0.5);<br /> f<<"k0=" <<k0;<br /> f<<"\n" <<"Kz1=" <<kz1[i] <<", ";<br /> A=pow(ne,2)*(pow(no,2)-pow(cos(fi)*sin(psi),2))-pow(no*sin(psi)*sin(fi),2);<br /> kz2[i]=(k0/no)*pow(A,0.5);<br /> f<<"Kz2=" <<kz2[i] <<"\n";<br /> deltak[i]=kz2[i]-kz1[i];<br /> hama[i]=pow(4*pow(beta,2)+pow(deltak[i],2),0.5);<br /> f<<"HAMA=" <<hama[i] <<"\n";<br /> ks[i]=(kz2[i]+kz1[i])/2;<br /> f<<"dK=" <<deltak[i] <<"\n" <<"Kser=" <<ks[i]<<"\n";<br /> lamda=lamda+h;<br /> f<<"\n";<br /> }<br /> for(i=0;i<m;i++)<br /> {<br /> J[0][0][0][i]=cos(2*ks[i]*z)*(cos(beta)*cos(hama[i]/2)+2*(beta/hama[i])*sin(beta)*sin(hama[i]/2))-sin(2*ks[i]*z)*(deltak[i]*z/hama[i])*cos(beta)*sin(hama[i]/2);<br /> J[0][0][1][i]=cos(2*ks[i]*z)*(deltak[i]*z/hama[i])*cos(beta)*sin(hama[i]/2)+sin(2*ks[i]*z)*(cos(beta)*cos(hama[i]/2)+2*(beta/hama[i])*sin(beta)*sin(hama[i]/2));<br /> J[0][1][0][i]=-cos(2*ks[i]*z)*(sin(beta)*cos(hama[i]/2)-2*(beta/hama[i])*cos(beta)*sin(hama[i]/2))-sin(2*ks[i]*z)*(deltak[i]*z/hama[i])*sin(beta)*sin(hama[i]/2);<br /> J[0][1][1][i]=cos(2*ks[i]*z)*(deltak[i]*z/hama[i])*sin(beta)*sin(hama[i]/2)-sin(2*ks[i]*z)*(sin(beta)*cos(hama[i]/2)-2*(beta/hama[i])*cos(beta)*sin(hama[i]/2));<br /> J[1][0][0][i]=cos(2*ks[i]*z)*(sin(beta)*cos(hama[i]/2)-2*(beta/hama[i])*cos(beta)*sin(hama[i]/2))-sin(2*ks[i]*z)*(deltak[i]*z/hama[i])*sin(beta)*sin(hama[i]/2);<br /> J[1][0][1][i]=cos(2*ks[i]*z)*(deltak[i]*z/hama[i])*sin(beta)*sin(hama[i]/2)+sin(2*ks[i]*z)*(sin(beta)*cos(hama[i]/2)-2*(beta/hama[i])*cos(beta)*sin(hama[i]/2));<br /> J[1][1][0][i]=cos(2*ks[i]*z)*(cos(beta)*cos(hama[i]/2)+2*(beta/hama[i])*sin(beta)*sin(hama[i]/2))+sin(2*ks[i]*z)*(deltak[i]*z/hama[i])*cos(beta)*sin(hama[i]/2);<br /> J[1][1][1][i]=-cos(2*ks[i]*z)*(deltak[i]*z/hama[i])*cos(beta)*sin(hama[i]/2)+sin(2*ks[i]*z)*(cos(beta)*cos(hama[i]/2)+2*(beta/hama[i])*sin(beta)*sin(hama[i]/2));<br /> }<br /> for(i=0;i<m;i++)<br /> {<br /> f<<"J[" <<i+1 <<"]=\n";<br /> f<<"(" <<J[0][0][0][i] <<")+i*(" <<J[0][0][1][i] <<")" <<" ("<<J[0][1][0][i] <<")+i*(" <<J[0][1][1][i] <<")\n";<br /> f<<"(" <<J[1][0][0][i] <<")+i*(" <<J[1][0][1][i] <<")" <<" ("<<J[1][1][0][i] <<")+i*(" <<J[1][1][1][i] <<")\n";<br /> }<br /><br /> <br /> <br />return 0;<br />}  Необработанное исключение в "0x01372a5e" в "selectiv reflaction.exe": 0xC0000005: Нарушение прав доступа при записи "0x00340664".
23.11.13
0 ответов
Ответов пока нет
Посмотреть всех экспертов из раздела Технологии > C/C++
Пользуйтесь нашим приложением Доступно на Google Play Загрузите в App Store