Segítség kellene egy Java SE feladatban. Felül a feladat, alul pedig a megoldás amire csak 100-ból 71 pontot kaptam. Mi lehet a megoldás? Vagy nem feltétlen kell a megoldás, csak valami segítség, mert már 3 napja ülök a feladaton.
Írjunk programot, amely beolvassa egy szoba méreteit méterben megadva (nem feltétlenül egész számok!), és megadja, hogy 25x25 centiméteres csempéből hány darabra van szükség ahhoz, hogy biztosan és igényesen ki tudjuk csempézni a szobát.
Megjegyzés: csak az oldalfalakat csempézzük, illetve ha egyik irányban nem egészre jön ki a csempék száma, akkor azt fel kell kerekíteni a következő egész számra. Ehhez használjuk a Math.ceil() függvényt, ami a zárójelben lévő számot felfelé kerekíti!)
A bevitt adatok törtszámok is lehetnek és helyesek.Figyeljünk a szóközökre és soremelésekre és az írásjelekre. A kimenet ehhez hasonló kell legyen:
Példa:
A szoba magassága: 2,2
A szoba szélessége: 3,2
A szoba hosszúsága: 1,8
A szoba kicsempézéséhez 378 csempe kell.
A vastagon szedett részek a felhasználó által beírt értékek.
package pkg04_01_csempe_;
import java.util.Scanner;
/**
*
* @author user
*/
public class Csempe {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
System.out.print("A szoba magassága: ");
Scanner sc = new Scanner(System.in);
double magassag = sc.nextDouble();
System.out.print("A szoba szélessége: ");
double szelesseg = sc.nextDouble();
System.out.print("A szoba hosszúsága: ");
double hosszusag = sc.nextDouble();
double csempe = 0.25 * 0.25;
double a = 2 * Math.ceil(magassag * szelesseg) / csempe;
double b = 2 * Math.ceil(magassag * hosszusag) / csempe;
System.out.printf("A szoba kicsempézéséhez %.0f csempe kell.",+ a + b);
}
}
Lehet én gondolom rosszul, de nem az a gond, hogy pl:
ha 1.2 m hosszon hány 0.25-ös csempe fér el egy sorban? 4.8 azaz legalább 5 kell. Azaz szerintem a gond az, hogy te a csempe területével osztottad el az oldalak felületét, de a felület többféle dimenzióból is kijöhet.
Azaz neked az kell egy oldalhosz, hogy pl:
Math.ceil(oldalhossz/csempehossz) * Math.ceil(oldalmagassag/csempemagassag)
Na szóval így nézne ki és szerintem a példával is jó.
double a2 = 2 * Math.ceil(magassag/0.25) * Math.ceil(szelesseg/0.25);
double b2 = 2 * Math.ceil(magassag/0.25) * Math.ceil(hosszusag/0.25);
System.out.printf("A szoba kicsempézéséhez %.0f csempe kell.",+ a2 + b2);
További kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!