В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Pakemongo
Pakemongo
04.04.2020 02:12 •  Информатика

Информатика Составить алгоритм перемещения Робота на одну клетку в том направлении, в котором это возможно -_-
Фото


Информатика Составить алгоритм перемещения Робота на одну клетку в том направлении, в котором это во

Показать ответ
Ответ:

Программа:

{Free Pascal Compiler version 3.0.4+dfsg-23 [2019/11/25] for x86_64}

{Copyright (c) 1993-2017 by Florian Klaempfl and others}

{Target OS: Linux for x86-64}

program test;

const

 start = -100;

 finish = 50;

 count = 100;

var

 X : array of integer; {массив}

 i : integer; {Счётчик цикла}

 S : integer; {Сумма положительных}

begin

Randomize;

SetLength(X, count+1);

{Генерация массива из 100 элементов от -50 до 50}

for i := 1 to count do

 X[i] := Round( Random * start) + finish;

{Вывод сгенерированного массива на экран}

for i := 1 to count do

 write(X[i]:4);

writeln; writeln;

{Подсчёт положительных элементов}

S := 0;

for i := 1 to count do

 if (x[i] > 0) then

  S := S + x[i];

 

writeln('Сумма положительных S = ', S);

end.


Найти сумму тех элементов массива, которые имеют положительные значения(для Паскаль)​
0,0(0 оценок)
Ответ:
luiza2010
luiza2010
09.10.2022 18:41
Program MagicSquares; 

{Построение магических квадратов} 

Uses CRT; 
Type a_type=array[1..50,1..50] of integer; 
Var i,j,n:integer; 
a:a_type; 
t:boolean; 
{логическая переменная true (правда) или false (ложь)} 
x,y:integer; 
Label 1; 
{метка} 
Procedure Print(n:integer; a:a_type); 
{процедура вывода} 
Var i,j:integer; 
Begin 
for i:=1 to n do begin 
for j:=1 to n do write(a[i,j]:4); 
writeln(''); 
end; 
end; 
Procedure WinSh(x1,y1,x2,y2,col1,col2:word); 
{процедура вывода окна} 
Begin 
TextBackGround(black); 
Window (x1+1,y1+1,x2+1,y2+1); 
{тень - черный прямоугольник} 
ClrScr; 
TextBackGround(col1); 
Window(x1,y1,x2,y2); 
ClrScr; 
TextColor(col2); 
{рисование рамки} 
GotoXY(2, 1); write('г'); 
for i:=1 to x2-x1-2 do write('='); 
GotoXY(x2-x1,1); write('='); 
GotoXY(2,y2-y1+1); 
write('L'); for i:=1 to x2-x1-2 do write('='); 
GotoXY(x2-x1,y2-y1+1); write('-'); 
for j:=2 to y2-y1 do begin 
GotoXY(2,j); write('¦'); 
GotoXY(x2-x1,j); write('¦'); 
end; 
End; 
Procedure OddMagic(n:integer; var a:a_type); 
{Процедура формирования магического квадрата при нечетном n. Описание алгоритма в сопроводительной записке } 
Var 
i,j,k:integer; 
p,l:integer; 
Begin 
for i:=1 to n do 
for j:=1 to n do a[i,j]:=0; 
j:=n div 2 +1; p:=sqr(n); i:=1; a[i,j]:=1; 
for l:=2 to p do begin 
i:=i-1; 
j:=j+1; 
if (i=0) and (j<>n+1) then i:=n; 
if (j=n+1) and (i<>0) then j:=1; 
if ((i=0) and (j=n+1)) or (a[i,j]<>0) then 
{важен порядок условий!} 
begin 
i:=i+2; 
j:=j-1; 
end; 
a[i,j]:=l; 
end; 
end; 
Procedure Two (n:integer; var a:a_type); 
{Процедура построения квадрата при n обычной четности: n=6,10,14,18...} 
Var 
u,i,j,k,m,z:integer; 
b:a_type; 
Begin 
u:= n div 2; 
m:=(u-1) div 2; 
OddMagic(u,b); 
{вызов процедуры построения квадрата при нечет-ном u} 
k:=u*u; 
for i:=1 to n do 
for j:=1 to n do begin 
if (i>=1) and (i<=u) and (j>=1) and (j<=u) then a[i,j]:=b[i,j]; 
if (i>=u+1) and (i<=n) and (j>=u+1) and (j<=n) then a[i,j]:=b[i-u,j-u]+k; 
if (i>=1) and (i<=u) and (j>=u+1) and (j<=n) then a[i,j]:=b[i,j-u]+2*k; 
if (i>=u+1) and (i<=n) and (j>=1) and (j<=u) then a[i,j]:=b[i-u,j]+3*k; 
end; 
for i:=1 to u do 
if i=u div 2+1 then begin 
j:= u div 2+1; 
for k:=1 to m do begin 
z:=a[i,j]; 
{обмен данными} 
a[i,j]:=a[i+u,j]; 
a[i+u,j]:=z; 
j:=j-1 
end; 
end 
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота