В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
proskurina773
proskurina773
09.04.2022 08:51 •  Информатика

использовать нельзя.
'''

Показать ответ
Ответ:
kiggiydduii
kiggiydduii
12.02.2021 21:54

from math import *

from random import *

# Импортирую нужные библиотеки

Num = int(input("Товарищ, ввиди количество элементов в массиве"))

a = int(input("Случайные числа от: "))

b= int(input("До: "))

My_Table = []

for num in range(Num):

        My_Table.append(randint(a,b))

print(My_Table)

#Вторая часть задания с параметром D

d = int(input("Ввиди любое число и я смогу найти максимально близкое, но не равное ему число: "))

Record_abs = []

mt = My_Table

for object in range(len(My_Table)):

      Record_abs.append([abs(mt[object]-d),object])

record = Record_abs[0]

for absolutes in range(len(Record_abs)):

               if Record_abs[absolutes][0]<record[0] and Record_abs[absolutes][0]!=0:

                         record=[Record_abs[absolutes][0],absolutes]

if record[0]!=0:

      print("Ваше число: " + str(My_Table[record[1]]))

      print("Индекс числа в твоем массиве: "+str(record[1]))

     

Вроде работает)!

Обьяснение:

Алгоритм создание случаных чисел и впендюривание их в массив таков:

1.Используйте метод randint в классе random для создание случайных чисел на диапозоне

random.randint(Дипозон1, Дипозон2) =>  random.randint(4, 14) - Случайное число от 4 до 14

2.Чтобы вставить в конце массива элемент надо использовать функцию append привязонную ко всем обьктам класса list

Super_puper_krutoi_masiv = []

Super_puper_krutoi_masiv.append(11)  #Super_puper_krutoi_masiv = [11]

Во второй части задание все чуть посложнее:

Чтобы сравнивать кто ближе, надо знать растояние!

Растояние между цислами = Модуль(Число1 - Число2)

Пример:

Растояние между 7 и 5 будет 2, так, как |7-5| = 2

Растояние между 5 и 7 будет 2, так, как |5-7| = 2

abs() - функция возведения числа в модуль

Делаем тоже самое, только место случайных чисел, отнимаем число d, чтобы определить растояние до него

abs(mt[object]-d)

Также в условие говорится одна вешь - Элемент массива не должен быть равен числу, которое мы ишем( тоесть число d)

[9,9,9,10,10] , при d = 10 ==> 9

Чтобы избежать токого, надо прописать строчку в условие:

Record_abs[absolutes][0]!=0

Так,как ответ может быть таким, лишь при растоянии равным 0

Далее я пихаю всю информацию о растояниях и индексах массивов в перемменную Record_abs

переменная record = [растояние,индекс числа]

массив Record_abs[Индекс] = [растояние,индекс числа]

Ну, вот так, как то!)

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота