Задача Tourist Shop - 50/100 - Python
Здравейте,
Не мога да се справя с решението на тази задача.
Това е кодът ми -> https://pastebin.com/NQjAghej.
Ако някой има възможност да ми даде насоки, ще съм безкрайно благодарна!
Здравейте,
Не мога да се справя с решението на тази задача.
Това е кодът ми -> https://pastebin.com/NQjAghej.
Ако някой има възможност да ми даде насоки, ще съм безкрайно благодарна!
Здравей, elly22chan,
Предлагам ти да опиташ следните неща:
- изнеси прочитането на продукта преди да влезеш в цикъла;
- while product != "Stop":
- махаш от цикъла проверката if product == "Stop" и принтирането в нея, и я изнасяш най-отдолу след излизането от цикъла;
- брояча го инкрементираш преди проверката за това дали си на третия продукт, като самата нея я променяш така
if product_counter % 3 == 0:
и я слагаш веднага след него, и чак след това слагаш проверката дали цената е по-голяма от остатъка от парите;
- слагаш ново прочитане на продукт;
Това са стъпките. Ако имаш още затруднения, пиши пак и ще помагаме отново.
Успех!
ако решение на Java ти върши работа, заповядай
import java.util.Scanner;
public class p04{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double budget = Double.parseDouble(scanner.nextLine());
int itemCount = 0;
double itemTotalPrice = 0;
String command = scanner.nextLine();
while (!command.equals("Stop")) {
double itemPrice = Double.parseDouble(scanner.nextLine());
itemCount = itemCount + 1;
if (itemCount % 3 == 0) {
itemTotalPrice = itemTotalPrice + itemPrice / 2;
} else {
itemTotalPrice = itemTotalPrice + itemPrice;
}
if (itemTotalPrice > budget) {
break;
}command = scanner.nextLine();
}
if (itemTotalPrice > budget) {
System.out.println("You don't have enough money!");
System.out.printf("You need %.2f leva!", itemTotalPrice - budget);
} else {
System.out.printf("You bought %d products for %.2f leva.", itemCount, itemTotalPrice);
}
}
}
Пробвах така -> https://pastebin.com/PQEvH7MQ.
Всички решения, които пробвам, гърмят в Judge на втория zero test с тази грешка:
Traceback (most recent call last): File "C:\Windows\TEMP\ExecutionStrategies\qfok4sqq.xth\tmp1468.tmp", line 17, in <module> command = input() EOFError: EOF when reading a line
В pycharm всичко работи, но в Judge, ако в продукта има шпация, гърми. В случая на грешката е "Thermal Underwear"...
Пробвах всякакви вариации на решение.
100 % solution by MartinBG for Python (https://softuni.bg/forum/30521/exam-02-03-may-2019-zadacha-tourist-shop)
budget = float(input())
counter = 0
bill = 0
while True:
product = input()
if product == "Stop":
print(f"You bought {counter} products for {bill:.2f} leva.")
break
item_price = float(input())
if (counter + 1) % 3 == 0:
item_price *= 0.5
if item_price + bill > budget:
diff = item_price + bill - budget
print("You don't have enough money!")
print(f"You need {diff:.2f} leva!")
break
counter += 1
bill += item_price
Ето моя вариант за решение, по него ти бях описал насоките в предния пост: https://pastebin.com/evXb8MZS.
Абсолютно същия резултат -> https://pastebin.com/FGQAQScg.
Пробвах и така -> https://pastebin.com/PQEvH7MQ.
Всички решения, които пробвам, гърмят в Judge на втория zero test с тази грешка:
В pycharm всичко работи, но в Judge, ако в продукта има шпация, гърми. В случая на грешката е "Thermal Underwear"...
Пробвах всякакви вариации на решение.
Ето моя вариант за решение, по него ти бях описал насоките в предния пост:
https://pastebin.com/evXb8MZS.