Требуется написать программу вычисляющую значение функции

В данной статье мы разберем программу на python для решения линейного уравнения Программа решает уравнение вида ax = b. Коэффициенты a и b задаются пользователем с клавиатуры. Программа находит решение и выводит его на экран. Если решений бесконечное количество или их нет, то программа оповещает об этом.
Все возможные решения линейного уравнения можно описать так
Если a = 0 и b = 0, то решений бесконечное количество.
Если a = 0 и b ≠ 0, то решений нет.
Если a ≠ 0, то единственное решение будет равно b / a.
Для задания коэффициентов с клавиатуры в Python используется функция ввода вещественного числа float(input()). Подробно о вводе информации с клавиатуры в python
a = float(input(«Введите коэффициент a «))
b = float(input(«Введите коэффициент b «))
В Python, чтобы проверить равенство двух объектов, используется ==, для проверки неравенства объектов используется !=. Для проверки двух условий одновременно используется оператор and. Подробно об условиях в python

Возврат нескольких значений функции через указатели. Функция возвращает несколько значений. #49

Программа на Python для решения линейного уравнения
a = float(input(«Введите коэффициент a «))
b = float(input(«Введите коэффициент b «))
if (a == 0 and b == 0):
print(«Бесконечное количество решений.»)
if (a == 0 and b != 0):
print(«Решений нет.»)
if (a != 0):
print(b/a))

Полезно почитать по теме условия в Python примеры
Пример анкеты, опроса на Python

Информатика

Лабораторный практикум по программированию (Бейсик)

Сборник лабораторных работ по языку программирования Basic.

Лабораторная работа №1 «Команда ввода»

ПРИМЕЧАНИЕ: Результаты работы программ и ответы на вопросы записывать в тетрадь.

Задача 1.

Записать в ОП программу:

PRINT «Добрый день»
PRINT « Вычислить произведение чисел А, Х»
А = 5
Х = 4
В = А * Х
PRINT A, X, B

Исполнить программу. Что появилось на экране?

Задача 2.

Изменить последнюю строку:

Исполнить программу. Что появилось на экране? Чем отличается результат от предыдущего?

Задача 3.

Удалить последнюю строку, дописать в программу строки:

Исполнить программу. Что на экране?

Изменить в программе три последние строки:

Исполнить программу. Что на экране?

Задача 4.

Удалить три последние строки.

Исполнить программу. Что на экране?

Контрольное задание к лабораторной работе.

Написать программу вычисления площади трапеции для а = 2.3; в =4.5; h = 5. Вывести на экран исходные данные и результат.

Лабораторная работа №2 «Ввод и редактирование линейных программ»

Цель: Научиться вводить линейные программы. Познакомиться со стандарной функцией INT.

1. Составить программу для подсчета значений функции: y=0.3X^2-1.25X^3+5.64X-8.3, при Х=0.5; -8,126; 0.0015.

После появления знака вопроса набрать первое значение Х и нажать [ENTER]. Записать результат в тетрадь и повторить вычисления для других значений Х.

Напишите программу, проверяющую число, введенное с клавиатуры на четность. Домашнее задание. C++ #2.

2. Написать программу для нахождения значения выражения: Y=(AX^2+B)/(4-3C) ПРИ A=3; B=3; C=2; X=1.

3. Нахождение целой части от числа с помощью функции INT.

Читайте также:
Как лучшая навигационная программа для Андроид

Выполнить программу, которая находит целую часть от деления выражения Y=(А+В)/А при А=15,3; В=0,485; А=112,443; В=18,024.

INPUT A,B
Y=(A+B)/A’вычисляет значение выражения
Z=INT(Y)’ находит целую часть
PRINT “Y=”;Y,”Z=”;Z’ выводит на экран значение выражения и целую часть от него.

4. Программа нахождения остатка от деления Y=N/М, N=15, M=4; N=1234, M=25

INPUT M,N
Z=N-INT(N/M)*M’ вычисление остатка от деления
PRINT “Z=”;Z

Самостоятельная работа.

1. Написать программу для вычисления значения функции и исполнить ее для указанных значений Х.

