М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
kristos24052006
kristos24052006
21.10.2022 07:28 •  Информатика

перевести код из паскаля в фортран f90 var i, j, k, s, x, y:integer;
a:array[1..7,1..7] of integer;

begin
x:=2;
y:=6;
for k:=1 to 4 do
begin
for i:=x-1 to y+1 do
begin
s:=s+1;
a[x-1,i]:=s;
end;

for j:=x to y+1 do
begin
s:=s+1;
a[j,i]:=s;
end;

for i:=y downto x-1 do
begin
s:=s+1;
a[y+1,i]:=s;
end;
for j:=y downto x do
begin
s:=s+1;
a[j,i]:=s;
end;

x:=x+1;
y:=y-1;

end;

writeln('massive 15 = ');
for i:=1 to 7 do
begin
for j:=1 to 7 do
write(a[i,j]:5);
writeln;
end;

end.

👇
Ответ:
aidored
aidored
21.10.2022

Program F90

   integer i, j, k, s /0/, x/2/, y/6/, a(7, 7)

   do k = 1, 4

       do i = x - 1, y + 1

           s = s + 1

           a(x - 1, i) = s

       end do

       i = y + 1

       do j = x, y + 1

           s = s + 1

           a(j, i) = s

       end do

       do i = y, x - 1, -1

           s = s + 1

           a(y + 1, i) = s

       end do

       i = x - 1

       do j = y, x, -1

           s = s + 1

           a(j, i) = s

       end do

       x = x + 1

       y = y - 1

   end do

   Print *, 'massive 15 = '

   Write(*, '(7i5)') ((a(i, j), j=1, 7), i=1, 7)

End Program


перевести код из паскаля в фортран f90 var i, j, k, s, x, y:integer; a:array[1..7,1..7] of integer;
4,4(16 оценок)
Открыть все ответы
Ответ:
xalva123
xalva123
21.10.2022
// PascalABC.NET 3.1, сборка 1179 от 29.02.2016
procedure GetProdNeg(a:array of integer; var p:real);
// произведение отрицательных элементов
begin
  p:=a.Where(x->x<0).Aggregate(1.0,(p,e)->p*e)
end;

function IsPrime(n:integer):boolean:=
  Range(2,Round(sqrt(n))).All(i->n mod i<>0);

procedure ArrPrime(n:integer; var a:array of integer);
// массив простых чисел не больших n
begin
  a:=Range(2,n).Where(i->IsPrime(i)).ToArray
end;

begin
  var n:=ReadInteger('n=');
  var a:=ArrRandom(n,-50,50); a.Println;
  var r:real;
  GetProdNeg(a,r);
  Writeln('Произведение ',r);
  n:=ReadInteger('n=');
  var b:array of integer;
  ArrPrime(n,b);
  b.Println
end.

Тестовое решение:
n= 15
27 -7 -36 40 -15 -21 -47 -28 -12 45 3 -38 -15 1 -39
Произведение 27866837980800
n= 300
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229 233 239 241 251 257 263 269 271 277 281 283 293
4,6(73 оценок)
Ответ:
Yaroslav483
Yaroslav483
21.10.2022
Максимальное число, составленное из утроенного произведения цифр  будет 
9*3*N  -  не  может быть больше 54,  т.е.  
N может быть только 1 или 2.  По условию х>=10  ->  N=2  (N -порядок числа).
Поэтому искать нужно среди чисел от 11 до 54.  Решение - число 15.

var n,m: integer;
begin
  write('n = ');  readln(n);
  if n=2 then
  begin    m:=11;
    repeat
      if (m mod 10)*(m div 10)*3=m then
      begin
        writeln('число:  ',m);
        m:=55;
      end;
      m:=m+1;
    until m>54;
  end
  else  writeln('нет решения');
end.
4,5(34 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