Loading...
Ordnata avatar Ordnata 7 Точки

Repairing the tiles -Java- Programming Basics -Exam 24 April 2016

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

Judge  ми дава 30/100 и всеки път иска различно форматиране (един път 11 символа след запетаята, друг път 13 и т.н.).

С двата зададени в задачата теста работи в IJ .

Някой може ли да каже каква е грешката?

Това е условието https://judge.softuni.bg/Contests/Practice/Index/181#0

Това е решението за 30/100 :

 

package _03_24_April_2016;

import java.text.DecimalFormat;
import java.util.Scanner;


public class Repairing_The_Tiles {
    public static void main(String[]args){
        Scanner scanner = new Scanner (System.in);
        DecimalFormat df1 = new DecimalFormat(".###########");
        DecimalFormat df2 = new DecimalFormat(".############");

        //вход за страна на площадката
        double ground_Side = Double.parseDouble(scanner.nextLine());
        double ground_Area = ground_Side * ground_Side;

        //вход за ширина и дължина на плочката
        double tile_Width = Double.parseDouble(scanner.nextLine());
        double tile_Length = Double.parseDouble(scanner.nextLine());
        double one_Tile_Area = tile_Width * tile_Length;

        //вход за ширина и дължина на пейката
        double bench_Width = Double.parseDouble(scanner.nextLine());
        double bench_Length = Double.parseDouble(scanner.nextLine());
        double bench_Area = bench_Width * bench_Length;

        //брой на нужните плочки
        double repairing_Area = ground_Area - bench_Area;
        double number_Tiles = repairing_Area / one_Tile_Area;

        //време за поправка
        double time_Per_Tile = 0.2;
        double time_All_Tiles = number_Tiles * time_Per_Tile;

        System.out.println(df1.format(number_Tiles));
        System.out.println(df2.format(time_All_Tiles));



    }

}

 

 

Тагове:
0
Programming Basics
aggeorgiev avatar aggeorgiev 326 Точки

Подобен проблем има и с други задачи, затова в нашата група питахме лектора.Отговори приблизително следното: тестовете са писани за С-шарп и затова не са съвсем коректни за Джава( в случаите с дробни числа поради различната точност в двата езика - и близнаците си имат някои разлики laugh). По въпроса се работи но едва ли ще се пренапишат тестове за старите издания на изпити и т.н.

0
DilyanaGeorgieva avatar DilyanaGeorgieva 81 Точки

Това е решението, което ми се получи след доста поправки и четене из форума. Накрая вече не ми се пишеха подробни имена на променливите, затова са с по една буква. Тази задача е от сложните откъм получаване на максимума.

https://pastebin.com/aZV9ndHc

0
13/04/2017 23:15:32
Ordnata avatar Ordnata 7 Точки

Тази част с

*10%10;

....!?

:)

0
DilyanaGeorgieva avatar DilyanaGeorgieva 81 Точки

Това го видях в едно решение, заради различното форматиране при различни последни цифри на числото с плаваща запетая, не беше обяснено подробно, но и не намерих по-лесно решение тогава.

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