2. Написать программу для нахождения остатка от деления Y=1986/A.

Лабораторная работа №3 «Программы ветвления. Операторы IF … THEN … ELSE, GO TO»

Цель: Научиться вводить и редактировать разветвляющиеся программы.

1. Написать программу для нахождения значения функции при х =0 y= Ö x для х=-8.34; -0.158; 1.21; 625

2. Ввести программу для нахождения НОД чисел М и N. Исполнить ее для M=1000, N=625; M=1236312, N=9822.

10 INPUT M,N
20 LET X=M
30 LET Y=N
40 PRINT X,Y
50 IF X=Y THEN 110
60 IF X>Y THEN 90
70 LET Y=Y-X
80 GOTO 50
90 LET X=X-Y
100 GOTO 50
110 PRINT “НОД ЧИСЕЛ M и N РАВЕН”;X
120 END

3. Ввести программу решения квадратного уравнения и исполнить её для следующих уравнений: 1125х^2-45x-324=0; 502x^2-38.5x+12/125=0; 16x^2-256x+1024=0.

10 PRINT “РЕШАЕМ УРАВНЕНИЕ AX^2+BX+C=0”
20 INPUT A,B,C
30 D=B^2-4*A*C
40 IF D>0 THEN 100
50 IF D=0 THEN 70
60 PRINT “Нет решения”
70 X=-B/(2*A)
80 PRINT “X1=X2=”;X
90 GOTO 130
100 X1=(-B-SQR(D))/(2*A)
110 X2=(-B+SQR(D))/(2*A)
120 PRINT “X1=”;X1,”X2=”;X2
130 END

4. НАПИСАТЬ ПРОГРАММУ ДЛЯ РЕШЕНИЯ ЛИНЕЙНОГО УРАВНЕНИЯ АХ+В=С, ПРИМЕРЫ.

Лабораторная работа №4 «Ввод и редактирование программ, содержащих циклы»

Цель: Научить вводить редактировать и составлять программы, содержащие циклы.

1. Вывести на экран дисплея значения функции Y=0.3X^3-4.15X^2-0.01X +2.25 для Х от –5 до 5

2. Ввести изменения в предыдущую программу, чтобы значения функции вычислялись с шагом 0.5. для решения этой задачи нужно изменить только первую строчку.

3. Вывести на экран таблицу умножения в виде 2*3=6

Для решения этой задачи будем использовать 2 цикла: один цикл по первому множителю, другой второму. Организуем 2 цикла, где в первом цикле первый множитель будет меняться от 1 до 5, второй от 1 до 9. Во втором цикле первый множитель будет меняться от 6 до 10, а второй также, от 1 до 9.

FOR J=1 TO 9
FOR I=1 TO 5
PRINT “I*J=”;I*J,
NEXT I
NEXT J
PRINT
FOR J=1 TO 9
FOR I=6 TO 10
PRINT “ ”I” “*”J”=”;I*J
NEXT I
NEXT J

4. Генерация случайных чисел.

Функция RND(1) генерирует случайное число от 0 до 1.

После запуска на решение ЭВМ выдаст значение А>0, но A NEXT
PRINT “S=”;S, “N=”;

Самостоятельная работа.

  1. Написать программу заполнения и вывода на экран таблицы квадратов от 1 до 40.
  2. Написать и исполнить программу заполнения массива из 20 элементов по формуле Y=0.2X^2-3X+0.1 и подсчета суммы положительных элементов.

ЛАБОРАТОРНАЯ РАБОТА № 6 «ЛИНЕЙНЫЕ МАССИВЫ (ЧАСТЬ 2)»

Цель: Продолжить изучение программ по обработке массивов.

Задача 4: Составить программу для заполнения таблицы кубов и вывода ее на экран дисплея.

Читайте также:
Что собой представляет программа Microsoft word тест

