07. Salary - FOR цикъл
Здравейте,
може ли малко помощ с тази задача , примерните входове и изходи са окей но Judge дава 66/100 и не мога да разбера къде е проблема.
https://pastebin.com/G8FwGQqq
Благодаря предварително :)
Здравейте,
може ли малко помощ с тази задача , примерните входове и изходи са окей но Judge дава 66/100 и не мога да разбера къде е проблема.
https://pastebin.com/G8FwGQqq
Благодаря предварително :)
Здравей,
според мен нямаш нужда от допълнителните променливи, те малко са те пообъркали и от там идват грешките. В твоя код ако "n" е 2, а при n=1 имаш въведен сайт с глоба напр."Facebook", globa приема стойност 150, излиза от switch и заплатата се намалява с 150, но ако при n=2, сайтът не е с глоба, globa си стои със стойност 150 и отново ще се намали заплатата въпреки, че не трябва.
Пробвай така:
for (int i = 1; i <= n; i++) { String type = scanner.nextLine(); switch (type){ case "Facebook": salary-= 150; break; case "Instagram": salary-= 100; break; case "Reddit": salary-= 50; break; } if (salary <= 0){ System.out.println("You have lost your salary."); return; } } System.out.println(salary);
import java.util.Scanner; public class Salary { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = Integer.parseInt(scanner.nextLine()); int salary = Integer.parseInt(scanner.nextLine()); for (int i = 1; i <= n; i++) { String site = scanner.nextLine(); switch (site) { case "Facebook": salary -= 150; break; case "Instagram": salary -= 100; break; case "Reddit": salary -= 50; break; } }if (salary <= 0){ System.out.println("You have lost your salary."); } else { System.out.println(salary); } } }
Благодаря за помоща , явно доста съм се заблудил щом толкова пъти дебъгвах и не си видях грешката :)
Мале точно това return в иф-а :) е големия проблем!
И аз благодаря колега.
Аз се чудих 1 час уж всичко смята точно накрая 77 точки и 80 и нестава 100, после видях това ретърн. А то всъщност функцията му е да връща до откат така ли ? Else няма ли как да го направи това ?