Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 01.01.2014
Сообщений: 11

Сделать так что бы программа меняла одни словосочетания на другие, учитывала регистр

06.02.2014, 08:27. Показов 1318. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!Необходимо исправить программу следующим образом: сделать так что бы программа меняла одни словосочетания на другие, учитывала регистр. Сейчас она выводит ошибку "Нельзя преобразовать тип string к char". После того как я изменил тип String на Char программа начала выводить ошибку, именуемую как "Нет индексного свойства по умолчанию для типа char". Исправьте пожалуйста, заранее спасибо!

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
 f: text; i: integer; s: CHAR;
begin
assign (f, 'input2.txt');
reset (f);
readln (f, s);
for i:=1 to length (s) do case s [i] of
'а': s [i]:='her';
'b': s [i]:='bis';
'c%ж': s [i]:='01 -january';
'%': s [i]:='01';
end;
append (f);
writeln (f, s);
close (f);
writeln ('Данные записаны в файл "input2.txt".');
readln;
end.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.02.2014, 08:27
Ответы с готовыми решениями:

Как сделать так, что бы при верном ответе выполнялись одни действия, при неверном - другие?
Здравствуйте, я начинающий, прошу прощения за глупые вопросы. Я по поводу IF-a, то есть как сделать так, что бы при верном ответе...

Можно ли сделать чтобы windows учитывала регистр в названии чего-либо?
Можно ли как-то сделать чтобы винда учитывала регистр везде, то есть написан нижный или верхний регистр в названии чего-либо?

Сделать так, что бы по клику мышки форма меняла свое положение на экране рандомно
Кто подскажет как сделать так, что бы по клику мышки форма меняла свое положение на экране рандомно? Дайте хоть какие то идеи и наброски...

5
561 / 484 / 168
Регистрация: 14.02.2012
Сообщений: 1,561
06.02.2014, 08:54
Лучший ответ Сообщение было отмечено Lqame как решение

Решение

Цитата Сообщение от Lqame Посмотреть сообщение
программа меняла одни словосочетания на другие
Как вариант использовать функцию replace.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Function Replace(var S:string; s1,s2:string):byte;
{Замена первого вхождения подстроки другой подстрокой.
Replace(Строка, Подстрока, На что заменить);
Результатом функции является число - на какой
позиции в строке была найдена подстрока.
Возвращается 0, если подстрока не найдена.}
 
Begin
 if ((length(S)+length(s2)-length(s1))<=255)and
    (pos(s1,S)<>0) then
  Begin
   Replace:=pos(S,s1);
   S:=copy(S,1,pos(s1,S)-1)+s2+copy(S,pos(s1,S)+length(s1),length(S));
  End else Replace:=0;
End;
Взята из темы Операции над строками
1
0 / 0 / 0
Регистрация: 01.01.2014
Сообщений: 11
09.02.2014, 16:45  [ТС]
Отлично, спасибо!) В какой оболочке вы написали это?
0
561 / 484 / 168
Регистрация: 14.02.2012
Сообщений: 1,561
09.02.2014, 18:51
Я же писал:
Цитата Сообщение от ВАСИЛЕВС Посмотреть сообщение
Взята из темы Операции над строками
В принципе в любой среде Pascal функция должна работать.
0
0 / 0 / 0
Регистрация: 01.01.2014
Сообщений: 11
11.02.2014, 16:38  [ТС]
Кажется я не верно выразился, я имел введу среду разработки (только начинаю изучать програмирование). Я ввел все что вы написали в PascalABC, выводит ошибку, я думаю что стоит попробовать использовать другую среду разработки?
И какую стоило бы использовать на ваш взгляд? Какой пользуетесь вы?
0
Почетный модератор
 Аватар для ildwine
6201 / 2963 / 1300
Регистрация: 04.03.2013
Сообщений: 5,797
Записей в блоге: 1
11.02.2014, 17:46
Lqame, вам предоставили только функцию, то есть все эти строки с 1 и по 15 нужно вставить в вашу программу перед главным begin, а в самой программе begin...end вы сможете воспользоваться этой функцией.

Среда программирования не при чем. Главное, что это только кусок программы...
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.02.2014, 17:46
Помогаю со студенческими работами здесь

TabControl - сделать так, чтобы на первой странице были одни элементы, а на другой были другие элементы
Есть tabControl. Хочу сделать так, чтобы на первой странице были одни элементы, а на другой были другие элементы.

Изменить программу так, что бы она учитывала и маленькие и большие буквы
Опять же нужна помощь. Нужно изменить программу так, что бы она учитывала и маленькие и большие буквы. В данном случае работает только с...

Сделать так, что бы сделать нажатую ссылку активной а другие нет
В общем есть 4 ссылки, нужно что бы когда пользователь нажимал на одну из них, она изменяла свой класс, а ту ссылку которая раньше была...

Сделать так, чтобы в процедуре переменная *а* не меняла значение
var a:Integer ; function b (a:Integer ):Integer ; begin b:= a mod 2 end; procedure output; begin while a&lt;&gt;0 do ...

Что нужно поменять что бы программа меняла местами слова первое с последним второе с предпоследним и т.д?
program Project1; const D = ; var S, Sw : String; i, Len, Cnt, CntMid : Integer; CntW, LenW, LenW1, P1, P2 : Integer; ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru