Школоло / Говнокод #10586 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
procedure TForm1.Button1Click(Sender: TObject);
const
n=4;
var
x,y,r: integer;
 x1, y1, x2, y2, x3, y3, x4, y4,i : real;
  a: string;
begin
  //n:=strtoint(edit1.text);
   x:=strtoint(edit2.text);
    y:=strtoint(edit3.text);
      x1:=strtofloat(edit4.text);
       y1:=strtofloat(edit5.text);
         x2:=strtofloat(edit1.text);
       y2:=strtofloat(edit6.text);
         x3:=strtofloat(edit7.text);
       y3:=strtofloat(edit8.text);
         x4:=strtofloat(edit9.text);
       y4:=strtofloat(edit10.text);
          if (y1>y) or (y1<0) or (x1>x)or (x1<0)  then
        showmessage('дачник 1');
          if (y2>y) or (y2<0) or (x2>x+x)or (x2<0)  then
        showmessage('дачник 1');
        if (y3>y) or (y3<0) or (x3>x+x)or (x3<0)  then
        showmessage('дачник 1');
        if (y4>y) or (y4<0) or (x4>x+x)or (x4<0)  then
        showmessage('дачник 1');

условие не лучше решения)
"Всем известно, что дачники – народ странный. Строят они свои дачи непонятно где, да и выращивают там непонятно что и непонятно зачем. А уж как они туда добираются, это другая история: кто на автобусе, кто на электричке, кто на автомобиле, ну а кто-то во-все пешком ходит от дома и до самого участка. Так что не стоит удивляться, если вдруг Вы узнаете, что некое садоводческое товарищество располагается на острове, а дачники добираются до него самолетом. Да еще и на этом острове может не быть посадочной полосы, так что высадиться на остров можно, только прыгая с парашютом (мы уж не рассматриваем то, как они возвращаются с дач домой). Рассмотрим этот уникальный случай. Пилот всегда старается осуществить высадку парашютистов таким образом, чтобы дачники приземлялись как можно ближе к своим прямоугольным участкам. Пилоту интересно знать: сколько дачников приземлится на свои участки? Помогите ему решить эту задачу!"
O_o

Запостил: qwerty13 qwerty13, (Updated )

Комментарии (6) RSS

  • Ну если это вся задача, без каких либо входных данных, то можно было проще:

    randomize;
    x:=random(9);
    showmessage('Количество дачников, приземлитвшихся на свои участки: '+inttostr(x));

    А потом корчить покерфейс и объяснять, почему ты прав, и почему автору надо выпить яду.
    Ответить
  • если не ошибаюсь, задача с ACMP.ru, как-то давно я её тоже решал, будучи ещё школьником, когда увлекался олимпиадами

    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.PrintWriter;
    import java.util.Scanner;
    import static java.lang.Math.abs;
    import static java.lang.Math.sqrt;
    import static java.lang.Math.pow;
    
    public class Main {
        private static final double EPS = 1E-5;
        
        public static void main(String[] args) {
            Scanner sc = null;
            PrintWriter pw = null;
            try {
                sc = new Scanner(new FileReader("input.txt"));
                pw = new PrintWriter("output.txt");
            } catch (FileNotFoundException e) {}
            
            
            int n = sc.nextInt(), ans = 0, x[] = new int[6], y[] = new int[6];
            while (n-- > 0) {
                for (int i = 0; i < 5; ++i) {
                    x[i] = sc.nextInt();
                    y[i] = sc.nextInt();
                }
                x[5] = x[1];
                y[5] = y[1];
                double square = sqrt(pow (x[1] - x[2], 2D) + pow (y[1] - y[2], 2D)) * sqrt(pow (x[2] - x[3], 2D) + pow (y[2] - y[3], 2D));
                for (int i = 1; i < 5; ++i) {
                    double a = sqrt (pow (x[0] - x[i], 2D) + pow (y[0] - y[i], 2D)),
                            b = sqrt (pow (x[0] - x[i + 1], 2D) + pow (y[0] - y[i + 1], 2D)),
                            c = sqrt (pow (x[i] - x[i + 1], 2D) + pow (y[i] - y[i + 1], 2D)),
                            p = (a + b + c) / 2D;
                    square -= sqrt (p * (p - a) * (p - b) * (p - c));
                }
                ans += abs(square) <= EPS ? 1 : 0;
            }
            pw.println(ans);
            
            sc.close();
            pw.flush();
            pw.close();
        }
    }
    Ответить

Добавить комментарий

Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:

    А не использовать ли нам bbcode?


    8