|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.05.2008, 00:11 | #1 |
Регистрация: 06.05.2008
Сообщений: 6
|
Заменить в каждой строке воскл. знаки на точки. - язык Pascal
Помогите с задачей, плиз! Затра нужно сдать, а то не видать мне зачета как своих ушей =)
Задано М строк символов, которые вводятся с клавиатуры. Каждая строка представляет собой последовательность символов, включающих в себя восклицательные знаки. Заменить в каждой строке воскл. знаки на точки. В принципе, я понимаю что надо делать через copy и concat, но собрать все это в единую программу не могу... |
06.05.2008, 00:20 | #2 | |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 487
|
Цитата:
|
|
06.05.2008, 00:22 | #3 |
Регистрация: 06.05.2008
Сообщений: 6
|
в Паскале... или я неправильно поняла ваш вопрос?
|
06.05.2008, 08:27 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Так подойдет?
Код:
I'm learning to live...
|
06.05.2008, 08:57 | #5 |
Участник клуба
Регистрация: 28.03.2007
Сообщений: 1,814
|
uses crt;
var s1,s2:string; begin clrscr; writeln('Vvedite ishodnuy stroky'); readln(s1); while pos('!',s1)>0 do s1[pos('!',s1)]:='.'; writeln(s1); readln; end. |
07.05.2008, 00:22 | #6 |
Регистрация: 06.05.2008
Сообщений: 6
|
Задано М строк символов, которые вводятся с клавиатуры
а как сделать, чтобы рассматривать сразу все введеные строки, а не каждый раз новую строку вводить? |
07.05.2008, 01:00 | #7 |
Участник клуба
Регистрация: 26.10.2007
Сообщений: 1,244
|
Берёте какойнибудь цикл. Обьявляете массив типа String.
И чтото типа этого: Код:
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым, Попытка глубже понимать уже попахивает литром... |
07.05.2008, 01:26 | #8 |
Регистрация: 06.05.2008
Сообщений: 6
|
program stroka;
var s:string; i,M:integer; a:array [1..10] of string; begin write ('M'); readln (M); for i:= 1 to M do begin write ('s'); readln (s); for i:= 1 to lenght(s) do if s[i]='!' then s[i]:='.'; writeln (s); end; end; end. Что-то жутко напутала, т.к. выводит что-то непонятное =) |
07.05.2008, 08:07 | #9 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Да этот код вообще ничего не должен выводить - он с синтаксическими ошибками.
В цикле вводиш все строки: Код:
Код:
I'm learning to live...
|
08.05.2008, 00:36 | #10 |
Регистрация: 06.05.2008
Сообщений: 6
|
Так, ну вот как-то так она у меня получилась, но все равно не выводит итоговые строки с точками
program stroka; var s,d:string; i,j,k,M:integer; a,a1:array [1..10] of string; begin write ('M'); readln (M); for i:= 1 to M do begin write ('a[i]'); readln (a[i]); end; for i:=1 to M do begin s:=''; for k:= 1 to length(a[i]) do begin d:=copy (a[i],k,1); if d<>'!' then s:=concat (s,d) else begin d:='.'; s:=concat (s,d) end; end; a[i]:=s; end; for i:= 1 to M do begin writeln ('a1[j]=',a[i]); end; end. где-то напутала с i и j... |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
HTML,как заменить текст в адресной строке? | Ладушка | HTML и CSS | 13 | 28.08.2008 19:37 |
в текстовом файле в каждой строке наити самое длинное слово | Storm | Помощь студентам | 4 | 04.06.2008 15:56 |
В каждой строке массива выбирается максимальный элемент | sergeyfsd | Общие вопросы Delphi | 2 | 13.05.2008 00:10 |
Отбражение чисел - точки, это точки, а не запятые, обозначающие дробную часть | Дикий | Помощь студентам | 7 | 12.05.2008 17:57 |
найти минимальный элемент в каждой строке матрицы и записать все минимальные элементы в отдельный массив | W_P | Помощь студентам | 6 | 28.12.2007 00:24 |