Дано два числа B і C якщо b<c, то кожне число збільшити на 7, інакше кожне число помножити на 4. Скласти : а) блок-схему, б) таблицю значень, в) проект
//PascalABC.NET (версия 3.1, сборка 1210 от 29.03.2016) var a: array of integer; i, n: integer;
begin write('Введите n ');readln(n); SetLength(a, n); writeln('Исходный массив :'); for i := 0 to n - 1 do begin a[i] := random(-20, 20);write(a[i]:4); end; writeln; writeln('Массив после обработки:'); for i := 0 to n - 1 do begin if a[i] < 0 then a[i] := 10; write(a[i]:4); end; end.
Относительная адресация задается просто буквой (столбец) и цифрой (строка). Например, в ячейках A1, A2, A3, ..., A10 пишем числа, а в ячейке B1 пишем =A1*2. Теперь, если скопировать ячейку B1 в B2, то адрес изменится и получится =A2*2. Так можно составить таблицу умножения на 2. Но, если скопировать B1 в C1, то получится =B1*2 То есть в столбце С уже получится таблица умножения на 2 для столбца В.
Абсолютная адресация задается знаком $ перед нужной координатой. Например, если написать в ячейке B1 =$A1*2, то столбец А будет задан абсолютно, а строка - относительно. Теперь, если скопировать из B1 в B2, то получится =$A2*2 А вот если скопировать в С1, то получится =$A1*2, то есть в столбце С получится копия столбца В. А если поставить и строку в абсолютную ссылку =$A$1*2, то при копировании в любую ячейку формула не изменится. Обычно абсолютную адресацию используют, когда хотят всю таблицу умножить на какой-то коэффициент, например, перевести долларовые цены в рубли. Тогда в какой-то ячейке за пределами таблицы, например, в K1 пишут курс, а во всей таблице пишут =A1*$K$1 Теперь при копировании этой формулы на всю таблицу будет меняться только адрес текущей ячейки А1, а адрес ячейки с курсом K1 остается неизменным.
var
a: array of integer;
i, n: integer;
begin
write('Введите n ');readln(n);
SetLength(a, n);
writeln('Исходный массив :');
for i := 0 to n - 1 do
begin
a[i] := random(-20, 20);write(a[i]:4);
end;
writeln;
writeln('Массив после обработки:');
for i := 0 to n - 1 do
begin
if a[i] < 0 then a[i] := 10;
write(a[i]:4);
end;
end.
Тестовое решение:
Введите n 10
Исходный массив :
-19 -14 -14 1 2 16 16 -6 0 19
Массив после обработки:
10 10 10 1 2 16 16 10 0 19