Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.
Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.
Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.
Ничего страшного, Стася, всё понятно, сейчас поправим.Программа, которая у меня получилась то нормально работает, то вместо второго максимального по значению элемента находит просто максимальный( всю голову сломала уже
max_2:= min;
min_2:= max;
For i:=1 To n Do
Begin
If (vector[i]<max) and (vector[i]>max_2) Then
Begin
max_2 := vector[i];
i_max_2 := i;
End;
If (vector[i]>min)and (vector[i]<min_2) Then
Begin
min_2 := vector[i];
i_min_2 := i;
End;
End;
Увы, только завтра. Сейчас я выхожу из Сети. А пока был бы признателен, если бы Вы уточнили, что за алгоритм Вы применяете? Что за "поплавок"? Ссылку дайте или своими словами объясните.А можете еще вот этот момент посмотреть?
Ага. Ну теперь я из примера хоть понял, что значит "перевернуть" и что значит "поплавок".А в моем задании нужно было между i_min_2 и i_max_2 перевернуть элементы
Const
n = 20;
Var
i, v_min, v_max,i_max, max,i_min, min, i_max_2,
max_2, i_min_2, min_2, k, m, i1, i2 : Integer;
vector : Array [1..n] Of Integer;
Begin
Randomize;
WriteLn('Random numbers range:');
Write('v_min=');
ReadLn(v_min);
Write('v_max=');
ReadLn(v_max);
For i:=1 to n do
vector[i]:=Random(v_max-v_min + 1) + v_min;
WriteLn;
WriteLn('Initial vector:');
For i:=1 To n Do
Write(vector[i]:5);
WriteLn;
max:= vector[1];
i_max:= 1;
min:= vector[1];
i_min:= 1;
For i:=2 To n Do
Begin
If (vector[i] > max) Then
Begin
max := vector[i];
i_max := i;
End;
If (vector[i] < min) Then
Begin
min := vector[i];
i_min := i;
End;
End;
max_2:= min;
min_2:= max;
For i:=1 To n Do
Begin
If (vector[i]<max) and (vector[i]>max_2) Then
Begin
max_2 := vector[i];
i_max_2 := i;
End;
If (vector[i]>min) and (vector[i]<min_2) Then
Begin
min_2 := vector[i];
i_min_2 := i;
End;
End;
WriteLn;
WriteLn('max_2=', max_2, ' i_max_2=', i_max_2);
WriteLn('min_2=', min_2, ' i_min_2=', i_min_2);
If min=max then
writeln('No solution: all elements are equal')
else
begin
If i_min_2<i_max_2 then
Begin
i1:=i_min_2;
i2:=i_max_2;
End
Else
Begin
i2:=i_min_2;
i1:=i_max_2;
End;
m:=(i2-i1) Div 2;
For i:=1 To m Do
Begin
k:= vector[i1+i];
vector[i1+i]:=vector[i2-i] ;
vector[i2-i]:=k;
End;
WriteLn;
WriteLn('Final vector:');
For i:=1 To n Do
Write(vector[i]:5);
WriteLn
end;
Readln
End.
ага, это осталось еще от предыдущих неудачных попыток, я вчера убрала ееКстати, переменная "а" не нужна вовсе - выбросил.
У нас как раз такой случай, просят вставлять CRT - все-таки программирование не является профильным предметом у нас и дается в очень сжатые срокиправда, встречаются горе-преподаватели, которые требуют, чтобы студенты всегда подключали в своих программах этот самый CRT - типа "на всякий случай"