Это нужно делать в Python
Напишіть програми у середовищі програмування для розв’язування таких завдань:
1. Збережіть назви мов світу (Ukrainian, French, Bulgarian, Norwegian, Latvian або інші) у списку. Простежте за тим, щоб елементи у списку не зберігались в алфавітному порядку. Застосуйте функції sorted(), reverse(), sort() до списку. Виведіть список на екран до і після використання кожної із функцій.
2. На вхід програми подається один рядок з цілими числами. Числа розділені пропусками. Необхідно вивести суму цих чисел. Наприклад, якщо був введений рядок чисел 2 -1 9 6, то результатом роботи програми буде їх сума 16.
3. Дано список з такими елементами: cities = ['Budapest', 'Rome', 'Istanbul', 'Sydney', 'Kyiv', 'Hong Kong']. Сформуйте з елементів списку повідомлення, у якому перед останнім елементом буде вставлено слово and. Наприклад, у нашому випадку, повідомлення буде таким: Budapest, Rome, Istanbul, Sydney, Kyiv and Hong Kong. Програма має працювати з будь-якими списками, довжина яких є 6.
4. Необхідно зчитати рядок з 5 цифр, розділених пропусками, і зберегти кожну цифру у список. Створіть копію списку із впорядкованими елементами у зворотному порядку. Виведіть число, яке утворюється об’єднанням елементів нового списку.
5.Поміркуйте над тим, яку інформацію можна було б зберігати у списку. Наприклад, створіть список професій, видів спорту, членів родини, назви океанів тощо, а потім викличте кожну функцію для роботи зі списками, яка була згадана у цьому розділі, хоча б один раз.
6.Виконайте візуалізацію структури коду програми. Використайте у візуалізації структури елементи кортежу keywords = ('for', 'if', 'else', 'in', ':'). У процесі виведення структури коду на екран, враховуйте відступи рядків від лівого краю, у розрахунку один відступ - 4 пропуски. Вигляд структури коду має бути таким:
for each token in the postfix expression :
if the token is a number :
print('Convert it to an integer and add it to the end of values')
else
print('Append the result to the end of values')
function
Transpose(a: array[,] of integer): array[,] of integer;
//Поворот на 90гр по часовой стрелке
begin
var m := Length(a, 0);
var n := Length(a, 1);
Result := new integer[n, m];
for var i := 0 to n-1 do begin
for var j := 0 to m-1 do
Result[i, j] := a[m-1-j, i];
end;
end;
begin
var n := ReadInteger('Введите n:');
//Заполнение матрицы NxN сл. числами и вывод на экран
var a :=MatrixRandom(n, n);
for var i:=0 to n-1 do begin
for var j:=0 to n-1 do
Print(a[i,j]);
println;
end;
println;
Println('поворот влево на 90 гр');
var b := Transpose(a);
b:=Transpose(b);
b:=Transpose(b);
for var i:=0 to n-1 do begin
for var j:=0 to n-1 do
Print(b[i,j]);
println;
end;
println;
Println('поворот вправо на 90гр');
b := Transpose(a);
for var i:=0 to n-1 do begin
for var j:=0 to n-1 do
Print(b[i,j]);
println;
end;
println;
Println('поворот на 180 гр');
b := Transpose(a);
b := Transpose(b);
for var i:=0 to n-1 do begin
for var j:=0 to n-1 do
Print(b[i,j]);
println;
end;
end.
// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
begin
var a:=ArrRandom(ReadInteger('n='),0,2); a.Println;
a.Sorted.Println
end.
Тестовое решение:
n= 15
1 2 0 2 2 0 2 0 2 0 0 1 0 0 2
0 0 0 0 0 0 0 1 1 2 2 2 2 2 2
2. Но, поскольку считается, что школьникам больше заняться нечем, их заставляют писать примерно в таком стиле (и время займет, и ощибок понаделают):
// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
const
nn=100;
var
i,j,n,t:integer;
a:array[1..nn] of integer;
begin
Write('n='); Read(n);
Randomize;
for i:=1 to n do begin
a[i]:=Random(3);
Write(a[i],' ')
end;
Writeln;
for i:=1 to n-1 do
for j:=1 to n-1 do
if a[j]>a[j+1] then begin
t:=a[j]; a[j]:=a[j+1]; a[j+1]:=t
end;
for i:=1 to n do Write(a[i],' ');
Writeln;
end.
Тестовое решение:
n=15
0 1 1 0 2 1 0 2 1 2 1 0 0 2 0
0 0 0 0 0 0 1 1 1 1 1 2 2 2 2