Предмет: Информатика, автор: via4eslavkutsenko

Вывести на печать положительные значения функции z=sin(x)+5cos(x-2) для х изменяющегося на отрезке [5-10] с шагом 1,2. Результат вывести на экран и записать в файл.
Задача нужна на Python


olegkrasnov98: Шаг дробный? 1.2?
olegkrasnov98: или с шагом 1 и с шагом 2 нужно написать
via4eslavkutsenko: 1 и 2

Ответы

Автор ответа: vimmortal2
2

Программа:
Python:

Вариант №1) с шагом 1.2

from math import sin, cos

file = open('text.txt', 'w')

x = 5

while x <= 10:

   z = sin(x) + 5 * cos(x - 2)

   if z > 0:

       print(z)

       file.write(str(z) + '\n')

   x += 1.2

file.close()

Вариант №2) с шагом 1.

from math import sin, cos

file = open('text.txt', 'w')

for x in range(5, 10 + 1):

   z = sin(x) + 5 * cos(x - 2)

   if z > 0:

       print(z)

       file.write(str(z) + '\n')

file.close()

Вариант №3) с шагом 2.

from math import sin, cos

file = open('text.txt', 'w')

for x in range(5, 10 + 1, 2):

   z = sin(x) + 5 * cos(x - 2)

   if z > 0:

       print(z)

       file.write(str(z) + '\n')

file.close()

Объяснение:

Основной код всех трёх вариантов почти идентичен. В начале импортируем методы sin, cos из библиотеки math. Считываем файл (если его нет, он создастся) с названием text.txt для записи (по условию не сказано название). С помощью какого-либо цикла переменная x принимает значения на отрезке [5..10] с шагом 1.2 (вариант 1), 1 (вариант 2), 2 (вариант 3). В первом случае использовался цикл while, в двух других - цикл for. В теле всех циклов вычисляется значение функции. Делается проверка, положительно ли это значение. Если да, вывести в консоль (print()), а также записать в файл. В конце обязательно закрываем этот файл.

По умолчанию, если прямой путь не задан, файл создаётся в папке с пользователем текущего пользователя: C:\Users\*название пользователя*. Задать путь можно вот так: D:\\helloworld\\text.txt

Результат:

Код №1)

4.0721724755248

5.485560057666762

Код №2)

2.0752975260349205

5.790209679875211

4.18162975695828

Код №3)

2.0752975260349205

4.18162975695828


Miа16: vimmortal2, привіт! є хвилинка?
MolkyWay: Доброе утро! Помогите пожалуйста!
https://znanija.com/task/48914719
Похожие вопросы
Предмет: Английский язык, автор: Аноним