Loading...
Smaxnatiq avatar Smaxnatiq 0 Точки

Loops - Exercise - 06. Salary

Здравейте, 
Judge дава 77/100  на тази задача. Не показва обаче къде е проблема.

https://pastebin.com/wQiyrN1p

Шеф на компания забелязва че все повече служители прекарват  време в сайтове, които ги разсейват.  

За да предотврати това, той въвежда изненадващи проверки на отворените табове на браузъра на служителите си. Според сайта се налагат различни глоби:

  • "Facebook" -> 150 лв.
  • "Instagram" -> 100 лв.
  • "Reddit" -> 50 лв.

От конзолата се четат два реда:

  • Брой отворени табове в браузъра n - цяло число в интервала [1...10]
  • Заплата - число в интервала [700...1500]

След това n – на брой пъти се чете име на уебсайт – текст

Ако по време на проверката заплатата стане по-малка или равна на 0 лева, на конзолата се изписва
"You have lost your salary." и програмата приключва. В противен случай след проверката на конзолата се изписва остатъкът от заплатата (да се изпише като цяло число).

Тагове:
0
Programming Basics with Java 20/04/2020 11:49:44
nickwork avatar nickwork 657 Точки
Best Answer

По скоро не изпълняваш това условие => Ако по време на проверката заплатата стане по-малка или равна на 0 лева, на конзолата се изписва  "You have lost your salary." и програмата приключва.

Или казано по друг начин в цикъла трябва да сложиш проверка дали заплатата не е станала   < 0 и ако да => прекъсваш цикъла и програмата като цяло

0
Smaxnatiq avatar Smaxnatiq 0 Точки

И аз това мислех, но как да добавя второто условие?

0
nickwork avatar nickwork 657 Точки

Трябва да е нещо такова...само да вмъкна, че не съм от js пътеката... пробвай го по този начин, смятам, че ще проработи

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 = 0; i < n; i++) {
            String webSite = scanner.nextLine().toLowerCase();
            if (webSite.equals("facebook")) {
                salary = salary - 150;
            }
           else if (webSite.equals("instagram")) {
                salary = salary - 100;
            }
            else if (webSite.equals("reddit")) {
                salary = salary - 50;
            }

             if (salary <= 0){
                System.out.println("You have lost your salary");

                  break;
            }
        }
            if(salary>0)
                System.out.println(salary);
        }
    }

0
Smaxnatiq avatar Smaxnatiq 0 Точки

От 17 варианта, които пробвах само break не опитах. 
Проработи, благодаря!

0
NikiKa avatar NikiKa 15 Точки

import java.util.Scanner;

public class SalaryRestrictions {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int tabs = Integer.parseInt(scanner.nextLine());
        int salary = Integer.parseInt(scanner.nextLine());

        int facebook = 150;
        int instagram = 100;
        int reddit = 50;

        for (int i = 1; i <= tabs; i++) {
            String sites = scanner.nextLine();
            switch (sites) {
                case "Facebook":
                    salary -= facebook;
                    break;
                case "Instagram":
                    salary -= instagram;
                    break;
                case "Reddit":
                    salary -= reddit;
            }
            if (salary <= 0) {
                System.out.println("You have lost your salary.");
                return;
            }
        }

        if (salary >= 0) {
            System.out.println(salary);
        }
    }
}
 

0
RosenRPetrov avatar RosenRPetrov 15 Точки

package ProgrammingBasicsJava;

import java.util.Scanner;

public class Salary {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int openTabs = Integer.parseInt(scanner.nextLine());
        int salary = Integer.parseInt(scanner.nextLine());

        for (int i = 0; i < openTabs; i++) {
            String webSite = scanner.nextLine();

            switch (webSite) {
                case "Facebook":
                    salary -= 150;
                    break;
                case "Instagram":
                    salary -= 100;
                    break;
                case "Reddit":
                    salary -= 50;
                    break;
            }
            if (salary <= 0) {
                break;
            }
        }
         if (salary > 0) {
             System.out.println(salary);
         } else {
             System.out.println("You have lost your salary.");
         }
    }
}

 

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.