Reports.java
package edu.udel.cis.vsl.tass.util;
import java.io.PrintWriter;
public class Reports {
public static void printInt(PrintWriter out, int fieldWidth, int value) {
int valueWidth = width(value);
int numSpaces = fieldWidth - valueWidth;
assert (numSpaces >= 0);
for (int i = 0; i < numSpaces; i++)
out.print(" ");
out.print(value);
}
public static int width(int a) {
if (a == 0) {
return 1;
} else {
int width = 0;
while (a > 0) {
a = a / 10;
width++;
}
return width;
}
}
public static int maxWidth(int[] a) {
int max = 0;
for (int i = 0; i < a.length; i++) {
int width = width(a[i]);
if (width > max)
max = width;
}
return max;
}
public static int maxWidthSum(int[] a, int[] b) {
int[] c = new int[a.length];
for (int i = 0; i < a.length; i++)
c[i] = a[i] + b[i];
return maxWidth(c);
}
public static void printInt(PrintWriter out, int fieldWidth, long value) {
int valueWidth = width(value);
int numSpaces = fieldWidth - valueWidth;
assert (numSpaces >= 0);
for (int i = 0; i < numSpaces; i++)
out.print(" ");
out.print(value);
}
public static int width(long a) {
if (a == 0) {
return 1;
} else {
int width = 0;
while (a > 0) {
a = a / 10;
width++;
}
return width;
}
}
public static int maxWidth(long[] a) {
int max = 0;
for (int i = 0; i < a.length; i++) {
int width = width(a[i]);
if (width > max)
max = width;
}
return max;
}
public static int maxWidthSum(long[] a, long[] b) {
long[] c = new long[a.length];
for (int i = 0; i < a.length; i++)
c[i] = a[i] + b[i];
return maxWidth(c);
}
}