объявить после if )
c#
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Generator : MonoBehaviour
{
public Terrain terrain;
public GameObject[] loot;
void Start()
{
float w = terrain.terrainData.size.x / 32.0f;
float h = terrain.terrainData.size.y / 32.0f;
GameObject odj = loot[Random.Range(0, loot.Length)];
if(odj != null)
{
i = Random.Range(0, 32);
odj.transform.position = new Vector3(i w, terrain.transform.position.y + 100, i h);
Instantiate(odj);
}
}
}
mm = 20;
var
a: array[1..mm, 1..mm] of integer;
i, j, m, s: integer;
begin
Write('Введите число строк (столбцов) матрицы: ');
Readln(m);
Randomize;
Writeln(#13#10, 'Исходная матрица');
for i := 1 to m do
begin
for j := 1 to m do
begin
a[i, j] := Random(99) + 1; { числа 1..99 }
Write(a[i, j]:3)
end;
Writeln
end;
Writeln('*** Главная диагональ ***');
for i := 1 to m do Write(a[i, i]:3);
Writeln;
Writeln('*** Побочная диагональ ***');
for i := 1 to m do Write(a[i, m - i + 1]:3);
Writeln;
Write('Сумма четных элементов по периметру равна ');
s := 0;
for j := 1 to m do
if a[1, j] mod 2 = 0 then s := s + a[1, j];
for j := 1 to m do
if a[m, j] mod 2 = 0 then s := s + a[m, j];
for i := 2 to m-1 do
if a[i, 1] mod 2 = 0 then s := s + a[i, 1];
for i := 2 to m-1 do
if a[i, m] mod 2 = 0 then s := s + a[i, m];
Writeln(s)
end.
Тестовое решение:
Введите число строк (столбцов) матрицы: 10
Исходная матрица
12 81 22 55 45 97 37 95 33 84
4 40 77 85 20 15 40 41 64 16
17 72 42 32 85 94 7 39 65 46
22 23 58 69 53 40 65 49 70 20
90 62 26 60 53 13 19 2 21 31
50 55 8 29 26 39 40 89 70 51
91 98 31 86 62 80 81 9 32 79
49 90 71 44 26 55 46 81 79 73
75 5 18 34 96 67 16 29 43 15
1 76 78 19 28 91 31 39 98 73
*** Главная диагональ ***
12 40 42 69 53 39 81 81 43 73
*** Побочная диагональ ***
84 64 39 65 13 26 86 71 5 1
Сумма четных элементов по периметру равна 646
nm = 100;
type
Mas = array[1..nm] of integer;
procedure Shell(var a: Mas; n: integer);
{ сортировка методом Шелла }
var
i, j, step, t: integer;
begin
step := n div 2;
while step > 0 do
begin
for j := n - step downto 1 do
begin
i := j;
while i <= n - step do
begin
if a[i] > a[i + step] then
begin
t := a[i];
a[i] := a[i + 1];
a[i + 1] := t
end;
i := i + step
end
end;
step := step div 2
end
end;
var
x: Mas;
i, n: integer;
begin
Randomize;
Write('Введите число элементов в массиве (1-100): ');
Readln(n);
Writeln('Исходный массив');
for i := 1 to n do
begin
x[i] := Random(101) - 50;
Write(x[i]:4)
end;
Shell(x, n);
Writeln(#13#10, 'Отсортированный массив');
for i := 1 to n do Write(x[i]:4)
end.
Тестовое решение:
Введите число элементов в массиве (1-100): 20
Исходный массив
-8 -17 -19 1 -3 23 -33 30 -27 -45 12 26 -24 18 37 8 47 -14 -19 -3
Отсортированный массив
-45 -33 -27 -24 -19 -19 -17 -14 -8 -3 -3 1 8 12 18 23 26 30 37 47