Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.188.61.223] |
|
Сообщ.
#1
,
|
|
|
Добрый вечер, нужна помощь в решение задач на фортране. Попытка к решению сделана была, но что-то не пошло, задачи по меркам знающих возможно лёгкие, но я учусь не на программиста), а посему прощу помощи.
Cобственно задачи по ссылке http://s56.radikal.ru/i153/1206/7c/63a06d61457b.jpg а тут попытки решения: №3 program zadanie3 REAL x,d,c,f,P d = 2.31 c = 0.84 x = 0.65 10if (x .ge. 0.10) then f = exp(d/2)*Alog((x**2 + 1.09*10**4*x +c)**(1./3.)) print *,'x=',x,' f=',f x = x-0.05 goto 10 endif 20end program zadanie3 stop Задание №4 program zadanie4 integer i,k(-4:5) real*8 b,c,d,x(-4:5),f(-4:5),v print *, 'vvedite b,c,d' read *,b,c,d !b=7.83 !c=1.69 !d=0.77 do i=-4,5 k(i)=i x(i)=d+0.03*k(i) f(i)=c*(cos(b)**(5./3.))*x(i) + Log10((2.43*x(i))/(10**12)) end do print 10,K,X,F 10format(20X,'Tablica znachenii f(x)'/ *2X,'k',4X,10(3X,I1,3X))/ *2X,'x',4X,10(3X,F5.2,3X)/ *1X,'f',2X,10(1X,F5.2,1X)) end program zadanie4 stop Если кто может, то посмотрите что не так) |
Сообщ.
#2
,
|
|
|
А что тебя в твоих решениях не устраивает?
По 3 1.09*10**4 вообще то пишется так: 1.09E4 Ты используешь IF()THEN/END IF. Почему не пользуешься циклом? В конце цикла x не будет равно точно 0.10, поэтому последнего значения ты можешь не получить. Сравнивай с 0.10 - 1E-4, что-ли. STOP после END писать нет смысла, программа и так остановится. По 4 Объявлена, но не используется переменная V. Для отрицательных чисел спецификация I1 слишком узкая, под знак тоже надо резервировать позицию. Шаг вывода значений (да и другие интервалы) разный (7, 11, 7), таблица будет перекошена. У тебя компилятора фортрана нет? Чтобы твою программу выполнить. |
Сообщ.
#3
,
|
|
|
Есть), просто она не компилировалась, из 4 заданий два получилось, два нет.
|
Сообщ.
#4
,
|
|
|
На будущее.
Цитата Arastor @ Значит компилятор по этому поводу что-то сообщил. И эти сообщения (по крайней мере первые), задавая вопрос, лучше процитировать, иначе разговор получается ни о чем - здесь не техподдержка, нужного компилятора, скорее всего, под рукой не окажется (по крайней мере у меня ни дома, ни на работе фортран не стоит).просто она не компилировалась И вообще проблему лучше описывать, а не предлагать игру в вопросы. |
Сообщ.
#5
,
|
|
|
с третьей задачей всё получилось, но четвёртая ни в какую.
error 58 - Unpaired right bracket(s) error 58 - Unpaired right bracket(s) error 58 - Unpaired right bracket(s) error 699 - Invalid character '*' at start of line error 58 - Unpaired right bracket(s) error 699 - Invalid character '*' at start of line error 32 - Statement not recognised error 90 - FORMAT label 10 does not exist вот эти ошибки, компилятор используемый Plato ide(ftn95). |
Сообщ.
#6
,
|
|
|
Говорит, что у тебя правых скобок больше, чем левых (он еще и строку должен был сообщить).
Ты о правильном размещении текста в строке не забываешь? И какое у тебя расширение у файла? Четвертая задача у тебя написана на FORTRAN-77, где 1-5 позиции отводились под метку, а 6-я под знак продолжения, так что и расширение по идее должно быть .f77 (компилятор умеет в старом формате файлы читать, но ему об этом надо сообщить). А третья особенностей 77 не использует и может быть откомпилирована и в более позднем формате. |