Наумов, Мокров Лабораторная работа №1 №1 katet_1 = int(input("1 катет: ")) katet_2 = int(input("2 катет: ")) s_triangle = (katet_1 * katet_2) / 2 print(f"1 катет: {katet_1}\n2 катет: {katet_2}\nплощадь: {s_triangle}") №2 n = int(input("яблок: ")) k = int(input("учеников: ")) res = n // k rem_apples = n % k print(res, rem_apples) №3 inp = input("Введите число: ") res = inp[3] + inp[1] + inp[2] + inp[0] print(res) №4 import random print(random.randint(2, 13)) №5 А) import math a = int(input()) b = int(input()) c = int(input()) res = (b + math.sqrt(b**2 + 4 * a * c)) / 2 * a - a**3 * c + a**-2 print(res) Б) import math x = int(input()) y = int(input()) res = (1 + math.sin(math.sqrt(x + 1))) / math.cos(12 * y - 4) print(res) Лабораторная работа №2 №1 №2 print("Введите число: ") a = int(input()) if a>0: print(a+3) else: print(a-3) №3 print ("введите число") x = int(input()) if x>7: print (x*2) №4 x1 = int(input()) y1 = int(input()) x2 = int(input()) y2 = int(input()) if (x1 + y1 + x2 + y2) % 2 == 0: print("YES") else: print("NO") №5 x,y = map(int , input("введите координаты через пробел:").split()) if x>0 and y>0: print("1 четверть") if x>0 and y<0: print("4 четверть") if x<0 and y<0: print("3 четверть") if x<0 and y>0: print("2 четверть") №6 x= float(input("введите число:")) from math import* if x<=3: x=x**2-3*x+9 print("x=",x) else: (1/x**3+6) Лабораторная работа №3 №1 x=int(input()) if x<0: print(-1) elif x==0: print(0) else: print(1) №2 x=4 y=8 z=1 if("x=y"): print(2) if ("x=y=z"): print(3) if ("x!=y!=z"): print(0) №3 print("Введите четыре числа от 1 до 8") a=int(input()) b=int(input()) c=int(input()) d=int(input()) if a-1==c and b+1==d: print("yes") if a==c and b+1==d: print("yes") if a+1==c and b+1==d: print("yes") if a+1==c and b==d: print("yes") if a-1==c and b+1==d: print("yes") if a==c and b-1==d: print("yes") if a-1==c and b-1==d: print("yes") if a-1==c and b==d: print("yes") else: print("No") №6 print("Введите номер месяца") x=int(input()) if x==1: print("количество дней:31") if x==2: print("количество дней:28") if x==3: print("количество дней:31") if x==4: print("количество дней:30") if x==5: print("количество дней:31") if x==6: print("количество дней:30") if x==7: print("количество дней:31") if x==8: print("количество дней:31") if x==9: print("количество дней:30") if x==10: print("количество дней:31") if x==11: print("количество дней:30") if x==12: print("количество дней:31") elif x>12: print("Ошибка") Лабораторная работа №4 №1 a=int(input()) b=int(input()) for i in range(a, b+ 1): print(i) if (a>b): for i in range(a, b -1, -1): print(i) №2 sum=0 for i in range (int(input())): sum+=int(input()) print(sum) №3 a=int for a in range (10000, 99999): if a%133==125 and a%134==111: print(a) №4 n=int(input()) sum_of_factorials=1 curr_factorial=1 for i in range(2, n+1): curr_factorial *=i sum_of_factorials+=curr_factorial print(sum_of_factorials) №5 for i in range (153, 1000): a=(i//100%10)**3 b=(i//10%10)**3 c=(i%10)**3 if a+b+c==i: print(i) Лабораторная работа №5 №1 #получаем натуральное число от пользователя number = int(input("Введите натуральное число:")) #Инициализируем счётчик для подсчёта количества цифр 1 count =1 #Преобразуем число в строку для обработки каждой цифры number_str = str(number) #Перебираем каждую цифру в числе for digit in number_str: if digit =="1": count +=1 #выводим результат print("Цифра 1 встречается", count, "раз(а) в числе", number) №2 #получаем натуральное число от пользователя number = int(input("Введите натуральное число:")) maximum = 0 while number > 0: if number % 10 > maximum: maximum = number % 10 number = number //10 print(maximum) №3 a = input() b="Да" for i in range( len(a) -1): if a[i] == a[i +1]: b="Нет" print(b) №4 i=0 a=int(input()) while a!=0: if a % 3 == 0: i+=1 a=int(input()) print(i) №5 x=int(input()) y=int(input()) i=1 while x<y: x*=1.1 i+=1 print(i) №6 n=int(input()) i=2 while n%i != 0: i+=1 print(i) Лабораторная работа №6 Лабораторная работа №7 №1 n = int(input()) n = [i**2 for i in range (1, n + 1)] print(n) №2 x = int(input("Введите целое число x: ")) array = [] for i in range (1, x+1): array.append(i) print("Массив последовательных натуральных чисел: " , array) №3 def вывод_цифр_числа (число): число = str(число) for цифра in число: print(цифра) вывод_цифр_числа(13453) №4 def вывод_делителей (число): делители = [] for i in range (1, число +1): if число %1==0: делители .append(i) print (" ".join(map(str, делители))) вывод_делителей(20) №5 Лабораторная работа №8 №1 def return_last_num(num): inp = str(num) return inp[-1] print(return_last_num(87127)) №2 def oct_len(num): return len(oct(num)) print(oct_len(int(input("Введите число: ")))) №3 import math def distance(x1, y1, x2, y2): return math.sqrt((x2 - x1)**2 + (y2 - y1)**2) print(distance(0, 0, 4, 3)) №4 def power(a, n): if n == 0: return 1 else: return a * power(a, n - 1) a = int(input("a: ")) n = int(input("n: ")) print(power(a, n)) №5 def mark(a): a.sort() a.pop(0) a.pop(-1) b=0 for i in a: b += i return b / len(a) print(mark([100, 20, 3, 45, 67])) Лабораторная работа №9 №1 n = input("Введите строку: ") n = n.replace(".", "0") n = n.replace("x", "1") print(n) №2 А) string = "Семёнов Андрей" posSpace = string.find(" ") + 1 print(posSpace) Б) string = "Семёнов Андрей" fam = string.split(" ")[0] print(fam) В) string = "Семёнов Андрей" name = string.split(" ")[1] print(name) Г) string = "Семёнов Андрей" name = string.split(" ")[1] new_string = name[0] + "." + " " + string print(new_string) №3 a=input("Фамилия:") b=input("Имя:") c=input("Отчество:") print(f"{b[0]}.{c[0]}.{a}") №4 a=input() c=a.count(" ")+1 print(c) №5 s = "Два слова" a = s.split(" ") result = a[1]+" "+a[0] # result-результат серии вычислений. print(result) №6 string = input("Введите строку: ") f_indexes = [] for i in range(len(string)): if string[i] == "f": f_indexes.append(i) if len(f_indexes) == 1: print(f_indexes[0]) elif len(f_indexes) > 0: print(f_indexes[0], f_indexes[-1]) Лабораторная работа №10 №1 x: int = int(input("Введите число: ")) arr=[] while True: arr.append(x) x+=1 №3 N = int(input("Введите размер массива N: ")) array = [] for i in range(1, N+1): array.append(i) print(array) №4 N = int(input("Введите размер массива N: ")) array =[] for i in range(1, N+1): array.append(i**2) print(array) №5 N = int(input("Введите размер массива N: ")) X = int(input("Введите начальное значение X:")) array =[] for i in range (X, X+1): array.append(i) print ("Массив из N последовательными натуральными цислами с", X, ":", array) №6 n = int(input("Введите степень: ")) arr = [] for i in range(n): arr.append(2**(i + 1)) print(arr) Лабораторная работа №11 №1 print("Введите диапозон от 100 до 1000:") a = int(input()) b = int(input()) count = 0 from random import randint n= 10 A=[0]*N for i in range(10): A[i]=randint(a,b) print (A) for i in range(len(A)): if A[i]>0 and 100<=A[i]<1000 and A[i]%5!=0: count=count+1 print("Количество элементов которые не делятся на 5:", count) №2 print("Введите диапозон:") a=int(input()) b=int(input()) count=0 count1=0 from random import randint N=10 A=[0]*N for i in range (10): A[i]= randint(a,b) print(A) for i in range(len(A)): if A [i]%2==0: count=count+1 else: count1=count1+1 print(count, count1) №3 N=10 A=[0]*N print("Введите массив") for i in range(N): A[i]=int(input()) print(A) for i in range(len(A)): A[I]=A[I]*2 print("Удвоенный массив:",A) №4 a = [1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10] sum_even = 0 for num in a: if num % 2 ==0: sum_even +=num print ("Сумма элементов с четными значениями:", sum_even) №5 N=20 A=[0]*N for i in range(N): A[i]= randint(-10, 10) print(A) print("a)Сумма положитеьных элементов массива:") sum=0 for i in range(len(A)): if A[i]>0: sum = sum+A[i] print (sum) print("b) Сумма чётных положительных элементов массива:") sum1=0 for i in range(len(A)): if A[i]%2== 0 and A[i>0]: sum1 = sum1+A[i] print(sum1) print("c)произведение ненулевых элементов:") pr = 1 for i in range(len(A)): if A[i]!=0: pr=pr*A[i] print(pr) print("d) количество отрицательных элементов в массиве:") count = 0 for i in range(len(A)): if A[i]<0: count= count+1 print (count) №6 from random import randint N=5 A=[0]*N for i in range(N): A[i]= randint(1,10) B=[0]*N for i in range(N): B[i] = randint(1, 10) print("Первый массив:", A) print("Второй массив", B) for i in range(0, len(A), 3): B.append(A[i]) print("Изменённый массив:", B) Лабораторная работа №12 №1 index_of_max = 0 a = [int(i) for i in input().split()] for i in range(1, len(a)): if a[i] > a[index_of_max]: index_of_max = i print(a[index_of_max], index_of_max) №2 a = [int(i) for i in input().split()] x = int(input()) pos = 0 while pos < len(a) and a[pos] >= x: pos += 1 print(pos + 1) №3 n=[int(i) for i in input().split()] max=n.index(max(n)) min=n.index(min(n)) n[max],n[min] = n[min],n[max] print(" ".join(str(i) for i in n)) №4 from random import* A=[randint(50, 150) for i in range(20)] a=min(A) b=max(A) c = A.index(min(A)) d=A.index(max(A)) print("Минимальный элемент -", a, "Индекс -", c ) print("Максимальный элемент - ", b, "Индекс - ", d ) №5 list = [12, 506, 11, 78, 22, 18, 432, 4735, 3489] min_number = min(list) for i in range(len(list)): if i>0: print("Минимальное число: ", min_number) break else: print("нет") №6 a = [1,3,4,5,2,1,22] for i in range(len(a)-1): for j in range(len(a)-i-1): if a[j] < a[j+1]: a[j], a[j+1] = a[j+1], a[j] print(a) №7 def merge_sort(alist, start, end): if end - start > 1: mid = (start + end)//2 merge_sort(alist, start, mid) merge_sort(alist, mid, end) merge_list(alist, start, mid, end) def merge_list(alist, start, mid, end): left = alist[start:mid] right = alist[mid:end] k = start i=0 j=0 while (start + i < mid and mid + j < end): if (left[i] >= right[j]): alist[k] = left[i] i=i+1 else: alist[k] = right[j] j=j+1 k=k+1 if start + i < mid: while k < end: alist[k] = left[i] i=i+1 k=k+1 else: while k < end: alist[k] = right[j] j=j+1 k=k+1 alist = input('Введите список (разделение пробелом): ').split() alist = [int(x) for x in alist] merge_sort(alist, 0, len(alist)) print('Отсортированный список: ', end='') print(alist) Лабораторная работа №13 №1 import random matrix = [[random.randint (1, 99) for _ in range(7) ] for _ in range(7) ] #создание матрицы 7*7 matrix[2][2] = 0#заменяем элементы, отмеченные на рисунке фоном, на число 0 matrix[3][2] = 0 matrix[4][2] = 0 matrix[2][4] = 0 matrix[3][4] = 0 matrix[4][4] = 0 for row in matrix:#вывод полученной матрицы print(row) №2 n=int(input("Введите размер матрицы:")) matrix=[[0 if i> j else 1 for j in range(n)]for i in range(n)] for row in matrix: print(row) №3 a = [1, 2] b = [2, 3] c = [3, 4] d = [3, 4] e = [4, 5] f = [5, 6] print(*a,*d, end= "\n") print(*b,*e, end= "\n") print(*c,*f, end= "\n" ) №4 import numpy as np def fill_snake(matrix, rows, cols): counter = 1 row_start, row_end, col_start, col_end = 0, n - 1, 0, m - 1 while row_start <= row_end and col_start <= col_end: for j in range(col_start, col_end + 1): matrix[row_start][j] = counter counter += 1 row_start += 1 for i in range(row_start, row_end + 1): matrix[i][col_end] = counter counter += 1 col_end -= 1 if row_start <= row_end: for j in range(col_end, col_start - 1, -1): matrix[row_end][j] = counter counter += 1 row_end -= 1 if col_start <= col_end: for i in range(row_end, row_start - 1, -1): matrix[i][col_start] = counter counter += 1 col_start += 1 n = int(input()) m = int(input()) matrix = np.zeros((n, m)) fill_snake(matrix, n, m) print(matrix) №5 matrix = [[1, 2, 3],[4, 5, 6], [7, 8, 9]] sum_of_elements = 0 for row in matrix: for element in row: sum_of_elements += element print("сумма элеиентов матрицы:"), sum_of_elements №6 №7 def calculate_average(matrix): n= len(matrix) sum=0 count=0 for i in range(n): for j in range(i, n): sum+=matrix[i][j] count+=1 average = sum/count return average matrix = [[1, 2, 3],[4, 5, 6],[7, 8, 9]] result = calculate_average(matrix) print("Среднее арифметическое элементов на главной диагонали и под ней:", result)