Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 504
от 01.12.2007, 13:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 243, Экспертов: 47
В номере:Вопросов: 3, Ответов: 5


Вопрос № 110905: Здравствуйте эксперты. У меня вопрос по синтаксису: что означает знак "^" ? Много где искал, но нигде нет точного объяснения. Надеюсь на вас....
Вопрос № 111028: Имеется текстовый файл, найти символ повторяющийся максимальное кол-во раз и вывести его в другой текстовый файл...
Вопрос № 111050: Здраствуйте! Есть задача: Есть 9 монет, одна из которых фальшивая. Известно, что фальшивая монета тяжелее настоящих. Найдите её за два взвешивания. Нужно решить ее програмно - незнаю как!...:( Математически это: (вроде так) кладём на...

Вопрос № 110.905
Здравствуйте эксперты. У меня вопрос по синтаксису: что означает знак "^" ? Много где искал, но нигде нет точного объяснения. Надеюсь на вас.
Отправлен: 25.11.2007, 14:02
Вопрос задал: Мясников Антон Евгеньевич (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Штатнов Илья
Здравствуйте, Мясников Антон Евгеньевич!

Чтобы связать ссылочный тип с определенным типом данных, используется символ ^, помещаемый перед именем типа. Например, имеется тип массив:
Type
A = Array[1..100] of integer;
Тип указателя на такой объект:
Type
tA = ^A;

Переменные ссылочного типа могут определяться как статические, при этом по общим правилам объявления переменных возможна запись с явным и неявным определением ссылочного типа.
Type
A = Array[1..100] of integer; {Тип массив из 100 целых чисел}
tA = ^A; {Тип указатель на тип А}
Var
B : tA; {Указатель на тип А}
C : ^A; {Указатель на тип А}

Для получения данных, соответствующих указателю, символ "^" приводится после имени указателя. Действия с элементами массива типа А могут быть описаны через действия над указателями В и С.

B^[i] := i; {i-му элементу массива, на который указывает В, присвоить значение i}

C^[i] := B^[i ]; {i-му элементу массива, на который указывает С, присвоить значение i-го элемента массива, на который указывает В}

После выполнения этого кода i-е элементы массивов, на которые указывают В и С, будут равны.

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

Разберем простой пример, обратив еще раз внимание на синтаксис:
Var
P : ^integer; {Указатель на целое}
P^ - переменная целого типа, на которую ссылается Р, она может стоять как в левой, так и в правой части выражений:
P^ :=16;
x := x+P^;

Первый оператор присваивает целочисленной переменной, на которую ссылается Р, значение 16, второй прибавляет к значению переменной х значение 16, второй прибавляет к значению переменной х значение 16. Аналогично определяются и используются указатели на переменные любого типа, в том числе и определенного пользователем.

а вообще в интернете много статей на эту тему
ссылка 1
ссылка 2

Длинные ссылки
-----
∙ Отредактировал: Denisss (Профессионал)
∙ Дата редактирования: 25.11.2007, 19:42
Ответ отправил: Штатнов Илья (статус: 1-ый класс)
Ответ отправлен: 25.11.2007, 15:01
Оценка за ответ: 5

Отвечает: Зиновьев Дмитрий Владимирович
Здравствуйте, Мясников Антон Евгеньевич!
Знаком ^ обозначаются указатели. Это не совсем обычные переменные, они не хранят данные, они хранят адрес в памяти, где хранятся данные, и с этим могут быть неожиданности у начинающих, например у вас есть два указателя a и b
a := 7
b := a;
a := 8;
В этом случае b тоже станет = 8
Ответ отправил: Зиновьев Дмитрий Владимирович (статус: 8-ой класс)
Ответ отправлен: 26.11.2007, 09:22
Оценка за ответ: 3
Комментарий оценки:
И где же в вашем примере указатели?


Вопрос № 111.028
Имеется текстовый файл, найти символ повторяющийся максимальное кол-во раз и вывести его в другой текстовый файл
Отправлен: 26.11.2007, 11:09
Вопрос задал: Антонов Игорь Владимирович (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Boriss
Здравствуйте, Антонов Игорь Владимирович!
Это несложно и код в приложении. Я код сохранил с именем = номеру Вашего вопроса.
Но попробуйте его изменить:
1) чаще всех будет встречаться пробел - его не показывайте;
2) определите относительную вероятность появления символа - нужно еще и все символы пересчитать;
3) мой код считает и знаки перехода на другую строку ...
Пишите в минифоруме, если встретятся проблемы

