Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330

Открыть новую тему     Написать ответ в эту тему

akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обсуждаются все вопросы, связанные с программированием на ФОРТРАН, как общего так и конкретного характера.
Постарайтесь дать как можно больше информации о возникшей проблеме -- это в конце концов в ваших же интересах чтобы вам помогли...

прежде чем просить помощи в задании
платное решение задач

ресурсы этого топика
ссылка на подборку ресурсов, собранных посетителями этого форума
 
то, чем мы решили поделиться
ссылка на страничку программ etc собственного изготовления, которыми любезно делятся наши форумчане


если вам вдруг не отвечают или ответ вас не устраивает
и вообще полезно прочитать всем спрашивающим
 
просьба к пишущим и отвечающим все большие листинги оформлять тегом more
и отключать графические смайлики при размещении фортран-кода

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 18:11 14-01-2007 | Исправлено: akaGM, 09:47 01-03-2020
pir0texnik2



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
поставил в х64 IFC и перестроил dll в х86 конфигурации(проект такой же как был в х86)... заработало. интересно как теперь будет в xp x86...
 
Добавлено:
akaGM
STDCALL - для меня это не совсем т.к. я передаю в обе стороны массивы для функций длл, поэтому имно проще работать с указателями.

Цитата:
но второе рано-поздно должно сломаться...

Почему?

Всего записей: 173 | Зарегистр. 27-02-2008 | Отправлено: 21:33 16-11-2010
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pir0texnik2

Цитата:
STDCALL - для меня это не совсем  

Цитата:
typedef void (__stdcall *sub_fortran_1) (double*)

тогда ты обязан форовскую п/п объявить как STDCALL...

Цитата:

Цитата:
но второе рано-поздно должно сломаться...
Почему?

потому что
Цитата:
STDCALL     Default
Caller stack cleanup     No     Yes
эти способы вызова по-разному обрабатывают стек, в сях ты заставил "чистить" стек вызываемую функу, в Ф -- вызывающую, а при несогласовании этого рано или поздно стек сломается,
т.к. конкретно в твоём раскладе его не чистит никто...
обычно это трудноопределяемая ошибка переполнения стека (она вообще может не проявиться за время жизни программы), т.к. при каждом вызове он уменьшается на размер равный адресу точки возврата в вызывающую п/п + размер передаваемой информации
в 32-бите для f(double *x) это будет равно = 4байта на вызов + 4байта на указатель, т.е. 8 байт
ну и сломаться это должно где-то на половине твоей оперативки (стек растёт снизу), сколько в них по 8 байтов влезет?
так что тебе везло пока :)

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 12:22 17-11-2010 | Исправлено: akaGM, 12:40 17-11-2010
pigagasi

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем Привет составил программу при компиляции выдаёт 2 ошибки никак немогу найти помоги плз(  
PROGRAM PARAMETRES KC
 
      c     PROGRAM PARAMETRES K
      dimension p(10), m(10)
      dimension c(10), b(10), a(10), av(10), bv(10), rk(10), rd(10)
      dimension rk1(10), rk2(10), rk3(10), rd1(10), rd2(10)
      dimension as(10), bs(10), rs1(10), rs2(10), rs(10), ss(10)
       
       real  alfaz, BCH, alfa, ah, bh, ch  
       real  T, TL, TR, m, musum
 
       pk=16
       pc=0.045
       tl=3800
       tr=4000
       alfaz=0.75
       BCH=0
       B2=4
       R0=8.314
               
        T1=3800
        T2=3900
        T3=4000
         
        m(1)=44.0103        
        m(2)=18.054        
        m(3)=28.0109        
        m(4)=17.0074        
        m(5)=2.016        
        m(6)=31.9988        
        m(7)=1.008        
        m(8)=15.9994        
         
        rk1(1)=3.334        
        rk2(1)=4.141
        rk3(1)=5.087
        rk1(2)=0.4017
        rk2(2)=0.4951
        rk3(2)=0.6042
        rk1(3)=0.578
        rk2(3)=0.7343
        rk3(3)=0.9217
        rk1(4)=1.212
        rk2(4)=1.763
        rk3(4)=2.519
        rk1(5)=1.073
        rk2(5)=1.624
        rk3(5)=2.408
 
        rd1(1)=-45164.4
        rd2(1)=-42098.6
        rd1(2)=-17438.7
        rd2(2)=-14782.8
        rd1(3)=3133.4
        rd2(3)=4934.4
        rd1(4)=38729.1
        rd2(4)=40556.6
        rd1(5)=28491
        rd2(5)=36350.5
        rd1(6)=31254.7
        rd2(6)=33234.8
        rd1(7)=69503.6
        rd2(7)=70497.2
        rd1(8)=76722
        rd2(8)=77738.1
 
        rs1(1)=83.4963        
        rs2(1)=84.2826
        rs1(2)=71.3609
        rs2(2)=72.0420
        rs1(3)=67.5738
        rs2(3)=68.0357
        rs1(4)=63.4966
        rs2(4)=63.9652
        rs1(5)=50.6097
        rs2(5)=51.0866
        rs1(6)=70.2756
        rs2(6)=70.7834
        rs1(7)=40.0368
        rs2(7)=40.2910
        rs1(8)=51.2846
        rs2(8)=51.5452
     
        do i=1,5
            s1=(rk1(i)-rk2(i))/(T1-T2)
            s2=(rk1(i)-rk3(i))/(T1-T3)
            s3=1/(T2-T3)  
            c(i)=(S1-S2)*S3
            b(i)=(rk2(i)-rk1(i)-c(i)*(T2*T2-T1*T1))/(T2-T1)
            a(i)=rk1(i)-b(I)*T1-c(i)*T1*T1                                                
        end do
 
        do i=1,8
           av(i)=rd1(i)-(rd1(i)-rd2(i))/(T1-T3)*T1
           bv(i)=(rd1(i)-rd2(i))/(T1-T3)
           as(i)=rs1(i)-(rs1(i)-rs2(i))/(T1-T3)*T1
           bs(i)=(rs1(i)-rs2(i))/(T1-T3)                                                
        end do
 
        write(*,*)'T='
        read(*,*) T
        do i=1,5
        rk(i)=a(i)+b(i)*T+c(i)*T*T
 
        end do        
           
       ah=2*BCH+1
           bh=(BCH+1)*sqrt(rk(4))
           ch=-Pk
           x1=(-bh+sqrt(bh**2-4*ah*ch))/(2*ah)
                 
        if (x1.gt.0) then
           PH2R=x1**2
           write(*,*)'vernoe znachenie PH2max', PH2R    
        else if (x1.le.0) then
             stop
          stop
       end if
      PH2L=0
 
5     PH2=(PH2L+PH2R)/2
 
      Q=(-1)*(2*BCH+1)*PH2-(BCH+1)*sqrt(rk(4)*PH2)+Pk
      W=(2*BCH+1)/rk(2)*PH2+(BCH+1)*rk(3)/rk(2)*sqrt(PH2)+sqrt(rk(5))
      write(*,*)'q',q,'w',w
      Y1=(-1)*W/2+sqrt(W*W/4+Q)
             
      if (Y1.gt.0) then          
         PO2=Y1**2
         else if (Y1.le.0) then
         stop
      end if
      PH2O=PH2*sqrt(PO2)/rk(2)
      POH=rk(3)/rk(2)*sqrt(PH2*PO2)
      PH=sqrt(rk(4)*PH2)      
      PO=sqrt(rk(5)*PO2)
      PCO2=BCH*(2*PH2O+POH+2*PH2+PH)/(1+rk(1)/sqrt(PO2))
    PCO=(rk(1)*PCO2)/sqrt(PO2)        
       
       p(1)=PCO2
       p(2)=PH2O
       p(3)=PCO
       p(4)=POH
       p(5)=PH2
       p(6)=PO2
       p(7)=PH
       p(8)=PO
 
        PS=0
       do i=1,8
          PS=PS+p(i)
       end do      
 
       DP=(Pk-PS)/Pk
       IF (DP.GT.0.05) THEN
          stop
          END IF
 
      alfa=((2*PCO2+PCO+2*PO2+PH2O+POH+PO)/(2*PH2O+2*PH2+POH+PH))*B2
      dalfa=ABS((alfa-alfaz)/alfaz)
 
      if (dalfa.le.0.01) then
         write(*,*)'dlya dannoi temperatury sostav opredelen',T
         go to 10
         else if (alfa.lt.alfaz) then
            PH2R=PH2
            go to 5
            else  
            PH2L=PH2
            go to 5
         end if
 
10     SioP=0
       SmP=0
      do i=1,8
         rd(i)=av(i)+bv(i)*T
         SioP=SioP+rd(i)*p(i)
         SmP=SmP+m(i)*p(i)
       end do
      Siod=SioP/SmP
         
      ssum=0
      do i=1,8
         rs(i)=as(i)+bs(i)*T
         ss(i)=p(i)*(rs(i)-4.57*LOG10(p(i)))
         ssum=ssum+ss(i)
      end do      
      SumSk=ssum/SmP
       
      musum=SmP/PS
      R=R0/musum
      write(*,*)'entropiia', SumSk,'   myu',musum,'   R', R
       
      open(1,file='REZULTGGG.txt')
      write(1,*)'параметры камеры'
      write(1,*)'температура  T', T
      write(1,*)'энтальпия I', Siod
      write(1,*)'энтропия S', SumSk
      write(1,*)'молекулярная масса пс', musum
      write(1,*)'газовая постоянная R', R
       DO i=1,5
      write(1,*)'константа реакции для i=', i,'   k=', rk(i)
      end do
      do i=1,8
 
      write(1,*)'энтальпия для i=', i,'   rd=', rd(i)
      end do
      do i=1,8
         write(1,*)'давление для', i, p(i)
      end do
          close(1)
                 
    pause
       end
 

Всего записей: 3 | Зарегистр. 17-11-2010 | Отправлено: 17:42 17-11-2010 | Исправлено: pigagasi, 17:44 17-11-2010
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pigagasi
а слабо было ошибки привести?
наверняка  с форматом что-то не то...
пиши комментарий ! и используй расширение файла .f90 или _строго_ следуй
правилам форматирования стандарта Ф66-77 (за этим уже в учебник)...
 
---
длинные листинги оформляются тегом more
http://i.ru-board.com/codes.html

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 17:57 17-11-2010 | Исправлено: akaGM, 18:02 17-11-2010
XPEHOMETP

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pigagasi
У Вас как бы есть неявное описание типа, причем активно используется. Массивчикам, объявляемым в самом начале, задается размер, но не тип переменной. Поэтому по умолчанию массивы m(10) и p(10) - они целочисленные, а Вы в них пытаетесь запихнуть дробные данные. Отсюда, наверно, и ошибка. Описывайте тип каждой используемой переменной!

Всего записей: 2485 | Зарегистр. 21-06-2005 | Отправлено: 18:04 17-11-2010
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
XPEHOMETP
да не, на уровне компиляции это всё хавается
а вот "c"  в заголовке и ещё пара строк явно отскочила...
 
pigagasi, в следующий раз _обязательно_ приводи сообщения об ошибках, экономь
своё и наше время...

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 18:09 17-11-2010
pigagasi

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Парни а ещё не подскажите фортран на винду 7 32 можно поставить? а то ставил запускается норм как дело доходит до компиляции закрывается сразу с ошибкой ..

Всего записей: 3 | Зарегистр. 17-11-2010 | Отправлено: 18:24 17-11-2010
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pigagasi
у меня IF32 как миленький пашет, и о связке компилятор/среда/ОСь лучше вот здесь спрашивай:
http://forum.ru-board.com/topic.cgi?forum=33&topic=4836#1
 
а в нашем топе непосредственно программирование...

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 18:44 17-11-2010 | Исправлено: akaGM, 18:52 17-11-2010
pir0texnik2



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM

Цитата:
тогда ты обязан форовскую п/п объявить как STDCALL...

так не работает тогда ничего! эксес вайолейшн!
я вообще убрал __stdcall  из вызова - работает. собсно, я что-то ничего не нашел по поводу calling convention для билдера, аналогичного интеловскому мануалу "ATTRIBUTES C and STDCALL
" с табличкой, поэтому что он делает не сильно понятно, но работает...  
Стек я тоже что-то не вижу, где тут в билдере смотреть, но в call stack - ничего лишнего и кодегард не ругается.
Кстати, почему стек должен быть в пол ОЗУ? Я ведь могу задать его мах размер в опциях линкера.
В общем сделал простой эксперимент -- вызвал ф-цию около 15000 раз (с и без __stdcall). Все нормально, нигде память, судя по диспетчеру задач, не утекла, хотя на 1 вызов у меня приходится около 60 байт, а размер стека в линкере стоит минимальный(0x00010000).

Всего записей: 173 | Зарегистр. 27-02-2008 | Отправлено: 06:03 18-11-2010
Lapochka ili Chai



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Народ, а вот такой интересный вопрос: как грамотно пересылать свои структуры через MPI?
Как их грамотно бродкастить?
Неужели для каждой своей структуры мне придётся переписывать весь инструментарий MPI?
 
Структурой я здесь для краткости называю "производный тип данных" (derived type). И объекты этого типа. Ну, то есть у меня два вопроса:
 
1. как пересылать через MPI объекты производных типов?
2. неужели для каждого производного типа мне придётся писать весь фукнционал MPI для этого типа?

Всего записей: 847 | Зарегистр. 27-11-2003 | Отправлено: 06:27 18-11-2010 | Исправлено: Lapochka ili Chai, 06:36 18-11-2010
Vskazka

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Lapochka ili Chai

Цитата:
 
1. как пересылать через MPI объекты производных типов?  
2. неужели для каждого производного типа мне придётся писать весь фукнционал MPI для этого типа?  

Конечно нет, если я правильно понимаю Ваш вопрос.  
см например
Корнеев В.Д.     Параллельное программирование в MPI  
можно скачать электронный вариант в library genesis, например  
http://free-books.dontexist.com/
наберете там корнеева и найдете. Есть книжка там, только что смотрел. Там в седьмой главе об этом, в частности, написано. 7.4 - использование производных типов данных  
 
Вообще, это вполне приличная книжка для написания программ под MPI. Можно оттуда все надергать, при распараллеливании алгоритма и программы (когда не очень заумная схема).  

Всего записей: 382 | Зарегистр. 24-11-2003 | Отправлено: 08:12 18-11-2010 | Исправлено: Vskazka, 08:22 18-11-2010
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pir0texnik2

Цитата:
так не работает тогда ничего!  эксес вайолейшн!

конечно не работает...

Код:
typedef void (__stdcall *sub_fortran_1) (double*);
этому тайпдефу соотвествует след. фор-интерфейс, кот. ты так здесь и не привёл
 
subroutine fnc (X)
      implicit none
 
*DEC$ ATTRIBUTES STDCALL, DLLEXPORT :: fnc
*DEC$ ATTRIBUTES ALIAS : '_fnc' :: fnc
*DEC$ ATTRIBUTES REFERENCE :: X !потому что в stdcall передаётся по значению
 
      real*8 X
...

Цитата:
Кстати, почему стек должен быть в пол ОЗУ?

это я так, с потолка...

Цитата:
Я ведь могу задать его мах размер в опциях линкера.

можешь...

Цитата:
Стек я тоже что-то не вижу, где тут в билдере смотреть
В общем сделал простой эксперимент -- вызвал ф-цию около 15000 раз (с и без __stdcall).

открой окно CPU/Registers и следи за регистром ESP (stack pointer)
если после вызова подпрограммы его значение изменилось, то у тебя есть нестыковка, о кот. я тебе здесь рассказываю, если нет, то я не прав :)

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 14:10 18-11-2010
pir0texnik2



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
akaGM

