From 28dcc3249ae98ee33e16b920b83dea33ac20c0e4 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 13 Dec 2019 14:08:45 +0300 Subject: [PATCH 1/2] =?UTF-8?q?=D0=92=D1=8B=D0=BF=D0=BE=D0=BB=D0=BD=D0=B8?= =?UTF-8?q?=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test.txt | 1 - 1 file changed, 1 deletion(-) delete mode 100644 test.txt diff --git a/test.txt b/test.txt deleted file mode 100644 index 56a6051..0000000 --- a/test.txt +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file From 6066db948ab1d02403bb3c6ac0f252f4a4abe013 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 13 Dec 2019 14:09:26 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=92=D1=8B=D0=BF=D0=BE=D0=BB=D0=BD=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=B2=D1=81=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- task01.py | 12 ++++++++++++ task02.py | 13 +++++++++++++ task03.py | 28 ++++++++++++++++++++++++++++ task04.py | 18 ++++++++++++++++++ task05.py | 12 ++++++++++++ task06.py | 31 +++++++++++++++++++++++++++++++ task07.py | 17 +++++++++++++++++ 7 files changed, 131 insertions(+) create mode 100644 task01.py create mode 100644 task02.py create mode 100644 task03.py create mode 100644 task04.py create mode 100644 task05.py create mode 100644 task06.py create mode 100644 task07.py diff --git a/task01.py b/task01.py new file mode 100644 index 0000000..c25b27c --- /dev/null +++ b/task01.py @@ -0,0 +1,12 @@ +# Задание №1 +# В диапазоне натуральных чисел от 2 до 99 определить, сколько из них кратны +# каждому из чисел в диапазоне от 2 до 9. + +sum_ = 0 +for i in range(2, 99+1): + for j in range(2, 9+1): + if (i % j) == 0: + sum_ += 1 + break + +print("Количество кратных чисел:", sum_) \ No newline at end of file diff --git a/task02.py b/task02.py new file mode 100644 index 0000000..3edb8ca --- /dev/null +++ b/task02.py @@ -0,0 +1,13 @@ +# Задание №2 +# Во втором массиве сохранить индексы четных элементов первого массива. +# Например, если дан массив со значениями 8, 3, 15, 6, 4, 2, второй массив +# надо заполнить значениями 0, 3, 4, 5, (индексация начинается с нуля), +# т.к. именно в этих позициях первого массива стоят четные числа. + +array1 = [4,6,3,6,8,5,9,34,57,78,44,23,55,62] +array2 = [] +for inx, val in enumerate(array1): + if val % 2 == 0: + array2.append(inx) + +print("Искомый массив: ", array2) \ No newline at end of file diff --git a/task03.py b/task03.py new file mode 100644 index 0000000..01ea9f0 --- /dev/null +++ b/task03.py @@ -0,0 +1,28 @@ +# Задание №3 +# В массиве случайных целых чисел поменять местами минимальный и максимальный +# элементы. + +import random + + +def get_MaxMin_Inx(source_array): + max_inx = min_inx = 0 + for inx, val in enumerate(source_array[1:], 1): + if val > source_array[max_inx]: + max_inx = inx + if val < source_array[min_inx]: + min_inx = inx + return {'max_inx': max_inx, 'min_inx': min_inx} + + +size_array = 10 +source_array = [random.randint(1,50) for _ in range(size_array)] + +res = get_MaxMin_Inx(source_array) +result_array = source_array.copy() +result_array[res["min_inx"]] = source_array[res["max_inx"]] +result_array[res["max_inx"]] = source_array[res["min_inx"]] + +print("Минимальное:", source_array[res["min_inx"]], "\nМаксимальное:", source_array[res["max_inx"]]) +print(source_array) +print(result_array) \ No newline at end of file diff --git a/task04.py b/task04.py new file mode 100644 index 0000000..6ebbb54 --- /dev/null +++ b/task04.py @@ -0,0 +1,18 @@ +# Задание №4 +# Определить, какое число в массиве встречается чаще всего. + +number = { + "num" : 0, + "count" : 0 +} +array = [45, 44, 47, 9, 47, 9, 44, 28, 41, 9] +for inx, val in enumerate(array[:-1]): + cur_count = 1 + for inx_, val_ in enumerate(array[inx+1:],inx+1): + if val == val_: + cur_count += 1; + if cur_count > number["count"]: + number["num"] = val + number["count"] = cur_count +print("Максимальное число:", number["num"],"\nВстречается:",number["count"]) + diff --git a/task05.py b/task05.py new file mode 100644 index 0000000..88ca35b --- /dev/null +++ b/task05.py @@ -0,0 +1,12 @@ +# Задание №5 +# В массиве найти максимальный отрицательный элемент. Вывести на экран его значение и позицию в массиве. +# Примечание к задаче: пожалуйста не путайте «минимальный» и «максимальный отрицательный». Это два +# абсолютно разных значения. + +max_ = None +array = [45, 44, -47, 9, 47, -9, 44, -2, 41, 9] +for inx, val in enumerate(array[:-1]): + if val < 0: + if max_ is None or val > max_: + max_ = val +print(max_) diff --git a/task06.py b/task06.py new file mode 100644 index 0000000..9f58e81 --- /dev/null +++ b/task06.py @@ -0,0 +1,31 @@ +# Задание №6 +# В одномерном массиве найти сумму элементов, находящихся между минимальным и максимальным элементами. +# Сами минимальный и максимальный элементы в сумму не включать. + +import random + +def get_MaxMin_Inx(source_array): + max_inx = min_inx = 0 + for inx, val in enumerate(source_array[1:], 1): + if val > source_array[max_inx]: + max_inx = inx + if val < source_array[min_inx]: + min_inx = inx + return {'max_inx': max_inx, 'min_inx': min_inx} + + +size_array = 10 +array = [random.randint(1,50) for _ in range(size_array)] +print(array) +res = get_MaxMin_Inx(array) +print(res) +sum_ = 0 +if res["max_inx"] > res["min_inx"]: + range_start = res["min_inx"] + 1 + range_end = res["max_inx"] +else: + range_start = res["max_inx"] + 1 + range_end = res["min_inx"] +for i in array[range_start:range_end]: + sum_ += i +print("Требуемая сумма:", sum_) diff --git a/task07.py b/task07.py new file mode 100644 index 0000000..ff1a183 --- /dev/null +++ b/task07.py @@ -0,0 +1,17 @@ +# Задание №7 +# В одномерном массиве целых чисел определить два наименьших элемента. Они могут быть как равны +# между собой (оба являться минимальными), так и различаться. + +source_array = [4,6,3,6,8,5,9,34,57,78,1,23,8,62] +print(source_array) +array = source_array.copy() +min_ = [] +for i in range(0, 2): + min_.append(array[0]) + min_inx = 0 + for inx,val in enumerate(array[1:],1): + if val < min_[-1]: + min_[-1] = val + min_inx = inx + del array[min_inx] +print(min_)