Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2014, 11:36   #1
Elvina
Пользователь
 
Регистрация: 12.06.2012
Сообщений: 11
Плохо Кодирование текстовой информации в числовую

Здравствуйте.
Необходимо закодировать текстовую информацию в определенную последовательность цифр.

Программа заключается в том, чтобы программа при запуске запрашивала - "Введите сообщение". После чего пользователь вводить какие-либо английские слова и затем они кодируются в определенную последовательность чисел.
Я начала написание своей программы таким образом:
Код:
const 
n=15;
vtext: array[1..27] 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','.');
vcode: array[1..27] of char=('111','112','113','121','122','123','131','132','133','211','212','213','221','222','223','231'
                                 ,'232','233','311','312','313'
                                ,'321','322','323','331','332','333');
 
var
mytext: array[1..n] of char;
mycode: array[1..n] of char;
i,j: integer;
begin
...
Но он начал выдавать ошибку следующего рода:
Program1.pas(4,30): Нельзя преобразовать тип string к char

Как я поняла, он не может брать сразу трехзначное число '111', '112' и т.д.
Тогда каким образом можно обыграть это?
Спасибо за советы!

Последний раз редактировалось Stilet; 15.12.2015 в 14:23.
Elvina вне форума Ответить с цитированием
Старый 10.11.2014, 09:27   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

правильно ругается.
у Вас же код состоит из 3-х символов. Как же вы в ОДИН char пытаетесь записать 3 символа?!

можно так попробовать:
Код:
type
  str3 = string[3];
const 
vtext: array[1..27] 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','.');
vcode: array[1..27] of str3=('111','112','113','121','122','123','131','132','133',
      '211','212','213','221','222','223','231','232','233','311','312','313','321',
      '322','323','331','332','333');
 
var
  mytext: string;
  mycode: array[1..255] of str3;
  i,j,k, n: integer;
begin
  repeat
    WriteLn('Input text ( english letter only ) ');
    Readln(mytext);
    k := 0;
    for i := 1 to Length(mytext) do
      if Pos(mytext[i], vtext) = 0 then Inc(k);
    if k<>0 then WriteLn('Error! You input not english letters!');
  until k=0;

  n := Length(mytext);
  for i := 1 to Length(mytext) do
      mycode[ i ] := vcode[ Pos(mytext[i], vtext) ];

  WriteLn('Encoded message:');
  for i := 1 to n do
      Write(mycode[ i ]);
  WriteLn;
  Readln
end.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.12.2015, 12:32   #3
Azalia999
 
Регистрация: 15.12.2015
Сообщений: 5
По умолчанию

Здавствуйте! Не могли бы вы полностью написать код программы?
Azalia999 вне форума Ответить с цитированием
Старый 15.12.2015, 12:39   #4
VIK_aka_TOR
Участник клуба
 
Аватар для VIK_aka_TOR
 
Регистрация: 30.01.2011
Сообщений: 1,578
По умолчанию

Цитата:
Сообщение от Azalia999 Посмотреть сообщение
Здавствуйте! Не могли бы вы полностью написать код программы?
а вам собственно в посте выше чего не хватает? строчки:

Код:
program blablabla;
?

p.s. еще и в старую чужую тему влезли
пишу код не только за печеньки
VIK_aka_TOR вне форума Ответить с цитированием
Старый 15.12.2015, 13:52   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Azalia999 Посмотреть сообщение
Здавствуйте! Не могли бы вы полностью написать код программы?
Вы будете смеяться, но это ПОЛНЫЙ код программы.
Если Вы хотите скомпилировать её в Delphi, то создайте консольное приложение и в него вставьте данный код.

ну или просто допишите в начале программы:

Код:
program Coder1;

{$APPTYPE CONSOLE}

uses
  SysUtils;

.....
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка текстовой информации.(СИ) Iron_f1st Помощь студентам 1 01.12.2013 20:13
Обработка текстовой информации С++ Перфаратар Общие вопросы C/C++ 2 30.11.2010 21:12
Обработка текстовой информации С++ Перфаратар Помощь студентам 0 29.11.2010 23:02
Транслит графической информации в числовую или строковую? KALISNIK Помощь студентам 0 20.03.2010 21:31
Хранение текстовой информации diliana Софт 11 23.12.2009 13:24