Program s;
var
a,b:integer;
begin
readln(b);
for a:=1 to b do
if a mod 2 = 0 then writeln(a*a) else writeln('-1');
end.
Под локальным максимумом, скорее всего, имеется в виду число, большее
чем оба его соседа, за исключением случая, когда соседом справа является
0. В таком случае достаточно однократно пройтись по всем числам, запоминая минимальное из расстояний между новым и предыдущим обнаруженными максимумами.
Программа (язык Pascal ABC.Net)
var i1,i2,i3:integer;
i:integer;
curr,minr,lastmax:integer;
begin
readln(i1,i2);
i:=2;
minr:=1000000;
repeat
readln(i3);
if (i2>i1) and (i2>i3) and (i3<>0) then begin
curr:=i-lastmax;
if curr<minr then minr:=curr;
lastmax:=i;
end;
i1:=i2;
i2:=i3;
i+=1;
until i2=0;
if minr=1000000 then writeln(0) else writeln(minr); {стоило бы добавить булевую переменную в качестве флага - был ли хоть один max, но вряд ли расстояние между ними превысит миллион :-}
end.
1) Растровые изображения состоят из сетки пикселей, в каждом пикселе хранится только информация о его цвете.
При уменьшении изображения в один новый пиксель нужно записать информацию о цветах нескольких старых пикселей, информация о цвете как минимум некоторых старых пикселей будет потеряна, качество изображения снижается.
Что происходит с качеством изображения при увеличении изображения, сказать сложно. При увеличении изображения количество пикселей увеличивается, поэтому нужно выбрать, каким образом достраивать цвета дополнительных пикселей. Если новые пиксели брать как усредненные старые, и в старом изображении были резкие переходы цветов, то изображение станет немного более размытым, но возможны и другие варианты.
2) Основные различия – количество поддерживаемых цветов, поддержка прозрачности, метод кодирования и сжатия
<em>MS DOS QBasic 1.0</em>
DIM n AS INTEGER
CLS
INPUT "N=", n
REDIM a(1 TO n) AS INTEGER
DIM a AS INTEGER
RANDOMIZE TIMER
FOR i = 1 TO n
a(i) = 9 * RND + 1
PRINT a(i);
NEXT i
PRINT
'--------- SORT -----------
DIM j AS INTEGER, t AS INTEGER
FOR i = 1 TO n
FOR j = 1 TO n
IF a(i) < a(j) THEN
t = a(i): a(i) = a(j): a(j) = t
END IF
NEXT j
NEXT i
'---------------------------
t = a(1): j = 1
FOR i = 2 TO n
IF a(i) = t THEN
j = j + 1
ELSE
PRINT t; "-"; j
t = a(i): j = 1
END IF
NEXT i
PRINT t; "-"; j
<u>Пример</u>
N=10
7 5 2 7 3 3 5 9 7 6
2 - 1
3 - 2
5 - 2
6 - 1
7 - 3
9 - 1