Računarski Alati

Click here to edit subtitle

Drugi Domaci

Nacrtati algoritam i napisati funkcijski potprogram koji realni niz brojeva A dimenzije n (niz se učitava u glavnom programu), prepakuje tako da redosled članova niza bude rastući. Zatim se udvostruče sve vrednosti koje su manje od 1. I na kraju odštampa takav niz, a glavnom programu vraća se kao vrednost funkcije vrednost za koliko se suma niza povećala u odnosu na sumu polaznog niza. Napisati i glavni program.

Glavni program

 

program domaci

dimension a(100)

print*,'unesite broj clanova u niza'

read*,n

print*,'unesite vrednosti clanova '

read*,(a(i),i=1,n)

r=raz(a,n)

print*,'nova suma je',r

print*,'nov niz je',(a(i),i=1,n)

end

Funkcijski potprogram

 

function raz(a,n)

dimension a(100)

do i=1,n-1

do j=i+1,n

if(a(i).gt.a(j)) then

tmp=a(i)

a(i)=a(j)

a(j)=tmp

end if

end do

end do

spre=0

sposle=0

do i=1,n

spre=spre+a(i)

if(a(i).lt.1) then

a(i)=a(i)*2

sposle=sposle+a(i)

else

sposle=sposle+a(i)

end if

end do

raz=sposle-spre

return

end