строки, работа со строками |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
строки, работа со строками |
zmei123 |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: 0 |
ребят помогите очень надо плиз
дано k-литерных строк (эти строки сохраняются в массиве строк a ). Каждая строка содержит латинские и русские буквы, цифры и все возможные делители требуется: 1 надо выделить из каждой строки (сформировать еще один массив строк b и массив С из целых чисел, в котором будут храниться номера исходных строк , из которых выделяются подстроки) и напечатать подстроки (оформить процедурой)-расположенные между /* и */ если че не понятно в условии пишите прямо в форуме надеюсь что кто нибудь поможет |
volvo |
Сообщение
#2
|
Гость |
Во-первых, давай определимся с компилятором, чем пользуешься?
Во-вторых, тебе теоретически или программу делать будем? (если программу - я перенесу тему в "Задачи") Ну, и третье - приведи пример входного массива строк и соответствующего ему вывода... |
zmei123 |
Сообщение
#3
|
Новичок Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: 0 |
Во-первых, давай определимся с компилятором, чем пользуешься? Во-вторых, тебе теоретически или программу делать будем? (если программу - я перенесу тему в "Задачи") Ну, и третье - приведи пример входного массива строк и соответствующего ему вывода... ну насчет компилятора то это турбо паскаль7.0 конечно конечно нужна программа теоретически я сам ее объяснить могу входной массив : авыаыва/*авыаываыв*/авыаыва аыва/*ывавы*/аывавы/*авыавыаыв*/авыаыв/* кцукцув*/аываыв вывод: авыаываыв ывавы авыавыаыв можеш ьпереносить тему а можеш и нет на твое усмотрение |
zmei123 |
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: 0 |
вот вроде че то сделал но не доконца можете объяснить в чем ошибка
Код program mas1; type mas= array [1..20] of string; mass= array [1..20] of integer; procedure one(var a,b:mas;var c:mass;var y,x:string; k:integer;var u:integer); var i,j,t,d,e:integer; begin t:=0; d:=0; u:=0; x:=''; y:=''; for i:=1 to k do begin x:=a[i]; begin begin T:=pos('*/',x); d:=pos('/*',x); if (t>d) then begin for e:=d+2 to t-1 do begin y:=y+a[i][e]; {c[i]:=c[i]+s[i][e];} delete(x,d,1); end; end; end; begin if y<>'' then begin inc(u); b[u]:=y; y:=''; c[u]:=i; delete(x,d,4); t:=0; d:=0; for e:=1 to d+1 do for p:=t-1 to length(x) do x:=x+x[e]+x[p] end; end; end; end; end; var a,b:mas; c:mass; n,k,i,u:integer; y,x:string; begin writeln('vvedite k'); readln(k); for i:=1 to k do begin readln(a[i]); end; one(a,b,c,y,x,k,u); for i:=1 to u do begin writeln(b[i],' ',c[i]); end; readln; end. Сообщение отредактировано: volvo - |
volvo |
Сообщение
#5
|
Гость |
Чего это такое? Попроще нельзя было сделать? Вот так, например: program mas1; |
zmei123 |
Сообщение
#6
|
Новичок Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: 0 |
да , но если допустим строка :
fsd/*fdsfsd*/fsdfsd/*vcxvx*/vcxv fsdfsd fsdf то выведет fdsfsd , а vcxvx где ????????????? вот еще одна правдо мало отличающаяся от той только в ней я не пойму после прохода цикла он берет на 2 цикле строку из первого цикла получается каша ничего не могу поделать объясните че сдесь не так Код program mas1; type mas= array [1..20] of string; mass= array [1..20] of integer; procedure one(var a,b:mas;var c:mass;var y,x:string; k:integer;var u:integer); var i,j,t,d,e,q,w,z:integer; begin t:=0; d:=0; u:=0; x:=''; y:=''; for i:=1 to k do begin x:=a[i]; for j:=1 to length(x) do begin begin T:=pos('*/',x); d:=pos('/*',x); if (t>d) then begin for e:=d+2 to t-1 do begin y:=y+a[i][e]; {c[i]:=c[i]+s[i][e];} delete(x,d,1); end; end; end; begin if y<>'' then begin inc(u); b[u]:=y; y:=''; c[u]:=i; delete(x,d,4); t:=0; d:=0; {z:=length(x); for q:=1 to d-1 do for w:=t to length(x) do begin x:=x+x[q]+x[w]; end; delete(x,1,z);} end; end; end; end; end; var a,b:mas; c:mass; n,k,i,u:integer; y,x:string; begin writeln('vvedite k'); readln(k); for i:=1 to k do begin readln(a[i]); end; one(a,b,c,y,x,k,u); for i:=1 to u do begin writeln(b[i],' ',c[i]); end; readln; end. Сообщение отредактировано: volvo - |
volvo |
Сообщение
#7
|
Гость |
Цитата(zmei123 @ 28.01.2006 21:24) да, но если допустим строка : fsd/*fdsfsd*/fsdfsd/*vcxvx*/vcxv fsdfsd fsdf то выведет fdsfsd , а vcxvx где ????????????? Измени процедуру вот так: procedure check(const a: mas; var b: mas; var c: mass;Должно работать... И пользуйся тегами !!! |
klem4 |
Сообщение
#8
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Вот мой вариант, офрмил не очень красиво правда .. При желанииможно убрать циклы из основной части ..
uses crt; -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
zmei123 |
Сообщение
#9
|
Новичок Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: 0 |
ой спасибо заработало но мне еще надо чтобы она выводила символ (с наименьшим кодом) из получившихся строк и чтобы в исходных строках она удаляла пробелы в начале строки
|
klem4 |
Сообщение
#10
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Ответы на эти вопросы найдешь тут : FAQ : Строки
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
zmei123 |
Сообщение
#11
|
Новичок Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: 0 |
вот прога она должна выводить все тоже самое что и до этого но и удалять пробелы в исходном массиве ,чего она не делает можете объяснить почему
uses crt; Тегами пользоваться будем ? Сообщение отредактировано: volvo - |
volvo |
Сообщение
#12
|
Гость |
Еще одно сообщение без тегов - и я тебя начну наказывать !!! Надоел !!!
Цитата она должна выводить все тоже самое что и до этого но и удалять пробелы в исходном массиве ,чего она не делает Что, ВСЕ пробелы удалять? Ты задание изначально какое привел? Теперь так и будешь по крупицам что-то новое выдумывать?"Коней на переправе не меняют"... |
zmei123 |
Сообщение
#13
|
Новичок Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: 0 |
извини я новичок в этом деле , значит все услвие приводить вначале хорошо так и сделаю
|
generic viagra with overnight de |
Сообщение
#14
|
Гость |
Conecta Propecia
|
Текстовая версия | 16.05.2024 16:27 |