Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/40: Рейтинг темы: голосов - 40, средняя оценка - 4.58
 Аватар для Gusl
0 / 0 / 1
Регистрация: 02.12.2009
Сообщений: 17

удвоить символ в заданном тексте

08.12.2009, 18:22. Показов 7905. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Составить программу, которая удваивает символ в заданном тексте
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.12.2009, 18:22
Ответы с готовыми решениями:

Удвоить каждую букву в заданном тексте
Ребят, помогите плиз решить задачи, до понедельника надо сделать :cry: 1)Определить число, полученное выписыванием в обратном порядке...

В заданном тексте заменить символ пробел на символ запятая
В заданном тексте заменить символ пробел на символ запятая. Конечные символы удалить, не заменяя на запятые. Если в тексте встречается...

В заданном тексте удалить символ
В заданном тексте удалить символ <,> и подсчитать количество удаленных символов.

9
Почетный модератор
 Аватар для Humanoid
11559 / 4353 / 453
Регистрация: 12.06.2008
Сообщений: 12,455
08.12.2009, 19:35
Pascal
1
2
3
4
5
6
7
8
9
10
Var S : String;
    I : Integer;
Begin
  S := 'ляляля';
  For I := Length(S) downto 1 do
  Begin
    If S[I]='я' then Insert('я',S,I);
  End;
  WriteLn(S);
End;
0
 Аватар для Gusl
0 / 0 / 1
Регистрация: 02.12.2009
Сообщений: 17
09.12.2009, 19:25  [ТС]
мы еще не пользуемся таким методом: S[I]
что-нибудь на уровне 1го класса можно?
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
09.12.2009, 19:31
Gusl, А как Вы тогда собираетесь работать со строками и символами?
0
 Аватар для Sarmak
58 / 57 / 5
Регистрация: 01.12.2009
Сообщений: 177
09.12.2009, 22:59
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Var c,x:char;
Begin
  writeln('vvedite simvol');
  readln(x);
  writeln('vvedite text');
  while not eoln do
    begin
      read(c);
      if c=x then write(c,c)
      else write(c);
    end;
    readln;
readln
End.
чат изучается раньше строк... мб так поймешь...
0
 Аватар для Gusl
0 / 0 / 1
Регистрация: 02.12.2009
Сообщений: 17
10.12.2009, 04:36  [ТС]
Sarmak, while not eoln do
ошибка:неверное количествофактических параметров((

Puporev, но ведь должен быть другой метод решения задачи,если мы НЕ использумся эти величины...
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
10.12.2009, 06:47
Gusl, Текст это по умолчанию строка или массив строк, т.е. тип string. А значит и работать с ним нужно используя соответствующие методы. Или у Вас неправильно или не полностью написано задание.
А while not eoln(f) используется для нахождения конца строки в текстовом файле, про которые вообще ни слова.
0
 Аватар для Mawrat
13116 / 5897 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
11.12.2009, 09:16
Gusl, здесь справедливо выше написали тебе, что надо чётче задание формулировать.
Цитата Сообщение от Gusl Посмотреть сообщение
Составить программу, которая удваивает символ в заданном тексте
"в заданном тексте" - как задан текст? В каком виде?
---
Видимо Sarmak, пошёл по верному пути.
Реализовал его идею в консольном приложении Delphi 7 :
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils,
  Windows;
 
//Функция берёт строку в ANSI кодировке (Windows)
//и возвращает её перевод в OEM кодировку (DOS) в виде отдельной строки.
function StrAnsiToOem(aStr : String) : String;
begin
  Result := '';
  if Length(aStr) > 0 then begin
    SetLength(Result, Length(aStr));
    CharToOem(PChar(aStr), PChar(Result));
  end;
end;
 
var
  //Символ, который надо удвоить.
  CharToDouble  : Char;
  //Очередной символ, прочитанный из потока консольного ввода.
  CharTmp       : Char;
  //Строка, в которой требуется удвоить заданный символ. Эта строка будет выведена на консоль.
  StrTmp        : String;
begin
  Writeln(StrAnsiToOem( 'Введите симовол и нажмите ENTER:' ));
  Readln(CharToDouble);
  Writeln(StrAnsiToOem( 'Введите строку и нажмите ENTER:' ));
  StrTmp := '';
  while not Eoln do begin
    Read(CharTmp);
    StrTmp := StrTmp + CharTmp;
    //Если это заданный символ, то удваиваем его.
    if CharTmp = CharToDouble then begin
      StrTmp := StrTmp + CharToDouble;
    end;
  end;
  //Читаем оставшийся символ Eoln и переходим к следующей строке.
  Readln;
  Writeln(StrAnsiToOem( 'Результат:' ));
  Writeln(StrTmp);
  Writeln(StrAnsiToOem( 'Для выхода нажмите ENTER.' ));
  //Ожидаем нажатия клавиши ENTER.
  Readln;
end.
Либо без StrAnsiToOem():
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
var
  //Символ, который надо удвоить.
  CharToDouble  : Char;
  //Очередной символ, прочитанный из потока консольного ввода.
  CharTmp       : Char;
  //Строка, в которой требуется удвоить заданный символ. Эта строка будет выведена на консоль.
  StrTmp        : String;
begin
  Writeln('Vvedite simvol i najmite ENTER:');
  Readln(CharToDouble);
  Writeln('Vvedite stroku i najmite ENTER:');
  StrTmp := '';
  while not Eoln do begin
    Read(CharTmp);
    StrTmp := StrTmp + CharTmp;
    //Если это заданный символ, то удваиваем его.
    if CharTmp = CharToDouble then begin
      StrTmp := StrTmp + CharToDouble;
    end;
  end;
  //Читаем оставшийся символ Eoln и переходим к следующей строке.
  Readln;
  Writeln('Resultat:');
  Writeln(StrTmp);
  Writeln('Dlya vihoda najmite ENTER.');
  //Ожидаем нажатия клавиши ENTER.
  Readln;
end.
0
 Аватар для Sarmak
58 / 57 / 5
Регистрация: 01.12.2009
Сообщений: 177
11.12.2009, 12:22
Mawrat, моя программа была написана на делфи. я не могу сказать, что у него за ошибка с моей программой, так как у меня все работает.
и раз вы используете uses windows;
то где же setconsolecp(1251); setconsoleoutputcp(1251); ?
1
 Аватар для Mawrat
13116 / 5897 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
11.12.2009, 19:50
Цитата Сообщение от Sarmak Посмотреть сообщение
Mawrat, моя программа была написана на делфи. я не могу сказать, что у него за ошибка с моей программой, так как у меня все работает.
Я сейчас твой код запустил - всё правильно отрабатывает. Почему у Gusl, такая ошибка - не знаю... :-\
Цитата Сообщение от Sarmak Посмотреть сообщение
и раз вы используете uses windows;
то где же setconsolecp(1251); setconsoleoutputcp(1251); ?
Я там для вывода сообщений CharToOem() применяю через обёртку StrAnsiToOem(). А ввод/вывод обрабатываемых данных - в данном случае не важно в какой кодировке.
Хотя setconsolecp(1251); setconsoleoutputcp(1251); наверное, в самом деле, применять удобнее.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.12.2009, 19:50
Помогаю со студенческими работами здесь

Сколько раз в заданном тексте встречается каждый символ
выяснить, сколько раз в заданном тексте встречается каждый символ.

В заданном тексте удалить символ «,» и подсчитать число удаленных
В заданном тексте удалить символ «,» и подсчитать число удаленных

Определить, сколько раз в заданном тексте встречается заданный символ
помогите пожалуйста написать программу "Посчитать, сколько раз в заданном тексте встречается заданный символ".

Подсчитайте, сколько раз в заданном тексте встречается заданный символ
Подсчитайте, сколько раз в заданном тексте встречается заданный символ.

В заданном тексте удалить символ "," и подсчитать число удаленных символов
В заданном тексте удалить символ "," и подсчитать число удаленных символов


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru