Var a:array[1..10] of integer;
k,n,i:integer;
min:INTEGER;
begin
randomize; N:=10; k:=0 {кол-во отрицательных элементов};
writeln ('исходный массив');
for i:=1 to N do
begin
if random(2) =1 then a[i]:=random(100)
else begin k:=k+1; a[i]:=-random(100); min:=a[I] end;
write(a[i]:5);
end;
writeln;
{поиск минимального положительного}
if (k<>0) or (k<>N) then {есть отрицательные или не все отрицательные}
begin
for i:=1 to N do
if (a[i]>0) and (a[i]<min) then min:=a[i];
{замена}
for i:=1 to N do
if (a[i]<0) then a[i]:=min;
end;
writeln('Новый массив')
for i:=1 to N do write(a[i]:5);
end.
Пример оптической памяти - CDRom, DVDRom, BlueRay.
магнитная память - Жесткий диск винчестера,
электронная память - память RAM, Flash, Solid State Drive.
В целом их можно расположить в таком порядке:
<span>1 - оптическая
2 - магнитная
3 - электронная</span>
Хотя в реальности все намного сложнее и зависит от конкретной технологии.
F:/DOCUM/LENA/letter.doc
F:/DOCUM/LENA/Tables.xls
F:/DOCUM/IVAN/my.doc
F:/ARCHIV/MAIN/letter.doc
F:/ARCHIV/MAIN/my.doc
F:/ARCHIV/1.zip
Это так же называется обратной польской записью. Числа, которые встречаются интерпретатору, помещаются в стек. А операции совершаются над числами лежащими в вершине стека. Последовательность будет такая: а - помещается на вершину стека, b - помещается на вершину, а проталкивается вглубь стека. И т.д. После ввода цифры 7 стек будет иметь вид "abc7", где 7 лежит на вершине стека. Затем приходит черед арифметических операций: "+" - берутся два числа, лежащие в вершине стека, складываются, и вместо них на вершину стека ложится их сумма. Теперь стек будет таким: "ab(c+7)". Следующая операция "*" - берутся b и (с+7) и умножаются. Результат помещается на вершину стека. Стек: "а(b*(c+7))". И последнее действие "-" - из a вычитается b*(c+7). В результате выражение будет иметь вид:
а - b(c+7).