Я пытался нарисовать коробку с бутылками, в которой было 24 бутылки (в формате 4 * 6). Если число больше 24, полные пивные ящики вывозятся, и отображается только верхний (то есть тот, который не полностью заполнен). Возвращаемое значение - количество полных ящиков для пива. (Так, например, если 52 сдано, 4 бутылки пива должны быть помечены как заполненные, а номер 2 должен быть возвращен.
import java.awt.Graphics;
import java.awt.Color;
import javax.swing.JFrame;
import java.util.ArrayList;
public class Experiment extends JFrame {
/**
* Constructor for objects of class Experiment
*/
public Experiment() {
setTitle("Experiment");
setSize(500, 500);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void paint(Graphics g) {
//g.drawRect(84, 48, 400, 360);
//g.drawOval(84,48, 60, 60);
g.setColor(Color.ORANGE);
g.fillOval(84, 48, 60, 60);
}
public static void main(String[] args) {
Experiment e = new Experiment();
e.paint(null);
}
** проблема здесь g.drawOvalне принимается. ArrayList не принимает овалы (бутылки) говорит: не может найти символ - переменная g. **
public void bierflaschen(int a, String farbe) {
int x = 84, y = 48;
ArrayList Flaschen = new ArrayList();
for (int i = 1; i <= a; i++) {
Flaschen.add(`g.drawOval` (60, x, y, farbe));
if (i % 6 == 0) {
y += 48;
x = 84;
} else {
x += 48;
}
}
}
public int fuellen(int wert) {
bierflaschen(24, "");
//kiste();
int b = wert % 24;
if (b == 0) {
bierflaschen(24, "gelb");
return (wert / 24) - 1;
} else {
bierflaschen(b, "gelb");
return (wert - b) / 24;
}
}
}