В паскале нужна программа,которая поменят два элемента первый и последний
заранее спасибо) от 1 до 20
9 класс

1
Тебе полностью написать программу?
Или объявить переменные сможешь сам, а тебе нужен только принцип действия.?
P.S. Спрашиваю потому что давно не работал в паскале
мне нужен сам принцип ибо у нас в задаче нужно поменять максимальный и первый, сначала я нашел максимальый и вывел его, но вот как его поменять не знаю, не получается
Создаешь левую переменную, например "a", в нее записываешь номер максимального элемента
Создаешь еще одну, например "b", в нее записываешь mas[1]
И потом просто меняешь местами:
mas[1]=mas[a]
mas[a]=b;
а подробнее можешь? а то ошибку пишет, помоги пожалуйста))

Ответы и объяснения

2013-12-22T00:15:38+04:00
Не помню как там с объявлением переменных, но если брать основную часть, то:
begin
a:=0;
b:=mas[1];
max=0;
for (int i:=1;i<=20;i:=i+1)
{
if (mas[i]>max)
{
max:=mas[i];
a:=i;
}
mas[1]:=mas[a];
mas[a]:=b;
writeln;
max:=a[i]; k:=1;
for i:=2 to 20 do
if a[i]>max then
begin
max:=a[i]; k:=i;
end;
c:=a[1]; a[1]:=max; max:=c;
for i:=1 to 20 do write (a[i]:4);
end.
вот как я написал, но мне почему-то меняет только максимальный стит на первое место а вот на место максимального первый элемент не становится(
Потому что ты ставишь на первое место max, а вместо него забыл
после a[1]:=max, нужно было добавить a[k]:=c (а так ты просто в переменную max:=c записываешь первый элемент)
аааа) точняяк) спасиибо) выручил!!)