From c8d290dcac9d56a8f997c5f1cb8eb6f912d1fb27 Mon Sep 17 00:00:00 2001 From: Vitaliy Date: Wed, 6 May 2026 12:23:59 +0300 Subject: [PATCH 1/3] Done nullability task --- build.gradle.kts | 2 +- src/main/kotlin/mate/academy/NumberTransformation.kt | 9 +++++++-- src/main/kotlin/mate/academy/TotalPrice.kt | 9 +++++++-- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 08780a4..cb2df04 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -20,7 +20,7 @@ tasks.test { } kotlin { - jvmToolchain(11) + jvmToolchain(17) } detekt { diff --git a/src/main/kotlin/mate/academy/NumberTransformation.kt b/src/main/kotlin/mate/academy/NumberTransformation.kt index 27818c6..522b343 100644 --- a/src/main/kotlin/mate/academy/NumberTransformation.kt +++ b/src/main/kotlin/mate/academy/NumberTransformation.kt @@ -6,6 +6,11 @@ package mate.academy If the number is not present return null */ -fun getReminder(numberStr: String?) : Int? { - return null +const val TIMES = 3 +const val PLUS = 10 +const val REM = 11 + +fun getReminder(numberStr: String?): Int? { + val number = numberStr?.toInt() ?: return null + return number.times(TIMES).plus(PLUS).rem(REM) } diff --git a/src/main/kotlin/mate/academy/TotalPrice.kt b/src/main/kotlin/mate/academy/TotalPrice.kt index d114745..237b363 100644 --- a/src/main/kotlin/mate/academy/TotalPrice.kt +++ b/src/main/kotlin/mate/academy/TotalPrice.kt @@ -4,6 +4,11 @@ package mate.academy Calculate the products total price based on the provide price per product and products amount. If the price is not provided, use default price per product equal to 29.99 */ -fun calculateTotalPrice(pricePerProduct: Double?, count: Int) : Double { - return 0.0 + +const val PRICE = 29.99 + +fun calculateTotalPrice(pricePerProduct: Double?, count: Int): Double { + + val price = pricePerProduct ?: PRICE; + return price * count } From 0259e6491a52eb80185b1798f9d005909d83aec1 Mon Sep 17 00:00:00 2001 From: Vitaliy Date: Wed, 6 May 2026 12:32:27 +0300 Subject: [PATCH 2/3] Fixed nullability task --- settings.gradle.kts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/settings.gradle.kts b/settings.gradle.kts index 9aa9827..fc91096 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,3 +1,8 @@ - rootProject.name = "kt-nullability" +pluginManagement { + repositories { + gradlePluginPortal() + mavenCentral() + } +} From 93179b90de38395181c3900d965c35bd21a422c7 Mon Sep 17 00:00:00 2001 From: Vitaliy Date: Wed, 6 May 2026 12:43:11 +0300 Subject: [PATCH 3/3] Fixed nullability task --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index cb2df04..b6f0530 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ plugins { - kotlin("jvm") version "1.8.0" + id("org.jetbrains.kotlin.jvm") version "1.8.0" application id("io.gitlab.arturbosch.detekt") version "1.23.3" }