2 в 33 степени 8589934592, то чтобы перевести в биты нужно это число разделить на 1024, полученное число снова разделить на 1024, а потом это число делить на 8
--- gfortran 6.3 --- program prog1 integer N, k, i, j real a(10,10) read *, N print *, 'Матрица:' do i = 1,N do j = 1,N a(i,j) = sin(1.0*i+1.0*j/2) end do end do do i = 1, N print *, (a(i,j), j=1,N) end do k = 0 do i = 1, N do j = 1, N if(a(i, j) > 0) k = k+1 end do end do print *, k end
// PascalABC.NET 3.2, сборка 1399 от 08.03.2017 // Внимание! Если программа не работает, обновите версию!
procedure Cheburek(s:string); begin var n:=ReadInteger('Количество строк в матрице:'); var m:=ReadInteger('Количество столбцов в массиве:'); Writeln('*** ',s,' матрица [',n,',',m,'] ***'); var a:=MatrRandom(n,m,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var s1:='сортированный вектор ср.значений нечетных столбцов'; Writeln(s1); a.Cols.Select(x->x.Average).Where((x,i)->i.IsEven).Sorted.Println; Writeln(s1.Length*'-'); end;
begin Cheburek('первая'); Cheburek('вторая'); end.
Пример Количество строк в матрице: 4 Количество столбцов в массиве: 8 *** первая матрица [4,8] *** 98 -64 -30 84 -6 11 4 7 -45 23 55 47 67 87 70 -64 40 20 91 -27 -12 42 -49 10 -59 -79 5 -77 -59 -44 -4 -10
2 в 33 степени 8589934592, то чтобы перевести в биты нужно это число разделить на 1024, полученное число снова разделить на 1024, а потом это число делить на 8