Loading...
galinyotsev123 avatar galinyotsev123 1 Точки

05. Fitness Center 05. Fitness Center JavaProgrammingBasics.

Здравейте колеги,

Някой може ли да ми каже къде бъркам?

Решението ми минава 2-та примерни теста , но ми дава 0/100 точки.

Изпит по "Основи на програмирането" -  9 и 10 Март 2019

Задача 5. Фитнес център

Напишете програма, която да изчислява броя на посетителите в един фитнес център. В началото програмата получава броя на посетителите на фитнеса и за всеки човек - дейността, която извършва във фитнеса. На края програмата трябва да отпечата броят трениращи за всяка една дейност ("Back", "Chest", 'Legs", "Abs") и броят клиенти, закупили продукт ("Protein shake", "Protein bar"). Също така - процентът трениращи (спрямо общия брой посетители) и процентът на клиентите, закупили продукт от фитнеса.

Вход

От конзолата се чете число, след това поредица от низове, всяко на отделен ред:

  • На първия редброят на посетителите във фитнеса цяло число в интервала [1...1000]
  • За всеки един посетител на отделен ред – дейността във фитнесатекст ("Back", "Chest", "Legs", "Abs", "Protein shake" или "Protein bar")

Изход

Да се отпечатат на конзолата 8 реда, които съдържат следната информация:

Ред 1 -"{брой хора трениращи гръб} - back"

Ред 2 -"{брой хора трениращи гърди} - chest"

Ред 3 -"{брой хора трениращи крака} - legs"

Ред 4 -"{брой хора трениращи коремни мускули} - abs"

Ред 5 -"{брой хора закупили протеинов шейк} - protein shake"

Ред 6 -"{брой хора закупили протеинов блок} - protein bar"

Ред 7 -"{процент на хората дошли да тренират}% - work out"

Ред 8 -"{процент на хората дошли да купят протеин}% - protein"

Всички проценти трябва да са форматирани до втората цифра след десетичния знак.

Примерен вход и изход

Вход

Изход

Обяснения

10

Back

Chest

Legs

Abs

Protein shake

Protein bar

Protein shake

Protein bar

Legs

Abs

1 - back

1 - chest

2 - legs

2 - abs

2 - protein shake

2 - protein bar

60.00% - work out

40.00% - protein

 

Back – един

Chest – един

Legs – двама

Abs – двама

Protein shake –  двама

Protein bar – двама

6 посетители са тренирали – 6 от 10 ->60%

4 посетители са закупили продукти – 4 от 10 -> 40%

 

Вход

Изход

7

Chest

Back

Legs

Legs

Abs

Protein shake

Protein bar

 

1 - back

1 - chest

2 - legs

1 - abs

1 - protein shake

1 - protein bar

71.43% - work out

28.57% - protein

 

 

 

import java.util.Scanner;

public class Main {

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

        double members = Double.parseDouble(scanner.nextLine());

        int backWorkout = 0;
        int chestWorkout = 0;
        int legsWorkout = 0;
        int absWorkout = 0;
        int sellsProteinShakes = 0;
        int sellsProteinBars = 0;
        int activeMembers = 0;
        int inActiveMembers = 0;

        String typeOfActivity = scanner.nextLine();

        for (int i = 1; i <= members; i++) {

            if (typeOfActivity.equalsIgnoreCase("back")) {
                backWorkout++;
                activeMembers++;
            } else if (typeOfActivity.equalsIgnoreCase("chest")) {
                chestWorkout++;
                activeMembers++;
            } else if (typeOfActivity.equalsIgnoreCase("abs")) {
                absWorkout++;
                activeMembers++;
            } else if (typeOfActivity.equalsIgnoreCase("legs")) {
                legsWorkout++;
                activeMembers++;
            } else if (typeOfActivity.equalsIgnoreCase("protein shake")) {
                sellsProteinShakes++;
                inActiveMembers++;
            } else if (typeOfActivity.equalsIgnoreCase("protein bar")) {
                sellsProteinBars++;
                inActiveMembers++;
            }
            typeOfActivity = scanner.nextLine();
        }
        System.out.printf("%d - back%n", backWorkout);
        System.out.printf("%d - chest%n", chestWorkout);
        System.out.printf("%d - legs%n", legsWorkout);
        System.out.printf("%d - abs%n", absWorkout);
        System.out.printf("%d - protein shake%n", sellsProteinShakes);
        System.out.printf("%d - protein bar%n", sellsProteinBars);
        System.out.printf("%.2f%% - work out%n", (activeMembers / members) * 100);
        System.out.printf("%.2f%% - protein%n", (inActiveMembers / members) * 100);

    }
}

 

 

 

0
Programming Basics
Whi7eW0lf avatar Whi7eW0lf 26 Точки
Best Answer

Заповядай : https://pastebin.com/NiaSTTxv , вече дава 100/100. Проблема беше в четенето на дейността . Когато скенера е извън for цикъла , зависва .

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