Приложение:

Прикреплённый файл: Загрузить >>
Срок хранения файла на сервере RusFAQ.ru составляет 30 суток с момента отправки ответа.
---------
Вывод - то место в тексте, где вы устали думать

Ответ отправил: Boriss (статус: Профессор)
Россия, Саранск
Организация: mte
WWW: Программирование на Паскале
----
Ответ отправлен: 26.11.2007, 11:31
Оценка за ответ: 5
Комментарий оценки:
спасибо! все работает замечательно! протестировал! сам так и думал примерно решать но нехватка опыта...(как стать программистом?? программировать!!! =)) )пять баллов бесспорно! просто паскаль учил еще в школе а тут вот сессия нагрянула (заочник) и как всегда все делается в последний момент =(

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Антонов Игорь Владимирович!

Смотрите приложение.
Программа считает символы с кодами от 0 до 255.
Удачи!

Приложение:

---------
И только наступив на грабли мы приобретаем драгоценный опыт!

Ответ отправил: Зенченко Константин Николаевич (статус: Специалист)
Ответ отправлен: 26.11.2007, 12:17
Оценка за ответ: 5
Комментарий оценки:
спасибо! выполнено точно по заданию! пять баллов! ээхх студенты мы студенты вечные =((


Вопрос № 111.050
Здраствуйте! Есть задача: Есть 9 монет, одна из которых фальшивая. Известно, что фальшивая монета тяжелее настоящих. Найдите её за два взвешивания.

Нужно решить ее програмно - незнаю как!...:( Математически это:
(вроде так)
кладём на каждую чашу по три монеты, после этого находим тройку монет, в которых есть фальшивая потом
Взвешиваем первую и вторую монету. Возможно 3 варианта:
Первая монета тяжелее второй, следовательно, вторая монета фальшивая.
Первая монета по весу совпадает со второй, значит фальшивая третья.
Первая монета легче второй, отсюда следует, что первая и есть фальш

Напишите пожалуйста решение этой задачи ПРОГРАМНО! И если можно обьясните каждый пункт :)
С Ув.Я :)
Отправлен: 26.11.2007, 13:08
Вопрос задал: Melixion (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 5)

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Melixion!

Смотрите приложение.
Функция equval выдает значение -1(первый параметр тяжелее),0(равны), 1(второй).
Первое - определяем тройку:
-1=1,2,3;
0=4,5,6;
1=7,8,9.
Второе - опрелеляем в тройке:
I) -1,0,1 -результаты первого взвешивания.
-1=1,4,7;
0=2,5,8;
1=3,6,9.

Удачи!

Приложение:

---------
И только наступив на грабли мы приобретаем драгоценный опыт!

Ответ отправил: Зенченко Константин Николаевич (статус: Специалист)
Ответ отправлен: 26.11.2007, 16:01
Оценка за ответ: 4
Комментарий оценки:
Спасибо большое но есть проблема :)
Вижу пример работает (почти),дело в том что или я неправельные параметры вожу или прога нетак щитает :(
Вообщем я пробовал чтоб все монеты были 2 а та что фальшивка 1, неправельно вычисляет,пробовал чтоб 1 были все а фальшивка 0 - результат такой же...в чем проблема?


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.64 от 24.11.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное