import random
def magic(n):
matrix = []
def sort(array):
i = 0
def check(array):
for j in range(len(array) - 2):
if array[j] > array[j + 1]:
return False
return True
while True:
if array[i] > array[i + 1]:
max = array[i]
array[i] = array[i + 1]
array[i + 1] = max
i += 1
if i > len(array) - 2:
i = 0
if check(array):
break
return array
def writeMatrix(matrix):
for arr in matrix:
print(arr)
for row in range(n):
matrix.append([])
for column in range(n):
matrix[row].append(random.randint(-50, 50))
print("Non sorted")
writeMatrix(matrix)
print()
print()
for arr in matrix:
arr = sort(arr)
print("Sorted rows")
writeMatrix(matrix) # sorted rows
column = []
for arr in matrix:
column.append(arr[0])
column = sort(column)
for j in range(len(column) - 1):
matrix[j][0] = column[j]
print()
print()
print("Full sorted")
writeMatrix(matrix) # sorted rows and columns
def main():
n = int(input())
magic(n)
main()
// Первая программа
program One;
var a, b: Integer;
begin
write('Введите числитель: ');
read(a); {ввод числителя}
write('Введите знаменатель: ');
read(b); {ввод знаменателя}
{Правильной называется дробь, у которой модуль числителя меньше модуля знаменателя,
поэтому проверяем это условие}
if abs(a)<abs(b) then
{Если условие выполняется, то пишем, что дробь правильная}
writeln('Дробь правильная.')
else
{В противном случае пишем, что дробь неправильная}
writeln('Дробь неправильная.')
end.
// Вторая программа
program Two;
var a, b: Integer;
begin
write('Введите первое число: ');
read(a); {ввод первого числа}
write('Введите второе число: ');
read(b); {ввод второго числа}
{Проверить число на делимость можно с операции взятия остатка.
Есть остаток — число нацело не делится; остаток равен 0 -- число делится нацело}
if (a mod b) = 0 then
{Если остатка нет, то пишем, что первое число делится нацело на второе}
writeln('Первое число делится на второе.')
else
{В противном случае пишем, что первое число не делится нацело на второе}
writeln('Первое число не делится на второе.')
end.
// Третья программа
program Three;
var a, b: Integer;
begin
write('Введите первое число: ');
read(a); {ввод первого числа}
write('Введите второе число: ');
read(b); {ввод второго числа}
{Если второе число меньше первого -- то будем выводить его,
так как в ином случае первое и второе числа равны (и тогда мы можем вывести
любое из них, они ж одинаковые), либо меньшее число -- первое, и мы выведем его}
write('Наименьшее число: ');
if (a > b) then
{Если второе число меньше первого, его и выводим}
writeln(b)
else
{В противном случае выводим первое число}
writeln(a)
end.
Объяснение:
Пояснения находятся в фигурных скобках.
Поделитесь своими знаниями, ответьте на вопрос:
{ Перевод из системы по основанию k в десятичную }
var
i:integer;
pa,s:longint;
begin
s:=0;
pa:=1;
for i:=Length(n) downto 1 do begin
s:=s+pa*(Ord(n[i])-Ord('0'));
pa:=pa*k
end;
aToDec:=s
end;
function DecToa(n:longint;k:integer):string;
{ Перевод из десятичной системы в систему по основанию k }
var
s:string;
c:integer;
begin
s:='';
c:=Ord('0');
while n>0 do begin
s:=Chr(c+n mod k)+s;
n:=n div k
end;
DecToa:=s
end;
function AtoB(s:string;A,B:integer):string;
{ Перевод из системы по основанию A в систему по основанию B }
begin
AtoB:=DecToa(aToDec(s,A),B)
end;
var
a,b:integer;
n:string;
begin
Write('Число в c/c по основанию [2;10]: '); Readln(n);
Writeln('Укажите исходное и результирующее основания: ');
Read(a,b);
Writeln(n,'(',a,') = ',AtoB(n,a,b),'(',b,')');
end.
Пример решения
Число в c/c по основанию [2;10]: 643342414
Укажите исходное и результирующее основания:
7 9
643342414(7) = 80050347(9)