Задача 5: Элементы массива вычисляются по формуле Y=X^2-X-2, где Х- номер элемента, а Y- его значение. Написать программу, которая:

  • Напечатает на экране первые 15 элементов;
  • Подсчитает их сумму;
  • Подсчитает количество отрицательных элементов;
  • Обнуляет значения суммы и счетчика отрицательных элементов;
  • Цикл подсчета значений элементов и выход их на экран;
  • К предыдущей сумме прибавляет значение следующего элемента;
  • Проверяет, будет ли он отрицательным. Если да, то увеличивает значение счетчика на 1.

DIM A(15)
S=0
K=0
FOR X=1 TO 15
A(X)=X^2-X-2
PRINT A(X);
S=S+A(X)
NEXT X
PRINT “СУММА ЭЛЕМЕНТОВ МАССИВА S=”; S
FOR X=1 TO 15
IF A(X) A(I) THEN MIN=A(I)
NEXT I
PRINT “MIN=”; MIN
FOR I=1 TO 20
IF A(I)=MIN THEN K=K+1
IF A(I)=MIN THEN PRINT “MIN=A(“I”)=”; MIN
NEXT I
PRINT “КОЛИЧЕСТВО МИНИМУМОВ К=”; K
END

Задача 2: Написать программу, которая будет сравнивать значения выражения I^2-1 и J^3-1 для целых значений I и J и будет находить при каких значениях I и J они будут равны.

DIM A(10), B(10)
FOR I=0 TO 10
A(I)=I^2-1
PRINT “A(“I”)=”;A(I)
NEXT I
FOR J=0 TO 10
B(J)=J^3-1
PRINT “B(“J”)=”;B(J)
NEXT J
FOR I=0 TO 10
FOR J=0 TO 10
IF A(I)=B(J) THEN PRINT “A(“I”)=B(“J”)=”;A(I)”=”B(J)
NEXT J
NEXT I
END

Самостоятельная работа.

Задача 1: Изменить программу к задаче так, чтобы были найдены значения I и J, при которых A(I) 0 THEN S=S+A(I,J)
IF A(I,J) 0 THEN N=N+1
IF A(X,Y)

Источник: all-equa.ru

Рассчитать значения функции f(x) в целочисленном интервале Python

Дана функция, вычисляющая значение переменной y в зависимости от переменной x . Дан интервал целых чисел, которые может принимать переменная x.

Необходимо написать программу на языке Python, которая выведет в текстовый файл result.txt значения переменной y для каждого из предложенных x .

Точность значений *у* при распечатке установить в 3 знака после запятой.
Кодировка в текстовом файле должна быть Unicode. Путь к входному и выходному файлу в коде программы нужно сделать относительным.

Сваял вот такое:

import math import cmath f = open(‘source_data.txt’) a = f.readlines() for i in a: x = float(i.strip(‘x=’)) if x < -6: n = ((64 * x ** 7 — 44 * x ** 2 + 44) ** 5 + 56 * x ** 7) / ( (15 * x ** 7 + x ** 3) ** 3 + (34 * x ** 2 + 15) ** 4) f1 = open(«result.txt», ‘a’) f1.write(«При x = » + str(x) + » значение y = » + str(n) + «n») elif -6

введите сюда описание изображения

Интересует правильность ввода формул, как сделать точность до 3 знаков после запятой, и конечно же ошибки которые есть в коде.

Ответы (2 шт):

import math import cmath with open(‘source_data.txt’) as f, open(«result.txt», ‘w’, encoding=»utf-8″) as f1: for i in f: x = float(i.strip(‘x=’)) if x < -6: n = ((64 * x ** 7 — 44 * x ** 2 + 44) ** 5 + 56 * x ** 7) / ( (15 * x ** 7 + x ** 3) ** 3 + (34 * x ** 2 + 15) ** 4) elif -6 значение y = n».format(x, n)) print(«».format(n))

  1. Я не поверял ваши вычисления.
  2. Я исправил ошибки в отступах.
  3. Я исправил ошибку в команде elif -6
  4. open(«result.txt», ‘w’, encoding=»utf-8″) (вместо вашего open(«result.txt», ‘a’) )
  5. Точность значений у при распечатке установил в 3 знака после запятой.
  6. . и что-то другое.

Я проверил этот код — вот мой выводной файл result.txt :

