def main(): for event in longpoll.listen(): if event.type == VkBotEventType.MESSAGE_NEW and (action := event.obj['message'].get('action')): if action['type'] == 'chat_kick_user': vk.messages.removeChatUser( chat_id=event.chat_id, user_id=action['member_id'], )
if __name__ == '__main__': main() Не забудьте, что боту необходимо выдать права администратора беседы
Немного не понял, упорядочить по возрастанию снизу вверх. Если выводить будет не так то в этой строчке изменишь знак на '>' if podarr[i] < podarr[i+1] then
program znanija_com; const n = 5; m = 3; type tArray = array[1..n, 1..m] of integer; tPodArray = array[1..n] of real; var arr : tArray; podarr : tPodArray; i,j,sum : integer; procedure swap(var x,y: real); var t: real; begin t := x; x := y; y := t end; begin randomize; writeln('Исходная матрица:'); for i:=1 to n do begin sum:=0; for j:=1 to m do begin arr[i, j]:=random(10); write(arr[i, j], ' '); sum:=sum+arr[i, j]; end; writeln(); podarr[i]:=sum/m; end; for j:=1 to n-1 do for i:=1 to n-j do if podarr[i] < podarr[i+1] then swap(podarr[i],podarr[i+1]); writeln('Результирующий массив:'); for i:=1 to n do writeln(podarr[i], ' '); end.
Отследить выход человека из беседы можно, проверяя сообщение на наличие ключа action с типом chat_kick_user.
Пример (Python 3.8+):
from vk_api import VkApi
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
ACCESS_TOKEN = '' # Подставьте свой!
GROUP_ID = # Подставьте свой!
vk_session = VkApi(token=ACCESS_TOKEN)
vk = vk_session.get_api()
longpoll = VkBotLongPoll(vk_session, GROUP_ID)
def main():
for event in longpoll.listen():
if event.type == VkBotEventType.MESSAGE_NEW and (action := event.obj['message'].get('action')):
if action['type'] == 'chat_kick_user':
vk.messages.removeChatUser(
chat_id=event.chat_id,
user_id=action['member_id'],
)
if __name__ == '__main__':
main()
Не забудьте, что боту необходимо выдать права администратора беседы
program znanija_com;
const
n = 5;
m = 3;
type
tArray = array[1..n, 1..m] of integer;
tPodArray = array[1..n] of real;
var
arr : tArray;
podarr : tPodArray;
i,j,sum : integer;
procedure swap(var x,y: real);
var t: real;
begin
t := x;
x := y;
y := t
end;
begin
randomize;
writeln('Исходная матрица:');
for i:=1 to n do begin
sum:=0;
for j:=1 to m do begin
arr[i, j]:=random(10);
write(arr[i, j], ' ');
sum:=sum+arr[i, j];
end;
writeln();
podarr[i]:=sum/m;
end;
for j:=1 to n-1 do
for i:=1 to n-j do
if podarr[i] < podarr[i+1] then
swap(podarr[i],podarr[i+1]);
writeln('Результирующий массив:');
for i:=1 to n do
writeln(podarr[i], ' ');
end.