IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> комбинированные типы. операторы присоединения.
сообщение
Сообщение #1


самовнушение всегда спасает.
*

Группа: Пользователи
Сообщений: 27
Пол: Женский
Реальное имя: Анастасия

Репутация: -  1  +


помогите пожалуйста из неработающей программы, работающую сделать..

program errors;
type поле = (а,b);
запись = record a:integer; b:char end;
var х,у:запись; c:char;
function f (var r:запись):запись;
var р:поле;
begin for p := a to b do f.p := succ(z.p) end;
begin read©;
with x do begin a := ord©; b := c end;
y := x; if x = у then y := f(x);
with у do writeln(a,x)
end.



--------------------
думай дважды, чтоб не пожалеть однажды.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Цитата
выдает Error 41.
А вот это уже серьезнее... Дело в том, что операция сравнения (в Турбо Паскале по крайней мере) допустима только между простыми типами. Запись - это тип сложный, нельзя сравнивать записи между собой таким образом (через оператор "="). В более продвинутых компиляторах возможно переопределить оператор сравнения, тогда можно будет добиться работоспособности программы.

Единственный способ сравнить записи в Турбо Паскале - это сравнить их по каждому полю отдельно. К тому же, ты неправильно написала: функция в первом посте возвращает тип "запись", в 10-м посте у тебя она возвращает вещественное число. Тут - тоже засада: не может в Турбо-Паскале функция возвращать значение сложного типа. То есть, с использованием Турбо-Паскаля невозможно заставить приведенную выше (в самом начале треда) программу компилироваться. Только путем значительной переделки этого удастся достичь...
 К началу страницы 
+ Ответить 

Сообщений в этой теме
ducky   комбинированные типы. операторы присоединения.   5.12.2010 2:34
Lapp   помогите пожалуйста из неработающей программы, раб…   5.12.2010 13:42
ducky   да вроде бы просто запускаться должна))   5.12.2010 16:09
Lapp   да вроде бы просто запускаться должна))А какой у т…   5.12.2010 16:43
ducky   Паскаль у меня. компилятор же там есть..   5.12.2010 17:27
Lapp   Паскаль у меня. компилятор же там есть.. н-даа.. К…   6.12.2010 5:13
Krjuger   А слова поле,записть и тд,это ваш перевод или они …   5.12.2010 19:15
volvo   Из всех компиляторов Паскаля только Глагол (хотя э…   6.12.2010 17:34
ducky   Паскаль Турбо. русские буквы в условии были..сейч…   7.12.2010 1:36
ducky   вот..наконец-то код нормально набрала.. даже перед…   12.12.2010 3:34
volvo   if x=y then y:=f(x); Первый оператор - сравнение, …   12.12.2010 4:00
ducky   поменяла как в первом посте..все-равно не хочет. в…   12.12.2010 4:32
volvo   А вот это уже серьезнее... Дело в том, что операци…   12.12.2010 5:06
ducky   вообщем рабочую из нее сделать почти нереально? :(   19.12.2010 17:56
volvo   Вот это: - нереально (в таком виде, когда типы пол…   19.12.2010 18:24
ducky   спасибо Вам большое - пребольшое. в книжке был зап…   19.12.2010 20:56


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 28.12.2025 23:23
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name