This is an old revision of the document!


Postavka problema

Date su datoteke analiza1.txt, analiza2.txt i analiza3.txt. Sve tri sadrže vrednosti neke 3 funkcije (svaka u svojoj datoteci) u tačkama 0.01, 0.02, 0.03, … , 1.0 . Učitati podatke iz ovih file-ova i nacrtati grafik(sa naslovom, legendom) koji pokazuje koliko se vrednosti prve i treće funkcije razlikuju od vrednosti druge u svakoj tački u kojoj ih imamo definisane. Rešenje dati u vidu m skripte. Pri tom napraviti i m skriptu za random generisanje datoteka sa vrednostima.


Resenje

Funkcija za generisanje proizvoljnih vrednosti i upisivanje u datoteku

U opstem slucaju, matrica tipa m x n se puni proizvoljnim vrednostima iz intervala (0,1) pomocu funkcije rand(m,n); Za m=n=1, generisace se, prakticno, jedan broj1). Ako zelimo da nam vrednosti matrice M budu u opsegu (a,b) onda se koristimo izrazom

M = a - (a-b)*rand(m,n)

ili

M = b + (a-b)*rand(m,n)

Upisivanje promenljive A u datoteku naziva dat.txt vrsi se sledecom komandom:

 save dat.txt A 

Prema tome, pomocna skripta u zadatku ima sledeci oblik:

pomocna.m
% generisanje proizvoljnih vrednosti
% i njihovo upisivanje u datoteku
 
A=100-50*rand(101,1);
save analiza1.txt A;
B=100-50*rand(101,1);
save analiza2.txt B;
C=100-50*rand(101,1);
save analiza3.txt C;

Glavna skripta

Prvo je potrebno ucitati vrednosti funkcija naredbom load. Naime, ako zelimo da ucitamo promenljivu A iz datoteke dat.txt, dovoljno ja napisati sledeci red:

 load dat.txt A

Razlika prve i druge funkcije, A i B, smestice se u vektor AB = A - B. Isto vazi i za funkcije B i C. Te razlike mozemo prikazati na grafiku, i to sledecom naredbom:

 plot(domen,AB,'r',domen,BC,'b');

Domen je odredjen kao domen=0:1:100, a 'r' i 'b' oznacavaju boje odgovarajucih grafika. Glavna skripta, prema tome, ima oblik:

glavna.m
% Razlike 
%
 
load analiza1.txt A;
load analiza2.txt B;
load analiza3.txt C;
 
AB=A-B;
BC=C-B;
 
domen=0:1:100;
 
plot(domen,AB,'r',domen,BC,'b'); 
title('Odstupanje funkcije B od A i C');
xlabel('X');
ylabel('Odstupanje');
legend('A-B','C-B');
grid on

Komande title, xlabel, ylabel, legend i grid on podesavaju grafik.

1) Octave cak i skalare smatra vektorima dimenzija 1×1
 
zadatak_1.1328275290.txt.gz · Last modified: 2012/02/03 14:21 by milos.simic
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki