Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Реализация задачи на Fortran'е

9.9K
10 февраля 2007 года
o1ps
51 / / 11.10.2006
Уважаемые пользователи форума. Помогите пожалуйста мне с реализацией приведенной ниже задачи на языке программирования FORTRAN. Буду очень признателен если вы оставите в этой теме исходник программы или отправите его мне на мыло [email]ize@bk.ru[/email].
Вот сам текст задачи :

Организовать вычисления в диалоге по схеме:
1. Вывод приглашения к диалогу.
2. Ввод исходных данных.
3. расчет и вывод результатов.
4. Запрос на повторение результатов. Если не повторять, то конец работы; если повторять, то пе-реход к п.1.
Вычислить:
1. Себестоимость валовой продукции по формуле:
S = C - S1 + S2 + S3 + S4,
где C - общие затраты на производство; S1 - затраты, списанные на непроизводительные счета; S2 - изменение остатка по счету расходов будущих периодов; S3 - изменение остатка незавершенного производства; S4 - изменение остатка по счету предстоящих расходов. Установить, как получен-ная себестоимость соотносится с заданным Y, и соответствующее сообщение напечатать?
2. Балансовую прибыль по формуле:
PБ = PP + PПP + PВН - S,где PP - прибыль от реализации товарной продукции; PПP - результат от прочей реализации; PВН - нереализационные результаты. Проверить, попадает ли полученная прибыль в заданный интер-вал [A,B].
3. Расчетную прибыль по формуле:
PРС = PБ - PФ - PК,где PБ - прибыль балансовая; PФ - фиксированные (рентные) платежи; PК - плата по процентам за кредит. Проверить, попадает ли расчетная прибыль в заданный интервал [A,C].

-------------
И буду очень признателен, если вы покажете мне фрагмент кода, где реализованно условие 2, т.е. принадлежность выражения к определенному интервалу.
Большое спасибо.
9.9K
13 февраля 2007 года
o1ps
51 / / 11.10.2006
Видимо никто не поможет..
9.9K
15 февраля 2007 года
o1ps
51 / / 11.10.2006
Какие могут быть доработки в данном коде? Приложите руку мастера.

program lr3

character povtor
character(16), parameter :: input1='Please, input z '
character(16), parameter :: input2='Please, input b '
character(16), parameter :: input3='Please, input c '
character(16), parameter :: input4='Please, input d '
character(16), parameter :: input5='Please, input e '
character(16), parameter :: input6='Please, input f '
character(16), parameter :: input7='Please, input g '
character(16), parameter :: input8='Please, input h '
character(16), parameter :: input9='Please, input i '
character(16), parameter :: input10='Please, input j '
character(16), parameter :: input11='Please, input k '
character(16), parameter :: input12='Please, input l '
character(16), parameter :: input13='Please, input m '
character(16), parameter :: input14='Please, input n '
character(16), parameter :: input15='Please, input o '
character(16), parameter :: input16='Please, input p '

integer a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p

data k/.false./
write(*, '(T10,8hHello!!!, //)')

1 write(*,'(T10,a,//)')'Laboratory work'

write(*,'(1x,tl5,a,\)')input1
read(*,'(i, bn)') a
2 write(*,'(1x,tr1,a,\)')input2
read(*,'(i, bz)') b
if (b==0) goto 2
write(*,'(1x,tr3,a,\)')input3
read(*,'(i)') c

write(*,'(1x,tl5,a,\)')input4
read(*,'(i, bn)') d
3 write(*,'(1x,tr1,a,\)')input5
read(*,'(i, bz)') e
if (e==0) goto 3
write(*,'(1x,tr3,a,\)')input6
read(*,'(i)') f


write(*,'(1x,tl5,a,\)')input7
read(*,'(i, bn)') g
4 write(*,'(1x,tr1,a,\)')input8
read(*,'(i, bz)') h
if (h==0) goto 4
write(*,'(1x,tr3,a,\)')input9
read(*,'(i)') i

write(*,'(1x,tl5,a,\)')input10
read(*,'(i, bn)') j
5 write(*,'(1x,tr1,a,\)')input11
read(*,'(i, bz)') k
if (k==0) goto 5
write(*,'(1x,tr3,a,\)')input12
read(*,'(i)') l

write(*,'(1x,tl5,a,\)')input13
read(*,'(i, bn)') m
6 write(*,'(1x,tr1,a,\)')input14
read(*,'(i, bz)') n
if (n==0) goto 6
write(*,'(1x,tr3,a,\)')input15
read(*,'(i)') o


write(*,'(1x,tl5,a,\)')input16
read(*,'(i, bn)') p

z=b-c+d+e+f
if (z>g) then
Print *, 'a bolshe g'
else if (z<g) then
Print *, 'a menshe g'
else
Print *, 'a ravno g'
End if

h=i+j+k-z
if (l.lt.h.lt.m) then
print *, ' h prinadlegit intervaly [a,b] '
end if

n=h-o-p
if (l.lt.h.lt.b) then
print *, ' h prinadlegit intervaly [a,c] '
end if

print*
print*,'=================================='
print*

print*
write(*,'(1x,a,\)')'Do you want to repeat calculations? '
read*, povtor
select case (povtor)
case ('YES','yes','Yes','Y','y')
write(*,'(//,a,/)')'========================================='
goto 1
end select

end
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог