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

Даны два массива чисел. Требуется вывести те элементы первого массива (в том порядке, в каком они идут в первом массиве), которых нет во втором массиве. Входные данные
Во входном файле записано сначала число N - количество элементов в первом массиве, затем N чисел - элементы массива.
Затем записано число M - количество элементов во втором массиве. Затем записаны элементы второго массива.
Количество элементов каждого массива не превышает 100. Сами элементы по модулю не превышают 1000. Все числа целые

Выходные данные
В выходной файл выведите те элементы первого массива, которых нет во втором в том порядке, в каком они идут в первом массиве.

Пример входного файла
7
3 1 3 4 2 4 12
6
4 15 43 1 15 1

Пример выходного файла
3 3 2 12

Решить на C++

Показать ответ
Ответ:
Ник555555551
Ник555555551
14.12.2022 18:47

Вы немного не понимаете, что такое локальные переменные.

Давайте объясню.

Локальными называются переменные, объявленные внутри функции и доступные только ей самой. Программный код за пределами функции к ним доступа не имеет. В этом и ошибка, Вы вызываете функцию differ() и применяете переменные, которые находятся в count_number() и suma_number(). Локальные переменные скрыты от других функций.

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

1. Пишем перед функцией глоб. переменную

suma = 0

def suma_number(number):

   pass

2. Присваиваем значение глобальной переменной внутри функции с ключевое слово global:

suma = 0

def suma_number(number):

   global suma

   pass

Полная программа:

number = int(input('Введите число: '))

suma = 0

def suma_number(number):

   global suma

   while number > 0:

       digit = number % 10

       suma = suma + digit

       number = number // 10

   print('\nСумма цифр:', suma)

suma_number(number)

digitcount = 0

def count_number(number):

   global digitcount

   countnumber = number

   while countnumber > 0:

       digitcount += 1

       countnumber = countnumber // 10

   print('Кол-во цифр в числе:', digitcount)

count_number(number)

def differ(suma, digitcount):

   diff = suma - digitcount

   print('Разность суммы и кол-ва цифр:', diff)

differ(suma, digitcount)

Можно обойтись и без глоб. переменных:

Когда Вы вызываете функцию differ(), не используйте локальные переменные из других функций, просто вызовите эти функции:

differ(suma_number(number), count_number(number))

Кстати, если задуматься, код можно сделать проще:

def suma_number(a):

   return sum(map(int, list(a)))

def count_number(a):

   return len(a)

def differ(a, b):

   return a - b

n = input('Введите число: ')

print('Сумма цифр:', suma_number(n))

print('Кол-во цифр в числе:', count_number(n))

print('Разность суммы и кол-ва цифр:', differ(suma_number(n), count_number(n)))

Хотя можно и совсем "извращение" сделать без функций в 2 строчки..

n = input('Введите число: ')

print('Сумма цифр:', sum(map(int, list(n))), '\nКол-во цифр в числе:', len(n), '\nРазность суммы и кол-ва цифр:', sum(map(int, list(n))) - len(n))

Это так, пища для размышления.

0,0(0 оценок)
Ответ:
Paketo18
Paketo18
14.01.2023 03:29

power point — убедительный доклад) — программа подготовки презентаций и просмотра презентаций, являющаяся частью Microsoft Office и доступная в редакциях для операционных систем Microsoft Windows и macOS, а также для мобильных платформ Android и IOS.

Робототе́хника — прикладная наука, занимающаяся разработкой автоматизированных технических систем и являющаяся важнейшей технической основой развития производства

Скретч - это новая среда программирования, которая позволяет детям создавать собственные анимированные и интерактивные истории, презентации, модели, игры и другие произведения. Этими произведениями можно обмениваться внутри международной среды, которая постепенно формируется в сети Интернет.

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