Lab
7 Solutions, ESC101, 2004-2005 Semester-II
1.
class sort_strings
{
static void sort(String[] arr)
{
String temp;
for(int i=0; i<arr.length-1;
i++)
for(int j=i+1;
j<arr.length; j++){
if(arr[i].compareTo(arr[j]) > 0){
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
public static void main(String args[])
{
String[] arr = {"kamal", "akhil",
"ravi", "bharat"};
System.out.println("The array
before sorting is:");
for(int i=0; i<arr.length; i++)
System.out.println(arr[i]);
System.out.println();
sort(arr);
System.out.println("The array
after sorting is:");
for(int i=0; i<arr.length; i++)
System.out.println(arr[i]);
System.out.println();
}
}
2.
class duplicate_remove
{
static int[] dup_rem(int[] arr)
{
boolean found = false;
int[] narr = new int[10];
int len=0;
narr[0] = arr[0];
len = 1;
for(int i=1; i<arr.length;
i++){
for(int j=0;
j<narr.length; j++){
if(arr[i] == narr[j]){
found = true;
break;
}
}
if(!found)
narr[len++] = arr[i];
found = false;
}
return narr;
}
public static void main(String args[])
{
int[] arr = {4, 7, 11, 4, 9, 5,
11, 7, 3, 5};
int[] new_arr = new int[20];
System.out.println("Array before
removing Duplicates:");
for(int i=0; i<arr.length; i++)
System.out.println(arr[i]);
System.out.println();
new_arr = dup_rem(arr);
System.out.println("Array after
removing Duplicates:");
for(int i=1; i<new_arr.length;
i++){
if(new_arr[i]
== new_arr[i-1])
break;
System.out.println(new_arr[i-1]);
}
System.out.println();
}
}
3.
class magic_square
{
static int n=3;
static int down(int i)
{
return (i+1)%n;
}
static int right(int i)
{
return (i+1)%n;
}
static int pos(int i, int j)
{
return (i*n + j);
}
public static void main(String args[])
{
int pre_x, pre_y, cur_x, cur_y, i;
int[] arr = new int[n*n];
arr[pos(n-1, n/2)] = 1;
pre_x = n-1;
pre_y = n/2;
for(i=2; i<= n*n; i++){
cur_x =
down(pre_x);
cur_y =
right(pre_y);
if(
(arr[pos(cur_x, cur_y)] != 0) || ( (pre_x == n-1) && (pre_y ==
n-1) )){
cur_y = pre_y;
cur_x = pre_x - 1;
}
arr[pos(cur_x,
cur_y)] = i;
pre_x = cur_x;
pre_y = cur_y;
}
for(i=0; i<arr.length; i++){
System.out.print(arr[i]+" ");
if( ((i+1)%n)
== 0 )
System.out.println();
}
}
}