При x = 7.0 значение y = 1.125e+36-8.058e+12j При x = -4.0 значение y = 5.859e-13 При x = -10.0 значение y = 3.182e+19 При x = 0.0 значение y = 0.000e+00-8.196e+06j

После длительных «переговоров» вырисовывается следующее.

Если исходить из ДОСЛОВНОЙ трактовки вопроса, а именно — «как сделать точность до 3 знаков после запятой» оказывается, что просто написать, например

Читайте также:
На какой программе готовить манты в мультиварке редмонд

n = ((64 * x ** 7 — 44 * x ** 2 + 44) ** 5 + 56 * x ** 7) / ( (15 * x ** 7 + x ** 3) ** 3 + (34 * x ** 2 + 15) ** 4)

некорректно, потому что получаемый ответ, опять же например, при x = -10.0 дает значение y= 3.182e+19, а это НИКАК не 3 знака после запятой.

Что-бы получить именно знаки после запятой — можно написать так:

from decimal import Decimal x=10 a=(64 * x ** 7 — 44 * x ** 2 + 44) ** 5 + 56 * x ** 7 b=((15 * x ** 7 + x ** 3) ** 3 + (34 * x ** 2 + 15) ** 4) format(Decimal.from_float(a)/Decimal.from_float(b),’.3f’)
‘31812853625432199804.219’

Что в точности соответствует поставленному условию.

Источник: husl.ru

Задачи: Функции C++

Продолжая знакомить вас с функциями в C++ предлагаем самостоятельно решить несколько задач. Расположены они по уровню сложности.

1. Объявить два целочисленных массива с разными размерами и написать функцию, которая заполняет их элементы значениями и показывает на экран. Функция должна принимать два параметра – массив и его размер.

Показать код
Задача 1: функции C++
using namespace std ;
void fillAndShowArray ( int arrayForFilling [ ] , int size ) ;
const int SIZE1 = 8 ;
const int SIZE2 = 14 ;
int arrayForFilling1 [ SIZE1 ] = < >;
int arrayForFilling2 [ SIZE2 ] = < >;
fillAndShowArray ( arrayForFilling1 , SIZE1 ) ;
fillAndShowArray ( arrayForFilling2 , SIZE2 ) ;
void fillAndShowArray ( int arrayForFilling [ ] , int size )
for ( int i = 0 ; i < size ; i ++ )
arrayForFilling [ i ] = i + 1 ;
cout << arrayForFilling [ i ] << » » ;
cout << endl ;

В этой задаче удобно то, что если необходимо изменить значение размера массива, достаточно изменить соответствующую константу (SIZE1 или SIZE2). Так нам не придется менять эти значения ни в объявлении массивов, ни в параметрах при вызове функции.

Отдельно хочется сказать о передаче в функцию массива, как параметра. Мы говорили в уроке, что при вызове функции создаются точные копии переменных и все изменения происходят именно с этими копиями, а не с переменными. Так что при выходе из функции, переменные не изменят свое значение.

Если всё же надо изменить значение переменных в функции – делается это с помощью ссылок или указателей, которые мы рассмотрим в следующих уроках. С массивами дело обстоит иначе. Все что происходит с элементами массива в функции, сохраняется и после выхода из неё. Это происходит потому, что имя массива – это и есть указатель на его первый элемент.

Когда необходимо передать в функцию одномерный массив, при её определении надо указать пустые [ ] скобки после имени параметра, обозначающего массив. В нашей задаче – void fillAndShowArray ( int arrayForFilling [ ] , int size ) . Если надо передать двумерный массив – первые квадратные скобки оставляют пустыми, а во вторые надо внести значение. Например void fillAndShowArray ( int arrayForFilling [ ] [ 3 ] , int size )

Чтобы передать в функцию массив, при её вызове – достаточно использовать имя массива. Скобки и размер писать не надо (строки 14 – 15).

2. Необходимо создать двумерный массив 5 х 5. Далее написать функцию, которая заполнит его случайными числами от 30 до 60. Создать еще две функции, которые находят максимальный и минимальный элементы этого двумерного массива. (О генерации случайных чисел есть отдельная статья)

Источник: purecodecpp.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru