Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/14: Рейтинг темы: голосов - 14, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 26.04.2011
Сообщений: 6

перекодировка

26.04.2011, 22:47. Показов 2939. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
задача:
перекодировка текстового файла в код морзе и обратно.
срочно надо,помогите кто чем сможет
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.04.2011, 22:47
Ответы с готовыми решениями:

Перекодировка текста
Приветствую. ;) На входе есть строка, содержащая символы такого вида: \u0418\u0433\u043d\u043e\u0440 На выходе нужно...

Перекодировка строки
Мне нужно переводить строку в число и обратно (полученную строку чисел опять в строку текста). Перевод в число есть. А вот с возвратом к...

Перекодировка текста из OEM 866 в UTF-8 или Ansi с загрузкой в Memo
Всем привет! Помогите пожалуйста. У меня в исходниках есть текстовые файлы в кодировке OEM 866, пытаюсь налету перекодировать содержимое...

17
4040 / 2652 / 582
Регистрация: 11.09.2009
Сообщений: 9,463
26.04.2011, 22:59
нечит, а чего именно непонятного-то?
Берётся таблица перекодировки "Азбука Морзе" и каждая буква текста заменяется на точки-тире и записывается как новый текст.
0
0 / 0 / 0
Регистрация: 26.04.2011
Сообщений: 6
26.04.2011, 23:40  [ТС]
case-ом делать?
0
ComfyMobile
 Аватар для DedBoroda
89 / 89 / 8
Регистрация: 04.11.2010
Сообщений: 376
26.04.2011, 23:43
да, по-символьно кодируйте, каждый символ кейсом заменяйте на соответствующие точки-тире
0
0 / 0 / 0
Регистрация: 26.04.2011
Сообщений: 6
27.04.2011, 00:34  [ТС]
можете на примере перекодировать слово "кот" case-ом?
0
 Аватар для Arcor
5709 / 2300 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
27.04.2011, 01:14
создай 2 массива , один с алфавитом, второй со знаками морзе соответствующе. Циклом бьем слово на буквы. Буквы сравниваем с массивами и выводим соответствующее нам значение
1
4040 / 2652 / 582
Регистрация: 11.09.2009
Сообщений: 9,463
27.04.2011, 01:14
Цитата Сообщение от нечит Посмотреть сообщение
case-ом делать?
Можно и Case-ом, машина стерпит.
Можно сделать масив строк, загнать в него "Азбуку" Морзе, и обращаться к нему по индексу. Индекс - код символа.
Delphi
1
2
3
var
MorseTable: array[0..255] of string = ('','','' ... // символы, которые не имеют кода в Азбуке морзе - пустая строка
'.-','-...'  ... );  // А, Б, ...
перекодировать так:
Delphi
1
OutStr:= OutStr + MorseTable[ord(Symbol)]; // OutStr - выходная строка, Symbol - очередной символ текста.
А вот из кода Морзе в текст - посложнее. Надо выделять символы (по пробелам) и, наверное, делать if-ом в цикле сравнения по массиву, так как нужно сравнение строк.
А массив можно использовать тот же.
1
 Аватар для Arcor
5709 / 2300 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
27.04.2011, 02:16
вот мой вариант как лично я понял такое задание а почему именно case нужно было использовать?

Delphi
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Label1: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;
const
  Alph: Array[1..36] of Char = ('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', '1', '2', '3', '4', '5', '6',
                                '7', '8', '9', '0');
 
  Morze: Array[1..36] of String = ('.-', '-...', '-.-.', '-..', '.', '..-.', '--.', '....',
                                   '..', '.---', '-.-', '.-..', '--', '-.', '---', '.--.',
                                   '--.-', '.-.', '...', '-','..-', '...-', '.--', '-..-',
                                   '-.--', '--..', '.----', '..---', '...--', '....-', '.....', '-....',
                                   '--...', '---..', '----.', '-----');
