Loading...
eli.tt avatar eli.tt 1 Точки

Задача 4. Ергенско парти

Здравейте, заяде ми 4-та задача от Подготовка за изпит C# - Основи на програмирането. Judge ми дава 70/100 - първите 3 теста кодът нещо поднася, не мога да открия къде е грешката:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Bachelor_Party
{
    class Program
    {
        static void Main(string[] args)
        {
            int singerPay = int.Parse(Console.ReadLine());
            int peopleInThisGroup = 0;
            int guests = 0;
            int cover = 0;
            int totalIncome = 0;
            string command = string.Empty;
            while (command != "The restaurant is full")
            {
                command = Console.ReadLine();
                if (command != "The restaurant is full")
                {
                    peopleInThisGroup = int.Parse(command);
                    guests += peopleInThisGroup;
                    if (peopleInThisGroup < 5)
                        cover = 100;
                    else
                        cover = 70;
                    totalIncome += peopleInThisGroup * cover;
                }
                else break;
            }
            int difference = totalIncome - singerPay;
            if (difference > 0) Console.WriteLine($"You have {guests} guests and {difference} leva left.");
            else Console.WriteLine($"You have {guests} guests and {totalIncome} leva income, but no singer.");
        }
    }
}

Ако някой може да помогне, ще съм му наистина благодарна.

0
Programming Basics with C#
kkaraivanov avatar kkaraivanov 486 Точки

Ето моя код за сравнение

using System;

namespace BachelorParty
{
    class Program
    {
        static void Main(string[] args)
        {
            int targetSum = int.Parse(Console.ReadLine());

            int totalPrice = 0;
            int counterGests = 0;
            string input = Console.ReadLine();
            while (input != "The restaurant is full")
            {
                int group = int.Parse(input);
                int curentGroupPrice = 0;
                counterGests += group;
                if (group < 5)
                {
                    curentGroupPrice = group * 100;
                }
                else
                {
                    curentGroupPrice = group * 70;
                }
                totalPrice += curentGroupPrice;
                input = Console.ReadLine();
            }
            if (totalPrice >= targetSum)
            {
                int dif = totalPrice - targetSum;
                Console.WriteLine($"You have {counterGests} guests and {dif} leva left.");
            }
            else
            {
                Console.WriteLine($"You have {counterGests} guests and {totalPrice} leva income, but no singer.");
            }
        }
    }
}

 

0
eli.tt avatar eli.tt 1 Точки

Да, разбрах защо ми дава грешките - за да си позволи изпълнител, приходите на организатора трябва да са сума не само по-голяма от хонорара на изпълнителя, но може и да е равна на този хонорар. В моя код беше заложено само сумата да е по-голяма. Сега сложих >= и се оправи. Благодаря за отговора!

0
Ineskolevaa avatar Ineskolevaa 0 Точки

Здравейте, дава ми грешка при парсването от стринг към инт , може ли помощ

 

import java.util.Scanner;

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

        int sumForGuest = Integer.parseInt(scan.nextLine());
        String input = scan.nextLine();
         int allPeopleCnt = 0;
         double sumForAllPeople = 0;
        while (!input.equals("The restaurant is full.")) {


           int peopleCnt = Integer.parseInt(input);
            allPeopleCnt += peopleCnt;
            double income = 0;

            if (peopleCnt >= 5) {
                income = peopleCnt * 70;
            } else {
                income = peopleCnt * 100;
            }
            sumForAllPeople = sumForAllPeople + income;
            input = scan.nextLine();
        }
        double diff = Math.abs(sumForGuest - sumForAllPeople);
        if (sumForAllPeople < sumForGuest){
            System.out.printf("You have %d guests and %.0f leva income, but no singer.", allPeopleCnt, sumForAllPeople);
        } else {
            System.out.printf("You have %d guests and %.0f leva left.", allPeopleCnt, diff);
        }
    }
}
0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.