Помогите переписать код на Java из Basic

        ### Ввод роторов и доп инфы
dim alphabet (26)
alphabet ={'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'}

dim rotor1 (26)
dim rotor1_2 (26)
rotor1={'w', 'x', 'y', 'z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v'}
rotor1_2={'h', 's', 'n', 'i', 'c', 'k', 'p', 'v', 'x', 'e', 'a', 'u', 'z', 'l', 'g', 'b', 'q', 'w', 'd', 'r', 'f', 'j', 'y', 't', 'o', 'm'}

dim rotor2 (26)
dim rotor2_2 (26)
rotor2={'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'a', 'b', 'c', 'd', 'e'}
rotor2_2={'i', 'n', 'k', 'u', 'g', 'a', 'r', 'd', 'w', 'l', 'c', 'p', 'z', 'm', 'b', 'o', 'x', 's', 'e', 'v', 'f', 'h', 'y', 't', 'q', 'j'}

dim rotor3 (26)
dim rotor3_2 (26)
rotor3={'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q'}
rotor3_2={'k', 'j', 'm', 'a', 'q', 'g', 's', 'i', 'd', 'w', 'z', 'h', 'c', 'v', 'y', 'b', 'o', 'x', 'u', 'f', 'e', 't', 'l', 'r', 'p', 'n'}

dim reflector (26)
reflector={'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'j', 'f', 'e', 'l', 'd', 'm', 'c', 'b', 'a', 'k', 'h', 'i', 'g'}
dim kstl (26)
dim kstl1 (26)
####
input "Введите последовательность роторов (3 лат буквы): ", pk
#### настройка роторов
### №1 and №1_2
n1=mid(pk,3,1)
u=0
for t=0 to 25
if n1 = rotor1[t] then
u=t
end if
u1=0
next t


for t=0 to 25
if u+t <= 25 then 
kstl[t]=rotor1[u+t]
kstl1[t]=rotor1_2[u+t]
else
kstl[t]=rotor1[(u+t)-26]
kstl1[t]=rotor1_2[(u+t)-26]
end if
next t

for t=0 to 25
rotor1[t]=kstl[t]
rotor1_2[t]=kstl1[t]
next t

### №2 and №2_2
n1=mid(pk,2,1)
u=0
for t=0 to 25
if n1 = rotor2[t] then
u=t
end if
u1=0
next t


for t=0 to 25
if u+t <= 25 then 
kstl[t]=rotor2[u+t]
kstl1[t]=rotor2_2[u+t]
else
kstl[t]=rotor2[(u+t)-26]
kstl1[t]=rotor2_2[(u+t)-26]
end if
next t

for t=0 to 25
rotor2[t]=kstl[t]
rotor2_2[t]=kstl1[t]
next t


### №3 and №3_2
n1=mid(pk,1,1)
u=0
for t=0 to 25
if n1 = rotor3[t] then
u=t
end if
u1=0
next t


for t=0 to 25
if u+t <= 25 then 
kstl[t]=rotor3[u+t]
kstl1[t]=rotor3_2[u+t]
else
kstl[t]=rotor3[(u+t)-26]
kstl1[t]=rotor3_2[(u+t)-26]
end if
next t

for t=0 to 25
rotor3[t]=kstl[t]
rotor3_2[t]=kstl1[t]
next t

#####
input "Введите текст для шифрования(место пробелов как и в оригаинальной энигме используйте ''XX''): ", txt
tut=length(txt)
####
for t1=0 to length(txt)-1

###Реализация поворота роторов по "нажатию"
##1
for t=0 to 24
kstl[t]=rotor1[t+1]
kstl1[t]=rotor1_2[t+1]
next t

kstl[25]=rotor1[0]
kstl1[25]=rotor1_2[0]

for t=0 to 25
rotor1[t]=kstl[t]
rotor1_2[t]=kstl1[t]
next t
##2
if rotor1[0] = "w"then
for t=0 to 24
kstl[t]=rotor2[t+1]
kstl1[t]=rotor2_2[t+1]
next t

kstl[25]=rotor2[0]
kstl1[25]=rotor2_2[0]

for t=0 to 25
rotor2[t]=kstl[t]
rotor2_2[t]=kstl1[t]
next t
##3
if rotor2[0] = "f"then
for t=0 to 24
kstl[t]=rotor3[t+1]
kstl1[t]=rotor3_2[t+1]
next t

kstl[25]=rotor3[0]
kstl1[25]=rotor3_2[0]

for t=0 to 25
rotor3[t]=kstl[t]
rotor3_2[t]=kstl1[t]
next t
end if
end if

###
###Шифрование
dim otv (length(txt))

k1=mid(txt,t1+1,1)
#алфавит-> r1

for t=0 to 25
if k1=alphabet[t] then
u1=t
end if
next t

#r1->r1_2 and r2

for t=0 to 25
if rotor1[u1]=rotor1_2[t] then
u2=t
end if
next t

#r2->r2_2 and 3

for t=0 to 25
if rotor2[u2]=rotor2_2[t] then
u3=t
end if
next t


#r3->r3_2 and reflector

for t=0 to 25
if rotor3[u3]=rotor3_2[t] then
u4=t
end if
next t

#reflector -> reflector and r3_2

for t=u4+1 to u4+25
if t<=25 then
a=t
else
a=t-26
end if
if reflector[u4]=reflector[a] then
u5=a
end if
next t


#r3_2->r3 and r2_2

for t=0 to 25
if rotor3_2[u5]=rotor3[t] then
u6=t
end if
next t

#r2_2->r2 and r1_2

for t=0 to 25
if rotor2_2[u6]=rotor2[t] then
u7=t
end if
next t


#r1_2->r1 and алфавит

for t=0 to 25
if rotor1_2[u7]=rotor1[t] then
u8=t
end if
next t
#алфавит-> ответ

otv[t1]=alphabet[u8]


f$=string(otv[t1])
print f$ + "";

next t1

Ответы (0 шт):