Цитата:
открой окно CPU/Registers и следи за регистром ESP (stack pointer)  
если после вызова подпрограммы его значение изменилось, то у тебя есть нестыковка, о кот. я тебе здесь рассказываю, если нет, то я не прав

не меняется....

Всего записей: 173 | Зарегистр. 27-02-2008 | Отправлено: 21:28 18-11-2010
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
pir0texnik2
ну и славно...
значит, борландовая __stdcall == дефолтному соглашению IF, только и всего...
кстати, никогда не юзал BCB :)

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 21:53 18-11-2010
Lapochka ili Chai



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vskazka

Цитата:
Корнеев В.Д.     Параллельное программирование в MPI  
можно скачать электронный вариант в library genesis, например  

 
Огромное спасибо!
 
А что отвечать на запрос:

Цитата:
«http://free-books.dontexist.com» запрашивает имя пользователя и пароль. Сайт говорит: «Enter login and password»

Пардон, всё скачалось -- потыкал мышкой по разным точкам на веб-страничке, и тогда скачалось!
Ещё раз спасибо!

Всего записей: 847 | Зарегистр. 27-11-2003 | Отправлено: 05:34 19-11-2010 | Исправлено: Lapochka ili Chai, 05:42 19-11-2010
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть функция
Код:
DOUBLE PRECISION FUNCTION FUNC(I,X)
, где параметр X также объявлен как DOUBLE PRECISION. Если же вместо X передавать целые, скжем, J, то функция получает неправильный параметр, то есть величина обрезается почти до нуля. Как этого избежать? Пытался использовать и DBLE(J), и REAL(J) --- один результат(
 
Спасибо!

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3604 | Зарегистр. 08-02-2003 | Отправлено: 09:13 19-11-2010
Andrew10

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TeXpert
Должно работать!
 
REAL(8)  Y
INTEGER I, J
REAL(8) FUNC
 
 . . . . . . .
Y = FUNC ( I, DBLE( J))
. . . . . . .  
 
Если нет, пришли кусок кода с объявлениями переменных и вызовом функции

Всего записей: 780 | Зарегистр. 26-02-2005 | Отправлено: 12:54 19-11-2010
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TeXpert
в вызывающей программе используй интерфейс (типа Сишный прототип)
Код:
 
      interface
        real*8 function FUNC(I, X)
          integer*4 I
          real*8 X
 
! или 90-ый стандарт, я не знаю что у тебя входное/выходное:
          integer(4), intent(inout) :: I ! intent(in) или intent(out)
          real(8), intent(inout) :: X ! intent(in) или intent(out)
 
        end function FUNC
      end interface


Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 13:43 19-11-2010 | Исправлено: akaGM, 15:40 19-11-2010
Igorr

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Andrew10
Цитата:
Y = FUNC ( I, DBLE( J))

Нет, так нельзя - из иписания DBLE:
Цитата:
These specific functions cannot be passed as actual arguments.

Всего записей: 2003 | Зарегистр. 01-05-2002 | Отправлено: 17:18 19-11-2010
akaGM

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Igorr

Цитата:
Y = FUNC ( I, DBLE( J))

ты не прав, так можно, т.к. тут передаётся _значение функции_, а не она сама (её адрес) в качестве _актуального аргумента_

Всего записей: 24107 | Зарегистр. 06-12-2002 | Отправлено: 17:47 19-11-2010
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы программирования на FORTRAN (ФОРТРАН)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru