Мне нужно рассчитать комиссионные за разные интервалы продаж в разные дни и сформировать таблицу «День», «Продажи», «Комиссионные». До сих пор я сделал это:Fortran 90 Ошибка массива символов
real::a(5),b(5)
character(10)::c(5)=(/Sunday,Monday,Tuesday,Wednesday,Thursday/)
open(1,file='in_1.txt')
open(2,file='out_1.txt')
read(1,*)(a(i),i=1,5)
do i=1,5
if(0.<a(i).and.a(i)<99.)then
b(i)=a(i)*.02
elseif(100.<a(i).and.a(i)<299.)then
b(i)=a(i)*.05
elseif(300.<a(i).and.a(i)<499.)then
b(i)=a(i)*.075
else
b(i)=500.*.1+(a(i)-500.)*.125
endif
enddo
write(2,*)' Day ',' Sales ',' Commissions '
do i=1,5
write(2,10)c(i),a(i),b(i)
10 format(a10,t15,f4.1,t25,f8.2)
enddo
total=0.
do i=1,5
total=total+b(i)
enddo
write(2,20)total
20 format('Total Commissions',t25,f8.2)
end
продаж с воскресенья по четверг в входном файле in_1.txt.
При запуске отображается ошибка: Элемент в REAL (4) конструктор массива INTEGER (4).
Что это значит и как его решить?
Объём компилятора в строке 2. Я использую Code :: Blocks 13.12 в качестве компилятора. –
Если это ваш полный код, то 'implicit none', так как ваша первая строка покажет вам, почему возникает проблема – francescalus
неявное правило -> Sunday = single-precision-real -> real (4) array -> Monday = integer -> Ошибка ? – roygvib