polaki899 32 Opublikowano 24 września 2011 Opublikowano 24 września 2011 Możecie drodzy kąsolowcy sprawdzić czy ten kod z Matlaba jest prawidłowy jest to kod na zaliczenie i bardzo mi zleży aby działał. Liczę na waszą pomoc clc, clear fprintf('program tablicuje wybrane (programowo) wartości funkcji elementarnych\n'); fprintf('y1(x)=x^2\n y2(x)=x^3\n y3(x)=e^x\n') fprintf('dla x w zakresie <xp;xk> z krokiem delx oraz oblicza sumę tablicowanych wartości funcji w kolumnach\n') xp=input('xp='); xk=input('xk='); delx=input('delx='); nazwa=input('nazwa pliku wyników: ','s'); s1=0; s2=0; s3=0; % zerujemy sumy i=1 %definiujemy indeks startowy wektorów y1, y2, y3 i x x(i)=xp; % nadajemy pierwszą wartość x-owi plik=fopen(nazwa,'w'); %zakładamy plik fprintf(plik,'Tablicowanie wartości wybranych funcji elementarnych w zakresie od xp do xk co delx.\r\nJednocześnie obliczanie sumy tablicowanych funcji w kolumnach.\r\n'); fprintf(plik,'\r\nDane:\r\n'); fprintf(plik,%5s %8.3f\r\n','delx=',delx); fprintf(plik,%5s %8.3f\r\n','delx=',delx); fprintf(plik,%5s %8.3f\r\n\r\n','delx=',delx); fprintf('\n%6s %12s %12s %12s %12s\n\n','Lp','x','x^2','x^3','e^x'); fprintf(plik,'%6s %12s %12s %12s %12s\r\n\r\n','Lp','x','x^2','x^3','e^x'); while x(i)<=xk y1(i)=x(i)^2; y2(i)=x(i)^3; y3(i)=exp(x(i)); fprintf('%6d %12.3f %12.3f %12.3f %12.3e\n',i,x(i),y1(i),y2(i),y3(i); fprintf(plik,'%6d %12.3f %12.3f %12.3f %12.3e\r\n',i,x(i),y1(i),y2(i),y3(i)); if x(i)+delx>xk % dodatkowy warunek break % przerwanie pętli while end x(i+1)=x(i)+denx; i=i+1 end s1=sum(y1); s2=sum(y2); s3=sum(y3); fprintf('\n'); fprintf(' Suma(x^2)= %12.3f\n',s1); fprintf(' Suma(x^3)= %12.3f\n',s2); fprintf(' Suma(e^x)= %12.3e\n',s3); fprintf(plik,'\r\n'); fprintf(plik,' Suma(x^2)= %12.3f\n',s1); fprintf(plik,' Suma(x^3)= %12.3f\n',s2); fprintf(plik,' Suma(e^x)= %12.3e\n',s3); fclose(plik); %zamknięcie pliku wyników clf subplot(1,3,1) plot(x,y1) xlabel('x[-]'), ylabel('y[-]'), legend('y=x^2') subplot(1,3,2) plot(x,y2) xlabel('x[-]'), ylabel('y[-]'), legend('y=x^3') subplot(1,3,3) plot(x,y3) xlabel('x[-]'), ylabel('y[-]'), legend('y=e^x') Cytuj
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.
Uwaga: Twój wpis zanim będzie widoczny, będzie wymagał zatwierdzenia moderatora.