public static void main(String[] args) { int b, c; String a; boolean check = false; out.print("Insira um número que não esteja em base decimal: "); a = sc.next(); out.print("\nAgora insira a base em que o número se encontra (entre 2 e 10): "); b = sc.nextInt(); for (int i = 0; i < a.length(); i++) { if (Character.getNumericValue(a.charAt(i)) >= b) check = true; } while (b < 2 || b > 10 || check) { out.print("\nEntrada inválida."); out.print("\nInsira um número que não esteja em base decimal: "); a = sc.next(); out.print("\nAgora insira a base em que o número se encontra (entre 2 e 10): "); b = sc.nextInt(); for (int i = 0; i < a.length(); i++) { if (Character.getNumericValue(a.charAt(i)) >= b) check = true; else check = false; } } c = basetoNum(a, b); out.print("\nO seu número em base decimal é " + c + "."); }
public static int basetoNum(String a, int b) { int c = 0; int i = 0; for (int j = a.length() - 1; j >= 0; j--) { c += ((Character.getNumericValue(a.charAt(j))) * (Math.pow(b, i))); i++; } return c; }
public static String firstReaptingCharacter(String s) { HashMap map = new HashMap<Character, Boolean>(); for (int i = 0; i < s.length(); i++) { char cur = s.charAt(i); if (map.containsKey(cur)) { if ((Boolean) map.get(cur) == false) map.put(cur, true); } else { map.put(cur, false); } } Iterator it = map.entrySet().iterator(); String re = null; while (it.hasNext()) { Map.Entry pair = (Map.Entry) it.next(); re = Character.toString((Character) pair.getKey()); } return re; }
public static void checkLetter(String a) { char[] check = new char[a.length()]; int k = 0; boolean c = false; for (int i = 0; i < a.length(); i++) { if (Character.isWhitespace(a.charAt(i))) i++; for (int j = 0; j < a.length(); j++) { if (a.charAt(i) == check[j]) c = true; } if (c == false) { check[k] = a.charAt(i); k++; } c = false; } for (int z = 0; z < check.length; z++) { out.print(check[z]); } }
public static String reverseWords(String s) { StringBuilder builder = new StringBuilder(); // edge case if (s == null) return null; if (s.length() == 0) return ""; int strLength = s.length(); // left edge int leftEdge = -1; for (int i = 0; i < strLength; i++) { if (s.charAt(i) != ' ') { leftEdge = i; break; } } if (leftEdge == -1) return ""; // right edge int rightEdge = -1; for (int j = s.length() - 1; j >= 0; j--) { if (s.charAt(j) != ' ') { rightEdge = j; break; } } if (rightEdge == leftEdge) return Character.toString(s.charAt(leftEdge)); int wordStart = rightEdge; int wordEnd = 0; for (int k = rightEdge - 1; k >= leftEdge; k--) { char c = s.charAt(k); if (c != ' ') { if (s.charAt(k + 1) == ' ') { wordStart = k; } } else { if (s.charAt(k + 1) != ' ') { wordEnd = k + 1; for (int m = wordEnd; m <= wordStart; m++) { builder.append(s.charAt(m)); } builder.append(' '); } } } for (int n = leftEdge; n <= wordStart; n++) { builder.append(s.charAt(n)); } return builder.toString(); }