var
  Form1: TForm1;
  Stroka: String;
  O_Stroka: String;
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
var i,j: Integer;
begin
  Stroka := Edit1.Text;
  Stroka := UpperCase(Stroka);
  O_Stroka := '';
  Label1.Caption := '';
  for i := 1 to 36 do
    for j := 1 to 36 do
      begin
        if Stroka[i] = Alph[j] then
          begin
            O_Stroka := O_Stroka + Morze[j];
            Label1.Caption := O_Stroka
          end;
      end;
end;
 
end.
Добавлено через 4 минуты
да только с цифрами проблема вышла, когда их ставишь в большой регистр, выводит не то, я сперва не подумал и написал алфавит, потом не стал переписывать
1
ComfyMobile
 Аватар для DedBoroda
89 / 89 / 8
Регистрация: 04.11.2010
Сообщений: 376
27.04.2011, 08:41
еще между обозначениями Морзе нужно поставить пробел, или может есть специальный разделительный символ, так как
и обратно.
1
0 / 0 / 0
Регистрация: 26.04.2011
Сообщений: 6
27.04.2011, 21:36  [ТС]
это всё в файле делать нада
0
ComfyMobile
 Аватар для DedBoroda
89 / 89 / 8
Регистрация: 04.11.2010
Сообщений: 376
27.04.2011, 21:38
ну а так работает? всё у Вас получилось? Если да, то допилить работу с файлами - это минутное дело.
1
0 / 0 / 0
Регистрация: 26.04.2011
Сообщений: 6
28.04.2011, 22:24  [ТС]
кто знает где присвоить точке и тирэ бипы??

Добавлено через 37 минут
зачем?

Добавлено через 1 минуту
да переводит
но там ещё много чего нужно(
0
0 / 0 / 0
Регистрация: 26.04.2011
Сообщений: 6
05.05.2011, 19:05  [ТС]
ещё такой вопросик:
нужно чтобы оно пикало и закрашивалось в красный.
как присвоить бип точке и тирэ??
0
 Аватар для Arcor
5709 / 2300 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
05.05.2011, 19:23
надо 2 вложенных цикла, первым пройдемся по индексам массива, вторым - в каждом индексе пройдемся посимвольно, если найдется точка то 1 раз бип, если тире скажем 2 раза бип
1
ComfyMobile
 Аватар для DedBoroda
89 / 89 / 8
Регистрация: 04.11.2010
Сообщений: 376
05.05.2011, 19:31
Delphi
1
beep;
1
 Аватар для Arcor
5709 / 2300 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
05.05.2011, 19:36
эффект лучше будет наверно, можно написать каким-нибудь плеером красивый бип в формате скажем mp3 wma ... а то стандартный не очень красиво слышится
1
ComfyMobile
 Аватар для DedBoroda
89 / 89 / 8
Регистрация: 04.11.2010
Сообщений: 376
05.05.2011, 19:37
или использовать сигнальный динамик биоса
1
 Аватар для Arcor
5709 / 2300 / 466
Регистрация: 20.11.2009
Сообщений: 7,721
Записей в блоге: 1
05.05.2011, 19:41
ну, Beep через него и происходит ...

Добавлено через 1 минуту
а не я ошибся
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.05.2011, 19:41
Помогаю со студенческими работами здесь

Перекодировка БД
Доброго времени суток, интересует такой вопрос открываю базу данных в SQLite Expert Pro, вместо читаемого текста черные ромбики с знаком...

Перекодировка
Помогите,пожалуйста.Как в командной строке перекодировать MessageBundle.txt в MesageBundle.properties. Что необходимо написать перед...

перекодировка
что записать в data segment исходя из данных в memory C0 F1 F1 F5 EC E1 EB E5 F0 20 2D 20 E1 E0 E7 EE E2 FB E9 20 FF E7 FB EA 20...

Перекодировка теста
здравствуйте! не подскажите как сделать перекодировку текста сообщения. например приходит сообщение на лотус ящик в формате win1251 от...

Перекодировка символов
Добрый день, есть строка в лог-файле вида как на скриншоте, нужно перловым скриптом декодировать ее в строку на кириллице, подскажите...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru