|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.11.2006, 19:01 | #11 |
Delphi/C++/C#
Участник клуба
Регистрация: 29.10.2006
Сообщений: 1,972
|
Если с двумерным массивом не удобно работать, то вот пример с одномерным:
Код:
|
14.11.2006, 20:31 | #12 |
Пользователь
Регистрация: 13.11.2006
Сообщений: 12
|
спасибо! щас буду пробовать.
|
15.11.2006, 16:21 | #13 |
Владимир М.
Участник клуба
Регистрация: 30.10.2006
Сообщений: 1,289
|
и вобще в данном случае числа = слова,
подойдет любой алгоритм частотного анализа текста.
Берегите друг друга!
|
15.11.2006, 18:46 | #14 |
Пользователь
Регистрация: 13.11.2006
Сообщений: 12
|
У меня с двумерным массивом все получилось.
Но мне нужно немножко не так. Вот например если у меня в строки будут выглядеть так: привет 2006 18 25 33 47.... привет 2007 15 19 36 42.... Можно ли a[1] присвоить 18, a[2] - 25 и т.д. , а b[1] - 2006, b[2] - 2007? Я думаю это возможно - к примеру b[2] присвоить значение начинающееся с восьмого символа слева и до пробела. А вот как уже это в делфи осуществить? |
15.11.2006, 20:47 | #15 |
Владимир М.
Участник клуба
Регистрация: 30.10.2006
Сообщений: 1,289
|
' a[1] присвоить 18 '
где 1 = количество_пробелов. простая индексация, 2-мерный массив
Берегите друг друга!
|
15.11.2006, 21:58 | #16 |
Пользователь
Регистрация: 13.11.2006
Сообщений: 12
|
|
15.11.2006, 22:14 | #17 |
Регистрация: 15.11.2006
Сообщений: 8
|
Я так понял тебе необходимо
Первое число из строки посадить на массив «b» а на массив «а» проследить кие числа чаще всего встречаются? Попробуй так! type Sim = array [0..10000] of integer; Var b,a : Sim; S,k : string: i,j,z : integer begin for i:=0 to 10000 do begin a[i]:=0; b[i]:=0; // обнулим данные массива (не обязательно но желательно) end; // я советую загружать файл в ListBox (Это необходимо сделать предварительно) For i:=0 to (form1.ListBox1.Items.Count-1) do begin S:=form1.ListBox1.Items[i]; j:=0; k:=’’; Repeat // если строка начинается не сразу с чисел а есть текст то определяем положение первого знака 1 или 2 или 3 и тд. j:=j+1; Until ((S[j]='0')or(S[j]='1')or(S[j]='2')or(S[j]='3')or(S[j]='4')or(S[j]='5')or(S[j]='6')or(S[j]='7')or(S[j]='8')or(S[j]='9')); Repeat // выбираем первое число до знака ‘ ‘ <= пробел k:=k+S[j]; j:=j+1; Until (S[j]=' ‘); // если не уверен что пробел то можно определять как ((S[j]<>’0’)or(S[j]<>’1’) и тд.) b[i]:=StrToInt(k); Repeat K:=’’; j:=j+1; Repeat k:=k+S[j]; j:=j+1; Until ((S[j]=' ‘)or(j= Length(S))); Z:=StrToInt(k); // Я предлагаю другой ход a[Число]:= сколько раз повторяется (одновременно идет сортировка) а[z]:= а[z]+1; Until (j= Length(S)); // если переменная j равна длине строки S End; End;
Знание это сила. Человек владеющий данной силой не победим!
|
16.11.2006, 00:50 | #18 | |
Пользователь
Регистрация: 13.11.2006
Сообщений: 12
|
Цитата:
Спасибо конечно Но так расписывать было не к чему . Мне нужно было буквально несколько строк из этого кода. Остальное я сам бы сделал. Щас к сожалению времени нет. После завтра на свежую голову все разберу.. А в Listbox я так понял из txt файла можно загрузить? Или вручную скопировать и вставить? |
|
16.11.2006, 16:28 | #19 |
Регистрация: 15.11.2006
Сообщений: 8
|
form1.ListBox1.Items.LoadFromFile(' C\XXX\xxx.txt');
Знание это сила. Человек владеющий данной силой не победим!
|
19.11.2006, 15:01 | #20 |
Пользователь
Регистрация: 13.11.2006
Сообщений: 12
|
Сегодня попробовал - ни чего не получилось.
Строки загрузил в ListBox1. А дальше одни ошибки. И я так и не понял как присвоить число. Если можно то объясните на простом примере привет 2006 18 25 33 47.... Строка меняется, но длина чисел и слова остается, т.е. первое слово у меня будет всегда из шести букв, и вычислять пробелы не обязательно. Мне нужно всего лишь присвоить: S:=......{например восмой символ слева, длина всегда будет 4 символа, массив не обязательно}. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
нужна ваша помощь! | forsy | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 19.05.2008 14:38 |
прога на С/С++(нужна ваша помощь) | AlterEgo | Помощь студентам | 1 | 09.09.2007 18:41 |