Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 30.03.2016
Сообщений: 13
1

Переделать код паскаля под джаву

13.05.2017, 21:20. Показов 1289. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста переделать код паскаля для использования в джаве.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Const
a:array[0..15] of string[4]=('0000','0001','0010','0011','0100','0101','0110','0111','1000','1001','1010','1011','1100','1101','1110','1111');
m:array[0..15] of string[1]=('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
var
g:byte;
s,t,kod,rez:string;
h:array[1..1000000] of char;
st,d,n:integer;
i,j:longint;
p:real;
begin
writeln('¬ведите код');
readln(s);
n:=0;
for i:=1 to length(s) do
begin
n:=n+1;
t:=copy(s,n,1);
for j:=0 to 15 do
if t=m[j] then
kod:=kod+a[j];
end;
n:=1;
st:=7;
j:=1;
p:=0;
for i:=1 to length(kod) do
begin
t:=copy(kod,n,1);
g:=StrToInt(t);
p:=p+g*exp(ln(2)*st);
n:=n+1;
if st>0 then st:=st-1 else
begin
st:=7;
d:=Round(p);
h[j]:=chr(d);
p:=0;
j:=j+1;
end;
end;
for i:=1 to length(s) div 2 do write(h[i]);
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.05.2017, 21:20
Ответы с готовыми решениями:

Переделать код паскаля под джаву
Помогите пожалуйста переделать код паскаля для использования в джаве. Const s4:array of...

Нужно перевести код из Паскаля на Джаву
uses crt; const Num = 3; var X:array of byte; W,Delta:array of real; ...

Delphi на Java (перевести этот код на Джаву)
Здравствуйте уважаемые форумчанины! Нужна помощь, перевести Делфи на язык Java. Условие самой...

Переделать код под Gson
Доброго утра. Совсем недавно изучаю java и уже дали сложное задание в университете. Суть такая:...

2
33 / 33 / 20
Регистрация: 18.03.2016
Сообщений: 100
13.05.2017, 22:49 2
Лучший ответ Сообщение было отмечено Иван123456 как решение

Решение

Как-то так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
        String[] a = new String[]{"0000","0001","0010","0011","0100","0101","0110","0111","1000","1001","1010","1011","1100","1101","1110","1111"};
        String[] m = new String[]{"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"};
        byte g;
        String s,t,kod,rez;
        char[] h = new char[1000000];
        short st,d,n;
        int i,j;
        float p;
 
        Scanner scanner = new Scanner(System.in);
        System.out.println("¬ведите код");
        s = scanner.nextLine();
        n=0;
        for (i=1 ; i < s.length() ; i++) {
            n++;
            t = s.substring(n, n+1);
            for (j = 0; j < 15; j++)
                if (t.equals(m[j])) {
                    kod += a[j];
                }
        }
        n=1;
        st=7;
        j=1;
        p=0;
        for (i = 0; i < kod.length(); i++) {
            t = kod.substring(n, n+1);
            g = Byte.decode(t);
            p = (float) (p + g * Math.pow(Math.E,Math.exp(2) * st));
            n++;
            if (st > 0) st--;
            else {
                st = 7;
                d = (short) Math.round(p);
                h[j] = (char) d;
                p=0;
                j++;
            }
        }
        for (i=0; i < s.length() / 2; i++) System.out.println(h[i]);
Но это "быстрый перевод". Короче, я не разбирался, что делает код, поэтому мог ошибиться.

Но всё-равно код работать не будет, так как java использует Unicode, а Pascal ASCII. Так что придётся всю таблицу ASCII в виде массива char[] держать, как константу.

Могу доработать, если очень надо и сами доделать не пока можете...
1
0 / 0 / 0
Регистрация: 30.03.2016
Сообщений: 13
14.05.2017, 00:01  [ТС] 3
Наоборот мне сейчас как раз и надо чтобы она работало с юникодом, ибо тогда захватывает большее количество знаков. Огромное вам спасибо за помощь)
0
14.05.2017, 00:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.05.2017, 00:01
Помогаю со студенческими работами здесь

Нужно код из Паскаля, переделать под Делфи
Помогите, нужно код Паскаля сделать под Делфи 7. Это метод Гаусса, если что. program abc; var...

Переделать под с Паскаля в Делфи
{$DEFINE DEBUG} program p0524; {$APPTYPE CONSOLE} uses SysUtils; const W = 4; ...

Переделать программу из турбо паскаля под АВС
Uses crt, graph; var d,m,i:integer; x,y,a,rx,ry,color:integer; begin ...

Переделать код из Паскаля в С++
Type mas = Array of Real; {--------------} Procedure Sort(var a: mas; n: Byte); var i,j:...

Переделать код с паскаля в с++
Код на скриншоте

Переделать код из Паскаля в С++
program Param40; type St=String; var S:St; i,K:integer; Function...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru