You are on page 1of 6

Roll No 12302D0229

2.c Write a program in java to implement Simple Columnar Transposition Technique.


import java.io.*;
import java.math.*;
class simcolum
{
public static void main(String[] args) throws IO!c"ption
{
String plaint"!t#ciph"rt"!t$%%#t"mp$%%;
&u''"r"d("ad"r br$n"w &u''"r"d("ad"r(n"w InputStr"am("ad"r(S)st"m.in));
int i$*#j$*;
S)st"m.out.print(%nt"r plaint"!t + %);
plaint"!t$br.r"ad,in"();
int pl"n$plaint"!t.l"ngth();
'or(i$*;i-pl"n;..i)
{
i'(plaint"!t.char/t(i)0$1 1)
t"mp.$plaint"!t.char/t(i);
2
S)st"m.out.println(%t"mp $ %.t"mp);
int l"n$t"mp.l"ngth();
S)st"m.out.print(%nt"r no. o' columns ma!.%.l"n.%+ %);
int cols$Int"g"r.pars"Int(br.r"ad,in"());
i'(cols-$l"n)
{
int rows$3#4$*;
i'(l"n5cols$$*)
rows$l"n6cols;
"ls"
rows$(l"n6cols).3;
char matri![][]$n"w char[rows][cols];
'or(i$*;i-rows;..i)
{
ASHWIN G. DSOUZA

Roll No 12302D0229
'or(j$*;(j-cols)77(4-l"n);..j)
{
matri![i][j]$t"mp.char/t(4);
4..;
2
2
i88;
'or(;j-cols;..j)
matri![i][j]$191;
'or(i$*;i-rows;i..)
{
'or(j$*;j-cols;..j)
{
S)st"m.out.print(matri![i][j].% %);
2
S)st"m.out.println();
2
S)st"m.out.println();
int "n:ol[]$n"w int[cols];
'or(i$*;i-cols;..i)
{
S)st"m.out.print(%nt"r column no. %.(i.3).% + %);
"n:ol[i]$Int"g"r.pars"Int(br.r"ad,in"())83;
2
i'("n:ol.l"ngth$$cols)
{
'or(i$*;i-cols;..i)
{
'or(j$*;j-rows;..j)
{
ciph"rt"!t.$matri![j]["n:ol[i]];
2
2
ASHWIN G. DSOUZA

Roll No 12302D0229
2
t"mp$%%;
'or(i$*;i-ciph"rt"!t.l"ngth();..i)
i'(ciph"rt"!t.char/t(i)0$191)
t"mp.$ciph"rt"!t.char/t(i);
ciph"rt"!t$t"mp;
S)st"m.out.println(%:iph"rt"!t + %.ciph"rt"!t);
2
"ls"
S)st"m.out.println(%Incorr"ct no. o' columns000%);
2
2
ASHWIN G. DSOUZA

Roll No 12302D0229
2.d Write a program in java to implement Multi Columnar Transposition Technique.
import java.io.*;
import java.math.*;
class multicolum
{
public static void main(String[] args) throws IO!c"ption
{
String plaint"!t# ciph"rt"!t$%%# t"mp$%%# choic"$%%;
&u''"r"d("ad"r br$n"w &u''"r"d("ad"r(n"w InputStr"am("ad"r(S)st"m.in));
int i$*#j$*;
S)st"m.out.print(%nt"r plaint"!t + %);
plaint"!t$br.r"ad,in"();
int pl"n$plaint"!t.l"ngth();
'or(i$*;i-pl"n;..i)
{
i'(plaint"!t.char/t(i)0$1 1)
t"mp.$plaint"!t.char/t(i);
2
S)st"m.out.println(%t"mp $ %.t"mp);
int l"n$t"mp.l"ngth();
S)st"m.out.print(%nt"r no. o' columns(ma!.%.l"n.%)+ %);
int cols$Int"g"r.pars"Int(br.r"ad,in"());
i'(cols-$l"n)
{
int rows$3#4$*;
ASHWIN G. DSOUZA

Roll No 12302D0229
i'(l"n5cols$$*)
rows$l"n6cols;
"ls"
rows$(l"n6cols).3;
do
{
ciph"rt"!t$%%;
char matri![][]$n"w char[rows][cols];
'or(i$*;i-rows;..i)
{
'or(j$*;(j-cols)77(4-l"n);..j)
{
matri![i][j]$t"mp.char/t(4);
4..;
2
2
i88;
'or(;j-cols;..j)
matri![i][j]$191;
S)st"m.out.println(%;n:olumn <atri! + %);
'or(i$*;i-rows;i..)
{
'or(j$*;j-cols;..j)
{
S)st"m.out.print(matri![i][j].% %);
2
S)st"m.out.println();
2
S)st"m.out.println();
int "n:ol[]$n"w int[cols];
'or(i$*;i-cols;..i)
{
S)st"m.out.print(%nt"r column no. %.(i.3).% + %);
"n:ol[i]$Int"g"r.pars"Int(br.r"ad,in"())83;
ASHWIN G. DSOUZA

Roll No 12302D0229
2
i'("n:ol.l"ngth$$cols)
{
'or(i$*;i-cols;..i)
{
'or(j$*;j-rows;..j)
{
ciph"rt"!t.$matri![j]["n:ol[i]];
2
2
2
S)st"m.out.println(%:iph"rt"!t + %.ciph"rt"!t);
t"mp$%%;
'or(i$*;i-ciph"rt"!t.l"ngth();..i)
i'(ciph"rt"!t.char/t(i)0$191)
t"mp.$ciph"rt"!t.char/t(i);
ciph"rt"!t$t"mp;
S)st"m.out.println(%:iph"rt"!t + %.ciph"rt"!t);
4$*;
S)st"m.out.print(%=o )ou want to continu" ()"s6no) + %);
choic"$br.r"ad,in"();
2
whil"(choic".">ualsIgnor":as"(%)"s%)$$tru");
2
"ls"
S)st"m.out.println(%Incorr"ct no. o' columns000%);
2
2
ASHWIN G. DSOUZA

You might also like