Tetragrammaton
Διάσημο μέλος
Ο Site Bot αυτή τη στιγμή δεν είναι συνδεδεμένος. Είναι 35 ετών, επαγγέλεται Συνταξιούχος και μας γράφει απο Πειραιάς (Αττική). Έχει γράψει 2,671 μηνύματα.
30-08-08
10:23
Ναι, εκεί κρασάρει. Απλώς κανει Overflow και κολλάει, τερματίζεται μόνο του.
Σημείωση: Το μήνυμα αυτό γράφτηκε 15 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Tetragrammaton
Διάσημο μέλος
Ο Site Bot αυτή τη στιγμή δεν είναι συνδεδεμένος. Είναι 35 ετών, επαγγέλεται Συνταξιούχος και μας γράφει απο Πειραιάς (Αττική). Έχει γράψει 2,671 μηνύματα.
29-08-08
22:18
Νοουπ, σειμ ολντ σιτ.
Σημείωση: Το μήνυμα αυτό γράφτηκε 15 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.
Tetragrammaton
Διάσημο μέλος
Ο Site Bot αυτή τη στιγμή δεν είναι συνδεδεμένος. Είναι 35 ετών, επαγγέλεται Συνταξιούχος και μας γράφει απο Πειραιάς (Αττική). Έχει γράψει 2,671 μηνύματα.
29-08-08
21:59
Έχω το παρακάτω πρόγραμμα. Δεν υπάρχουν καθόλου συντακτικά λάθη, το compilation γίνεται κανονικά. Παρόλα αυτά, όταν πάω να το τρέξω, μόλις πάω να δηλώσω το πλήθος των σημείων που θα εισάγω, κρασάρει λέγοντας ότι κάποια arrays έκαναν overflow. Όμως κανένα array εν προκειμένω δεν έχει χρησιμοποιηθεί, πόσο μάλλον να υπερχειλήσει. Έχει κανείς καμιά ιδέα;
Σημείωση:
Τα μηνύματα 5 έως 10 προέρχονται από το συγχωνευμένο θέμα "Βοήθεια σε Visual Fortran".
Code:
program newton
implicit none
real::x(10),y(10),d1(10),d2(10,10),d3(10,10,10),d4(10,10,10,10),d5(10,10,10,10,10),d6(10,10,10,10,10,10),d7(10,10,10,10,10,10,10),g(10)
integer::i,j1,j2,j3,j4,j5,j6,j7,j8,j9,j10,k,n,mode
write(*,*)'Grapse 1 an 8es na leitourgiseis me synartisi, i 2 an 8es na dwseis me ti seira ta zeygaria x,y'
read(*,*) mode
write(*,*)'Dwse ton ari8mo twn simeiwn'
read(*,*) n
if(mode==1) then
write(*,*)'Dwse tis tetmimenes twn simeiwn'
do i=0,n
read(*,*) x(i)
y(i)=x(i)**2
end do
else
write(*,*)'Dwse ta zeygi twn syntetagmenwn twn simeiwn'
do i=0,n
read(*,*) x(i),y(i)
end do
end if
write(*,*)'Exoume ta e3is simeia'
do i=0,n
write(*,*)x(i),y(i)
end do
do j1=0,n-1
d1(j1)=y(j1+1)
end do
do j2=0,n-1
d2(j2+1,j2)=(d1(j2+1)-d1(j2))/(x(j2+1)-x(j2))
end do
do j3=0,n-2
d3(j3+2,j3+1,j3)=(d2(j3+2,j3+1)-d2(j3+1,j3))/(x(j3+2)-x(j3))
end do
do j4=0,n-3
d4(j4+3,j4+2,j4+1,j4)=(d3(j4+3,j4+2,j4+1)-d3(j4+2,j4+1,j4))/(x(j4+3)-x(j4))
end do
do j5=0,n-4
d5(j5+4,j5+3,j5+2,j5+1,j5)=(d4(j5+4,j5+3,j5+2,j5+1)-d4(j5+3,j5+2,j5+1,j5))/(x(j5+4)-x(j5))
end do
do j6=0,n-5
d6(j6+5,j6+4,j6+3,j6+2,j6+1,j6)=(d5(j6+5,j6+4,j6+3,j6+2,j6+1)-d5(j6+4,j6+3,j6+2,j6+1,j6))/(x(j6+5)-x(j6))
end do
do j7=0,n-6
d7(j7+6,j7+5,j7+4,j7+3,j7+2,j7+1,j7)=(d6(j7+6,j7+5,j7+4,j7+3,j7+2,j7+1)-d6(j7+5,j7+4,j7+3,j7+2,j7+1,j7))/(x(j7+6)-x(j7))
end do
g(0)=d1(0)
g(1)=d2(1,0)
g(2)=d3(2,1,0)
g(3)=d4(3,2,1,0)
g(4)=d5(4,3,2,1,0)
g(5)=d6(5,4,3,2,1,0)
g(6)=d7(6,5,4,3,2,1,0)
do k=0,6
write(*,*)g(k)
end do
end
Σημείωση:
Τα μηνύματα 5 έως 10 προέρχονται από το συγχωνευμένο θέμα "Βοήθεια σε Visual Fortran".
Σημείωση: Το μήνυμα αυτό γράφτηκε 15 χρόνια πριν. Ο συντάκτης του πιθανόν να έχει αλλάξει απόψεις έκτοτε.