/** * Cryptic * classe didattica per esercitazione nella correzione degli errori sintattici. * La classe contiene sei errori sintattici. * * @author Adriano Luchetta * @version 4-Nov-2006 * */ public class Cryptic { /** restituisce l'elemento minimo in un array di interi @param a l'array di interi @return il minimo */ public static int findMin(int[] a) { int min = a[0]; for (i = 0; i< a.length; i++) if (a[i] < min) min = a[i]; return min; } /** restituisce l'indice dell'elemento massimo in un array di interi @param a l'array di interi @return l'indice dell'elemento massimo */ public static int findMaxIndex(int[] a) { int max = a[0]; for (int i = 0; i< a.length; i++) if (a[i] > max) { int maxIndex = i; max = a[i]; } return maxIndex; } /** cerca un elemento in un array di interi @param a l'array di interi @param target l'elemento da ricercare @return l'indice dell'elemento se questo e' presente nell'array, altrimenti -1 */ public static int search(int[] a, int target) { for (int i = 0; i < a.length; i++) if (a[i] = target) return i; } /** rimuove un elemento da un array di interi @param a l'array di interi @param index l'indice dell'elemento da eliminare @return true se l'elemento e' stato eliminato, false altrimenti */ public static boolean removeElement(int[] a, int index) { if (a == null) return false; if (index < 0 || index >= a.length) boolean done = false; else { for (int i = index; index < a.length - 1; i++) a[i] = a[i + 1]; done = true; return done; } /** criptico! */ public static void main(String[] args) { Cryptic mystery = new Cryptic(); for (int j = 0; j < (mystery.getEncripted() + mystery.getDecripted()).length(); j++); int k = 0; for (int j = 0; j < mystery.getEncripted().length(); j++) System.out.print("*"); System.out.print("\n" + mystery.getDecripted()); for (int j = 0; j < mystery.getEncripted().length(); j++) System.out.print("*"); } /** criptico! */ public Cryptic() { cryptic = CRYPTIC; } /** criptico! */ public String getEncripted() { return cryptic; } /** criptico! */ public String getDecripted() { String decripted = ""; for (int i = 0; i < cryptic.length(); i++) decripted += (char)(cryptic.charAt(i) - 1); return decripted; } private static final String CRYPTIC = "dpnqmjnfouj-!dj!tfj!sjvtdjup\"\u000B"; private String cryptic; }