3vovo4ka3
18.01.2021 05:31

класс. Задача по информатике. Python.
Дан целочисленный массив из 10 элементов, все элементы которого - целые числа в
интервале от -1000 до 1000 Напишите программу, которая находит количество всех элементов
массива, которые делятся на 7 и заканчиваются цифрой 4 Гарантируется, что хотя бы один такой
элемент существует.
Язык программирования Python.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
ismoilov97
04.10.2021 01:34
Ақпарат ұғымы күнделікті өмірден бастап техникалық салада пайдаланылатын көп мағыналы ұғым. Жалпы алғанда бұл ұғым шектеу, байланыс, бақылау, форма, инструкция, білiм, мағына, құрылым, бейнелеу, сезіну тағы басқа ұғымдармен тығыз байланысты. Көп адам бұл жайлы Білім дәуірі немесе білім қоғамы тудырған Ақпарат дәуірі туралы айта бастады; ақпараттық қоғам, ақпараттық технологиялар, тіпті информатика, ақпарат ғылымы және компьютер ғылымы назарға көп түсуде, ал “ақпарат” сөзі білдіре бастаған мағыналары ұқыпсыз пайдаланылуда
0,0(0 оценок)
Ответ:
28.12.2020 13:37

Объяснение:

Создадим тестовый скрипт:

1

#!/usr/bin/env python

2

3

4

def duplicate_encode(word):

5

6

iter = str(word)

7

print(iter)

8

9

duplicate_encode('test')

Запускаем, проверяем:

./duplicate_encode.py

test

Re-playCopy to ClipboardPauseFull View

ОК, теперь можно придумывать решение.

Решение не претендует на оригинальность и уж тем более на идеальность или красоту подхода, но раз кодить на Python приходиться редко — то хотя бы такая разминка для мозгов.

На каком-то собеседовании я встречал похожую задачу, идея решения достаточно простая:

создаём пустой список

запускаем цикл, в котором проверяем каждый элемент переданного в аргументе функции слова

каждый элемент проверяем с циклом: если элемента в списке нет — ставим «(«, если есть — ставим «)»

ОК, пробуем:

01

#!/usr/bin/env python

02

03

def duplicate_encode(word):

04

05

# will conatin word from function's argument

06

iter_word = str(word)

07

# will container already checked items to compare with

08

check_list = []

09

# will contain brackets

10

formatted_list = []

11

12

print('Checking word: {}'.format(iter_word))

13

14

for i in iter_word:

15

print('Checking item: {}'.format(i))

16

if i not in check_list:

17

print('{} not found in the list[], so using ")" symbol'.format(i))

18

check_list.append(i)

19

i = '('

20

formatted_list.append(i)

21

else:

22

print('{} found in the list[], so using "(" symbol'.format(i))

23

check_list.append(i)

24

i = ')'

25

formatted_list.append(i)

26

27

print('Result: {}'.format(''.join(map(str, formatted_list

28

29

duplicate_encode('test')

Рассмотрим код построчно:

iter_word = str(word) — приводим input к типу str, сохраняем в переменную iter_word

check_list = [] — создаём пустой список, в который будем сохранять элементы, которые уже проверены и которым будем сверяться дальше в цикле

formatted_list = [] — пустой сисок, который будет содержать символы «(» и «)»

for i in iter_word: — запускаем цикл и проверяем каждый элемент из переменной iter_word

if i not in check_list — в самом начале список check_list у нас пустой, дальше на каждой итерации ищем в нём очередной элемент i

check_list.append(i) — независимо от результата — добавляем уже проверенный элемент в список check_list

i = '(' — раз i не найден в списке check_list — то сохраняем его в formatted_list как «(«

else: i = ')' — если i найден в списке, то сохраняем его в formatted_list как «)»

print('Result: {}'.format(''.join(map(str, formatted_list — и в конце выводим получившийся список formatted_list в виде обычного слова

Проверяем:

./duplicate_encode.py

Checking word: test

Checking item: t

t not found in the list[], so using ")" symbol

Checking item: e

e not found in the list[], so using ")" symbol

Checking item: s

s not found in the list[], so using ")" symbol

Checking item: t

t found in the list[], so using "(" symbol

Result: )))(

Re-playCopy to ClipboardPauseFull View

ОК — работает.

Но вернёмся к задаче.

Во-первых: «Ignore capitalization when determining if a character is a duplicate» — ОК, добавим строковый метод lower():

1

...

2

for i in iter_word.lower():

3

...

4

duplicate_encode('Test')

Проверяем:

./duplicate_encode.py

Checking word: Test

Checking item: t

t not found in the list[], so using ")" symbol

Checking item: e

e not found in the list[], so using ")" symbol

Checking item: s

s not found in the list[], so using ")" symbol

Checking item: t

t found in the list[], so using "(" symbol

Result: )))(

Re-playCopy to ClipboardPauseFull View

Но тесты в Codewars снова вернут ошибку:

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