
осень / котлин4
.docxГУАП
КАФЕДРА № 41
ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ
ПРЕПОДАВАТЕЛЬ
Старший преподаватель |
|
|
|
В.И. Ушаков |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ О ПРАКТИЧЕСКОЙ РАБОТЕ №4 |
ФУНКЦИОНАЛЬНОЕ ПРОГРАММИРОВАНИЕ |
по курсу: Разработка мобильных приложений. Основы языка программирования Kotlin |
|
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ гр. № |
4116 |
|
|
|
|
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург 2023
Задание
Вариант 8
Программа должна вычислять значение заданной функции путем разложения в ряд Маклорена с заданной точностью и с использованием стандартной функции класса Math. Аргумент функции и точность должны задаваться пользователем. Ввод и вывод информации можно осуществлять через командную строку. При разработке следует придерживаться принципов функционального программирования.
Листинг кода:
import kotlin.math.*
fun main() {
val x = readInput("Введите значение x для ln(1 + x):").toDouble()
val precision = readInput("Введите точность (количество членов ряда):").toInt()
val result = calculateLn(x, precision)
println("ln(1 + $x) = $result")
}
fun calculateLn(x: Double, precision: Int): Double {
var result = x
var term = x
var sign = -1.0
for (i in 2..precision) {
term = x.pow(i)
result += sign * term / i
sign = -sign
}
return result
}
fun readInput(message: String): String {
println(message)
return readLine() ?: throw IllegalArgumentException("Неверный ввод")
}
Результат работы программы:
Для x=0.7 и точности (n) =7, значение заданной функции равно 0.535 (рисунок 1).
Рисунок 1- Результат работы программы для x=0.7 и n=7
Для x=0.5 и n=7 значение функции равно 0.405 (рисунок 2).
Рисунок 2- Результат работы программы для x=0.5 и n=7
Вывод: написана программа для вычисления значения функции путем разложения в ряд Маклорена с заданной точностью.