2 / 2 / 1
Регистрация: 02.03.2010
Сообщений: 95
1

Удалить из файла все лишние пробелы, оставив между словами не более одного пробела

01.05.2010, 14:14. Показов 1750. Ответов 4
Метки нет (Все метки)

Дан текстовый файл. Удалить из него все лишние пробелы, оставив между словами не более одного пробела. Результат поместить в новый файл. Я вот написала но у меня когда я делаю 5 пробелов он удаляет не все пробелы пробел(((

вот программа
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
uses crt;
var stroka,zag: string;
 
    f1,f2: File of string;
    i,k,pr: integer;
    temp:string;
 
   procedure delete(var stroka:string);
   var i:integer;
   begin
    for i:=1 to length(stroka) do
    if (stroka[i]=' ') and (stroka[i+1]=' ') then delete(stroka,i+1,1);
    end;
begin
writeln('введите текст: ');
readln(stroka);
delete(stroka);
writeln(stroka);
 
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.05.2010, 14:14
Ответы с готовыми решениями:

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

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

Удалить из файла все лишние пробелы, оставив между словами не более одного пробела
помогите исправить ошибку при сохранении файла: условие задачи: Дан текстовый файл. Удалить из...

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

4
4341 / 1473 / 680
Регистрация: 12.03.2009
Сообщений: 5,310
01.05.2010, 14:21 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
procedure Erase(var st:string);
begin
 while st[1]=' ' do delete(st,1,1);
 while st[length(st)]=' ' do delete(st,length(st),1);
 while pos('  ',st)>0 do delete(st,pos('  ',st),1);
end;
Добавлено через 36 секунд
А вы до кучи обозвали свою процедуру Delete, когда она уже является системной.
1
2 / 2 / 1
Регистрация: 02.03.2010
Сообщений: 95
01.05.2010, 14:25  [ТС] 3
а почему он пишет неверное количество фактических параметров?

Pascal
1
2
3
4
5
6
7
begin
writeln('введите текст: ');
readln(st);
delete(st); // вот тут
writeln(st);
 
end.
0
4341 / 1473 / 680
Регистрация: 12.03.2009
Сообщений: 5,310
01.05.2010, 14:26 4
Юляшко, я еще раз говорю - delete - системная процедура, обозвать так свою вам нельзя. Используйте другое название.
0
2 / 2 / 1
Регистрация: 02.03.2010
Сообщений: 95
01.05.2010, 14:28  [ТС] 5
а все поняла! разобралась! спасибо большое
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.05.2010, 14:28
Помогаю со студенческими работами здесь

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

Удалить из текстового файла все лишние пробелы, оставив между словами не более 1 пробела
. Создать текстовый файл, содержащий произвольный текст. Удалить из него все лишние пробелы,...

Удалить все лишние пробелы, оставив по одному между словами
Задание "Написать программу, в которой вводится строка из слов с некоторым количеством пробелов...

Программа удаляющая из файла все комментарии и лишние пробелы между словами, оставив только один пробел
Разработать программу, Удаляющий из файла все комментарии и лишние пробелы между словами, оставив...

Удалить лишние пробелы, оставив только по одному между словами.
Дан текст, состоящий из N строк. Слова разделены несколькими пробелами. Требуется удалить лишние...

Файл: Удалить из файла все лишние пробелы, оставив между словами не более одного пробела.
Дан текстовый файл. Удалить из него все лишние пробелы, оставив между словами не более одного...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru