Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Информатика 9 класс python

fimter . Ученик (99), на голосовании 5 дней назад
дано n наборов данных из трех чисел a, b, c. сколько наборов данных пригодно для построения треугольника с длинами сторон a, b, c?

ответ дайте пожалуйста легкими командами уровня 9 класса
Голосование за лучший ответ
Сектор Газа Знаток (453) 1 месяц назад
Чтобы решить задачу, вы можете написать простой скрипт на Python, который будет вычислять сумму всех цифр номеров страниц от 1 до n. Вот пример кода, который выполняет эту задачу:

```python
def sum_of_digits(n):
total_sum = 0

for page in range(1, n + 1):
# Преобразуем номер страницы в строку и суммируем цифры
total_sum += sum(int(digit) for digit in str(page))

return total_sum

# Пример использования
n = int(input("Введите количество страниц в книге: "))
result = sum_of_digits(n)
print(f"Сумма всех цифр всех номеров страниц книги: {result}")
```

### Как работает код:

1. Функция `sum_of_digits(n)` принимает количество страниц `n`.
2. Инициализирует переменную `total_sum` для хранения суммы всех цифр.
3. Использует цикл `for`, чтобы пройти по всем номерам страниц от 1 до n.
4. Преобразует каждую страницу в строку, затем суммирует цифры, используя генераторное выражение.
5. Возвращает общую сумму цифр.
6. В основной части программы запрашивает у пользователя количество страниц и выводит результат.

Вы можете запустить этот код в вашей среде выполнения Python, и он посчитает сумму цифр всех номеров страниц.
Александр Сидорченко Просветленный (49636) 1 месяц назад
Треугольник существует, если сумма двух его сторон больше третьей стороны.

ЗАДАТЬ (a, b, c) ОТ 1 ДО n

количество существующих треугольников = 0

ЦИКЛ ОТ 1 ДО n
ЕСЛИ [ ((a+b) > c) && ((a+c) > b) && ((b+c) > a) ]
ТО
{
треугольник существует
++ количество существующих треугольников

}

КОНЕЦ ЦИКЛА
Avis Оракул (90513) 1 месяц назад
"Треугольник существует только тогда, когда сумма двух его сторон больше третьей."
Поэтому если делать тупо, то надо сравнить каждую сторону с суммой двух других.
Но мы не будет этого делать, потому что в этом нет смысла: мы будет проверять, что самая большая сторона меньше суммы двух оставшихся, потому что любая сумма, где участвует большая сторона гарантированно будет больше остальных.
Вот так:
 #Набор из длин сторон 
edges = [[3,1,2],[3,4,5],[6,4,3]]

count = 0
for e in edges:
#сортируем набор от меньшего к большему
e.sort()
if e[2] < e [0] + e[1]:
count +=1

print(count)
AvisОракул (90513) 1 месяц назад
А для взрослых мальчиков всё это безобразие можно свернуть, например, вот так:
 edges = [[3,1,2],[3,4,5],[6,4,3]] 
count = sum(e[2] < e[0] + e[1] for e in map(sorted,edges))
print(count)
Похожие вопросы