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

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
static private Double getHashString(String string, Integer foundation){
    Double hash = 0.0 ;
    short [] charsToInteger = getCharArray(string);
    double step = Double.MAX_VALUE / 256 - foundation;
    for (int i = 0; i < charsToInteger.length ; i++ ){
        hash += charsToInteger[i] * step;
        step = step / 2 - 1;
    }
    return hash;
}

static private short [] getCharArray(String string){
    char [] chars = string.toLowerCase().toCharArray();
    short [] bytes = new short [chars.length];
    for (int i = 0; i < chars.length; i++){
        bytes [i] = (short) (chars[i] & 0x00FF);
        //System.out.println("bytes [" + i + "] = " + bytes[i]);
    }
    return bytes;
}

Вычисление сигнатуры строки для её применения в сортировке строк в алфавитном порядке по всем символам
https://habr.com/ru/post/709406/ / https://itnan.ru/post.php?c=1&p=709406
https://github.com/Helgi-cell/HashStringAlphabetical

ISO ISO, (Updated )

Комментарии (43, +43)

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

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
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
public static LanguageLevel fromPythonVersion(@Nullable String pythonVersion) {
    if (pythonVersion == null) return null;

    if (pythonVersion.startsWith("2")) {
      if (pythonVersion.startsWith("2.4")) {
        return PYTHON24;
      }
      if (pythonVersion.startsWith("2.5")) {
        return PYTHON25;
      }
      if (pythonVersion.startsWith("2.6")) {
        return PYTHON26;
      }
      if (pythonVersion.startsWith("2.7")) {
        return PYTHON27;
      }
      return DEFAULT2;
    }
    if (pythonVersion.startsWith("3")) {
      if (pythonVersion.startsWith("3.0")) {
        return PYTHON30;
      }
      if (pythonVersion.startsWith("3.1.") || pythonVersion.equals("3.1")) {
        return PYTHON31;
      }
      if (pythonVersion.startsWith("3.2")) {
        return PYTHON32;
      }
      if (pythonVersion.startsWith("3.3")) {
        return PYTHON33;
      }
      if (pythonVersion.startsWith("3.4")) {
        return PYTHON34;
      }
      if (pythonVersion.startsWith("3.5")) {
        return PYTHON35;
      }
      if (pythonVersion.startsWith("3.6")) {
        return PYTHON36;
      }
      if (pythonVersion.startsWith("3.7")) {
        return PYTHON37;
      }
      if (pythonVersion.startsWith("3.8")) {
        return PYTHON38;
      }
      if (pythonVersion.startsWith("3.9")) {
        return PYTHON39;
      }
      if (pythonVersion.startsWith("3.10")) {
        return PYTHON310;
      }
      if (pythonVersion.startsWith("3.11")) {
        return PYTHON311;
      }
      return DEFAULT3;
    }
    return getDefault();
  }

https://github.com/JetBrains/intellij-community/blob/07cef3c4397f026a5f7aa26e783b0bf7dfee5ab2/python/python-psi-api/src/com/jetbrains/python/psi/LanguageLevel.java#L125

DypHuu_niBEHb DypHuu_niBEHb, (Updated )

Комментарии (9, +9)

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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
import java.security.*

var keys = KeyPairGenerator.getInstance("EC").generateKeyPair();
var blankSignature = new byte[64]; // zero bytes
var sig = Signature.getInstance("SHA256WithECDSAInP1363Format");
sig.initVerify(keys.getPublic());
sig.update("Hello, World".getBytes()); // anything
sig.verify(blankSignature); // true

Сказка о том, как джавушки переписали код с небезопасного языка на безопасный и помножили проверку подписей на ноль (в прямом смысле).

https://neilmadden.blog/2022/04/19/psychic-signatures-in-java/

bormand bormand, (Updated )

Комментарии (35, +35)

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

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
  28. 28
  29. 29
  30. 30
  31. 31
import java.util.InputMismatchException;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        try {
            System.out.println("How many characters will be in the password? (1-256):");
            short length = scanner.nextShort();
            if (length > 256) {
                System.out.println("Password can't be longer than 256 characters!");
            } else if (length < 1) {
                System.out.println("Password can't be less than 1 character long!");
            } else {
                System.out.println("How many passwords will be generated? (1-32)");
                byte amount = scanner.nextByte();
                if (amount > 32) {
                    System.out.println("You can't generate more than 32 passwords!");
                } else if (amount < 1) {
                    System.out.println("You can't generate less than 1 password!");
                } else {
                    for (byte i = 0; i < amount; i++) {
                        System.out.println("\n" + PasswordGenerator.generate(length));
                    }
                }
            }
        } catch (InputMismatchException e) {
            System.out.println("Input error!");
        }
    }
}

cringe

zxc254363 zxc254363, (Updated )

Комментарии (0)

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

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
private void calculateOverallTime() {
    if (overallTimeTimer.isTimeOut()) {
        if (overallTime[0] <= 58) {
            overallTime[0] += 1;
        }
        else {
            overallTime[0] = 0;
            if (overallTime[1] <= 58) {
                overallTime[1] += 1;
            }
            else {
                overallTime[1] = 0;
                overallTime[2] += 1;
            }
        }
    }
}

reboober reboober, (Updated )

Комментарии (9, +9)

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

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
package com.company;
import java.util.Scanner;

public class Main {
    public static void main (String [] args) {
         Scanner num = new Scanner(System.in);
         int first;
         System.out.print("Enter first num: ");
         first = num.nextInt();

         if (first==10)
              System.out.print("Num is 10");
}
}

zdavletshin zdavletshin, (Updated )

Комментарии (2, +2)

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

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
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
public class Spot {
    private Piece piece;
    private int x;
    private int y;
  
    public Spot(int x, int y, Piece piece)
    {
        this.setPiece(piece);
        this.setX(x);
        this.setY(y);
    }
  

    public Piece getPiece() // метод возвращает объект фигуру
    {
        return this.piece;
    }
  
    public void setPiece(Piece p)
    {
        this.piece = p;
    }
  
    public int getX()
    {
        return this.x;
    }
  
    public void setX(int x)
    {
        this.x = x;
    }
  
    public int getY()
    {
        return this.y;
    }
  
    public void setY(int y)
    {
        this.y = y;
    }
}

Дизайн шахматной игры
Эти виды вопросов задаются на интервью, чтобы судить о навыке объектно ориентированного дизайна кандидата. Итак, прежде всего, мы должны подумать о классах.
https://habr.com/ru/post/660003/

ISO ISO, (Updated )

Комментарии (75, +75)