Loading...
RadostinD avatar RadostinD 16 Точки

04. Walking - While-Loop

Здравейте,

Скъсах си нервите с тази задача и ще съм много благодарен ва малко помощ.

Условието на задачата е:

4. Стъпки

Габи иска да започне здравословен начин на живот и си е поставила за цел да върви 10 000 стъпки всеки ден. Някои дни обаче е много уморена от работа и ще иска да се прибере преди да постигне целта си. Напишете програма, която чете от конзолата по колко стъпки изминава тя всеки път като излиза през деня и когато постигне целта си да се изписва "Goal reached! Good job!

Ако иска да се прибере преди това, тя ще въведе командата "Going home" и ще въведе стъпките, които е извървяла докато се прибира. След което, ако не е успяла да постигне целта си, на конзолата трябва да се изпише: "{разликата между стъпките} more steps to reach goal."

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

Вход

Изход

Вход

Изход

1000

1500

2000

6500

 

Goal reached! Good job!

1500

300

2500

3000

Going home

200

2500 more steps to reach goal.

 

Първо се опитах по този начин, но прочиташе само първия ред и само го записваше. https://pastebin.com/BURA2nf3

Потърсих отговори от други колеги и сглобих този код, но пак без успех. https://pastebin.com/6qLqSSGQ

Изкарва ми грешка при парсването от String към int, но не мога да разбера къде точно греша.

Благодаря за съдействието!

Тагове:
0
Programming Basics with Java
thedescent avatar thedescent 11 Точки
Best Answer

Приятел пробвай така:

Малко е на прима виста, ако го пипнеш още малко ще стане супер.

import java.util.Scanner;
public class countSteps {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int goalSteps = 10000;
        int countallSteps = 0;
        String command = scan.nextLine();

        while (!command.equals("Going home")){
            int countSteps = Integer.parseInt(command);
            goalSteps -= countSteps;
            countallSteps += countSteps;
            if (countallSteps >= 10000){
                System.out.printf("Goal reached! Good job!");
                break;
            }
            command = scan.nextLine();
        }
        if (command.equals("Going home")){
            int stepsToHome = Integer.parseInt(scan.nextLine());
            goalSteps -= stepsToHome;
                System.out.printf("%d more steps to reach goal.",goalSteps);
            }
        }
    }



0
RadostinD avatar RadostinD 16 Точки

Здравей,

Пипнах го и стана супер! https://pastebin.com/2ufEUHrr

Много ти благодаря за съдействието!

 

1
thedescent avatar thedescent 11 Точки

Радвам се, че съм помогнал 

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