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

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


Хостинг Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг на Windows 2008

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

Чемпионы рейтинга экспертов в этой рассылке

Micren
Статус: Студент
Рейтинг: 158
∙ повысить рейтинг >>
Пупорев Юрий Борисович
Статус: Специалист
Рейтинг: 80
∙ повысить рейтинг >>
Зенченко Константин Николаевич
Статус: Профессор
Рейтинг: 79
∙ повысить рейтинг >>

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

Выпуск № 796
от 30.01.2009, 19:05

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

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>

Вопрос № 158644: Здрасвуйте, помогите решить : Подпрограммы. Составить программу на Паскале. Дан одномерный массив, выполнить следующие действия: - найти первый максимальный элемент массива и заменить его нулем. - заменить нулями те числа, величина котор...


Вопрос № 158655: Метод монте карло.вычисление двухкратного интеграла...
Вопрос № 158686: подскажите пожалуйста как решить эту задачу: Дано четное число N(>0) и символы С1 и С2. Вывести строку длины , которая состоит из N чередующихся символов С1 и С2, начиная с С1. И Через Модуль. <img src="http://rusfaq.ru/images/Forum/1.gif" border=...
Вопрос № 158687: народ!!! люди добрые!!! помогите!!! нужно решить 4 задачи я над ними уже 3 дня сижу... ничего не могу... а задачи такие: 1) дана матрица порядка n и число к. разделить элементы к-ой строки на диагональный элемент этой строки. 2) заполнить мат...
Вопрос № 158704: Добрый день уважаемые эксперты! Подскажите пожлауйста: есть функция возведения основания в нужную степень, но когда передаю в качестве аргумента показателя степени например 3 - функция считает в квадрате, все тоже с другими значениями. Помогите пожал...
Вопрос № 158726: Здравствуйте, уважаемые эксперты! Задание у меня состоит в следующем: - описать объект в рамках Pascal; - продемонстрировать работу с объектом, созданным динамически и уничтожить; - создать иерархию объектов, имеющую не менее 3ех уров...

Вопрос № 158.644
Здрасвуйте, помогите решить :
Подпрограммы. Составить программу на Паскале.
Дан одномерный массив, выполнить следующие действия:
- найти первый максимальный элемент массива и заменить его нулем.
- заменить нулями те числа, величина которых по модулю больше максимального числа;
- найти max(a2, a4, …a2k)+min(a1, a3,…a2k-1);
- найти среди элементов массива те, которые являются квадратами некоторого числа m;
Отправлен: 24.01.2009, 18:36
Вопрос задал: Давыдов Артём Аркадьевич (статус: 1-й класс)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 10)

Отвечает: Micren
Здравствуйте, Давыдов Артём Аркадьевич!
Вот программа с краткими комментариями.

Приложение:

Ответ отправил: Micren (статус: Студент)
Ответ отправлен: 24.01.2009, 19:41

Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242039 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 2


    Отвечает: Alex2008pro
    Здравствуйте, Давыдов Артём Аркадьевич!
    program pas;
    const
    Nmax=100;
    var
    a:array[1..Nmax]Of integer;
    i,l,n,max,max1,min1,j:integer;
    begin
    repeat
    writeln('введите кол-во элементов <= ',Nmax);
    readln(n);
    until (n>0)and(n<=Nmax);
    writeln('введи данные');
    for i:=1 to n do
    readln(a[i]);
    min1:=a[1];
    max1:=a[2];
    for i:=1 to n do begin
    if i div 2=1 then
    if a[i]<min1 then min1:=a[i]
    else
    if a[i]>max1 then max1:=a[i];
    end;
    writeln('kv');
    for i:=1 to n do
    if Sqrt(a[i])=int(Sqrt(a[i])) then writeln(a[i]);
    max:=a[i];
    l:=1;
    for i:=1 to n do
    if a[i]>max then begin
    max:=a[i];
    l:=i;
    end;
    writeln('max = ',max,', номер = ',l);
    a[l]:=0;
    for i:=1 to n do
    if abs(a[i])>max then a[i]:=0;
    writeln('min=',min1);
    writeln('max=',max1);
    for i:=1 to n do
    writeln(a[i]);
    end.
    Ответ отправил: Alex2008pro (статус: 1-й класс)
    Ответ отправлен: 24.01.2009, 19:59

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242040 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Отвечает: Пупорев Юрий Борисович
    Здравствуйте, Давыдов Артём Аркадьевич!
    Решение Вашей задачи с использованием подпрограмм и привычных видимо Вам статистических массивов, короче по рабоче-крестьянски.

    Приложение:

    Ответ отправил: Пупорев Юрий Борисович (статус: Специалист)
    Ответ отправлен: 24.01.2009, 21:09

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242046 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5


    Отвечает: Motoden
    Здравствуйте, Давыдов Артём Аркадьевич!
    Не очень понятно что такое "первый максимальный элемент массива", но программа находящая максимальный элемент в массиве и выполняющая все пункты в вашем задании есть в приложении.

    Приложение:

    ---------
    не забудьте поставить оценку!:)

    Ответ отправил: Motoden (статус: 3-й класс)
    Ответ отправлен: 25.01.2009, 01:34

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242063 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Вопрос № 158.655
    Метод монте карло.вычисление двухкратного интеграла
    Отправлен: 24.01.2009, 21:38
    Вопрос задал: Astroboy (статус: Посетитель)
    Всего ответов: 2
    Мини-форум вопроса >>> (сообщений: 5)

    Отвечает: Boriss
    Здравствуйте, Astroboy!
    В приложении пример простейшей программы, решающей Вашу задачу
    Если что не понятно будет - спрашивайте

    Приложение:

    ---------
    Вывод - то место в тексте, где вы устали думать

    Ответ отправил: Boriss (статус: Профессор)
    Россия, Саранск
    Организация: Мордовский госуниверситет, Саранск, Факультет Электронной Техники
    WWW: Программирование на Паскале
    ICQ: 320096696
    ----
    Ответ отправлен: 25.01.2009, 12:49

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242080 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Отвечает: Micren
    Здравствуйте, Astroboy!
    Простая программа, которая вычисляет интеграл той кратности, которая Вам нужна.
    Код:

    program Pascal_158655;
    {$R+}
    { Предел }
    type
    TLim=record
    a,b:double;
    end;
    const
    MaxLim=65536 div sizeof(TLim)-1;
    type
    TLimArr=array[1..MaxLim]of TLim;
    Tx=array[1..MaxLim]of double;

    var
    iNum,i,j,pNum:LongInt;
    limarr:^TLimArr;
    x:^Tx;
    p,sum:double;

    { Функция f(x1,x2,...,xn), где x1-x[1],x2-x[2],...,xn-x[n],
    возвращает 1, если попали в область и 0 если не попали}
    function f(var x:Tx):double;
    begin
    { Шар единичного радиуса как пример }
    if x[1]*x[1]+x[2]*x[2]+x[3]*x[3]<=1 then f:=1 else f:=0;
    end;

    { Возвращает случайное число в интервале a..b }
    fu nction GetX(a,b:double):double;
    begin
    GetX:=a+(b-a)*Random;
    end;

    begin
    Randomize;
    { Ввод кратности интеграла }
    Write('Integral multiples:');
    ReadLn(iNum);
    { Выделяем память }
    GetMem(limarr,sizeof(TLim)*iNum);
    GetMem(x,sizeof(double)*iNum);
    p:=1;
    for i := 1 to iNum do begin
    Write('A',i,'=');ReadLn(limarr^[i].a);
    Write('B',i,'=');ReadLn(limarr^[i].b);
    p:=p*(limarr^[i].b-limarr^[i].a);
    end;
    Write('Points:');ReadLn(pNum);
    p:=p/pNum;
    sum:=0;
    for i := 1 to pNum do begin
    for j := 1 to iNum do x^[j]:=GetX(limarr^[j].a,limarr^[j].b);
    sum:=sum+f(x^)*p;
    end;
    WriteLn('I=',sum:8:4);
    FreeMem(x,sizeof(double)*iNum);
    FreeMem(limarr,sizeof(TLim)*iNum);
    ReadLn;
    end.

    Пример вывода программы:
    Код:

    Integral multiples:3
    A1=-1
    B1=1
    A2=-1
    B2=1
    A3=-1
    B3=1
    Points:1000000
    I= 4.1908
    Ответ отправил: Micren (статус: Студент)
    Ответ отправлен: 25.01.2009, 14:04

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242090 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Вопрос № 158.686
    подскажите пожалуйста как решить эту задачу: Дано четное число N(>0) и символы С1 и С2. Вывести строку длины , которая состоит из N чередующихся символов С1 и С2, начиная с С1. И Через Модуль.
    Отправлен: 25.01.2009, 11:47
    Вопрос задала: Otherside (статус: Посетитель)
    Всего ответов: 2
    Мини-форум вопроса >>> (сообщений: 0)

    Отвечает: Пупорев Юрий Борисович
    Здравствуйте, Otherside!
    Поскольку в задании упоминается строка, а работаем мы в Паскале, я сделал программу именно для строки, т.е. массива символов длиной не более 255 элементов. Хотя можно легко переделать эту программу на массив символов-array[1..n]of char, длиной значительно больше.
    Текст модуля и программы с пояснениями, в приложении.

    Приложение:

    Ответ отправил: Пупорев Юрий Борисович (статус: Специалист)
    Ответ отправлен: 25.01.2009, 13:57

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242088 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5


    Отвечает: Motoden
    Здравствуйте, Otherside!
    Ваша программа и модуль в приложении.

    Приложение:

    ---------
    не забудьте поставить оценку!:)

    Ответ отправил: Motoden (статус: 3-й класс)
    Ответ отправлен: 25.01.2009, 17:18

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242101 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Вопрос № 158.687
    народ!!! люди добрые!!! помогите!!! нужно решить 4 задачи я над ними уже 3 дня сижу... ничего не могу...

    а задачи такие: 1) дана матрица порядка n и число к. разделить элементы к-ой строки на диагональный элемент этой строки. 2) заполнить матрицу линейной последовательности от левого нижнего угла по диагонали : влево вверх.пример заполнения:
    10 13 15 16
    6 9 12 14
    3 5 8 11
    1 2 4 7
    3) дан текст напечатать в алфавитном порядке все согласные буквы которые не входят ни в одно слово.
    4) создать файл содержащий текст на английском языке и некоторые два слова. определить, сколько раз они встречаются в тексте и сколько из них непосредственно друг за другом
    Отправлен: 25.01.2009, 11:56
    Вопрос задал: Edise (статус: Посетитель)
    Всего ответов: 3
    Мини-форум вопроса >>> (сообщений: 0)

    Отвечает: Пупорев Юрий Борисович
    Здравствуйте, Edise!
    Задача №1 с небольшими пояснениями в приложении.

    Приложение:

    Ответ отправил: Пупорев Юрий Борисович (статус: Специалист)
    Ответ отправлен: 25.01.2009, 15:28

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242094 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    спасибо огромное))) не ожидал что кто-нить поможет)


    Отвечает: Шевченко Дмитрий
    Здравствуйте, Edise!

    Решение задач 1-3 в приложении.

    Приложение:

    Ответ отправил: Шевченко Дмитрий (статус: 10-й класс)
    Ответ отправлен: 25.01.2009, 15:57

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242096 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    спасибо большое)


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

    Четвертая задача в приложении.
    Строка результата выглядит так:
    'One:' , indexOne, - счетчик певого слова;
    ' Two:' , indexTwo, - счетчик второго слова;
    ' One after Two:' , indexOneTwo, - счетчик количества комбинаций, когда первое слово следует за вторым;
    ' Two after One:' , indexTwoOne - счетчик количества комбинаций, когда второе слово следует за первым.
    Оператор
    case c of{проверяем разделители и регистр букв}
    '.',',',':','-','!','"','/','*','+','=','%':c:=' ';
    'A'..'Z':c:=chr(ord(c)+32);
    end;

    выполняет две функции:
    - приводит все слова к одному регистру т.е. к примеру: The = the;
    - все знаки препинания преобразовывает в пробел - единственный стандартный разделитель для всех слов, в этой строке Вы можете добавить свои знаки или убрать лишние.
    Вопросы по программе задавайте в мини-форум.

    Удачи!

    Приложение:

    ---------
    Итерация от человека, рекурсия — от Бога (Питер Дойч)

    Ответ отправил: Зенченко Константин Николаевич (статус: Профессор)
    Украина, Киев
    Тел.: +380979536619
    Адрес: Украина г.Киев
    ----
    Ответ отправлен: 26.01.2009, 17:06

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242213 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Вопрос № 158.704
    Добрый день уважаемые эксперты! Подскажите пожлауйста: есть функция возведения основания в нужную степень, но когда передаю в качестве аргумента показателя степени например 3 - функция считает в квадрате, все тоже с другими значениями. Помогите пожалуйста, последнее время программирую на С++, в Паскале очень многое забыл

    function Extent(n : Extended; Index : Integer) : Extended;
    var Ext : Extended;
    begin
    while(I < Index) do
    begin
    Inc(I);
    Ext := (n * n);
    end;
    Extent := Ext;
    end;
    Отправлен: 25.01.2009, 14:59
    Вопрос задал: Николай // Programmator (статус: Студент)
    Всего ответов: 1
    Мини-форум вопроса >>> (сообщений: 4)

    Отвечает: Motoden
    Здравствуйте, Николай // Programmator !
    Ошибка в алгоритме. Исправленная версия функции в приложении.

    Приложение:

    ---------
    не забудьте поставить оценку!:)

    Ответ отправил: Motoden (статус: 3-й класс)
    Ответ отправлен: 25.01.2009, 17:58

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242110 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 5
    Комментарий оценки:
    Спасибо Вам, вроде и опыт не плохой имею, но вчера до такой степени в Delphi напрограммировался, что глядя на код он мне кажется кучей безсмысленных символов :))


    Вопрос № 158.726
    Здравствуйте, уважаемые эксперты!

    Задание у меня состоит в следующем:
    - описать объект в рамках Pascal;
    - продемонстрировать работу с объектом, созданным динамически и уничтожить;
    - создать иерархию объектов, имеющую не менее 3ех уровней (постараться использовать виртуальные методы).

    У меня проблема в следующем: не могу придумать ни объект, ни иерархию.

    Подскажите, пожалуйста, какой объект можно описать (и какие у него описать методы), и если можно иерархию.

    Заранее спасибо!
    Отправлен: 25.01.2009, 18:43
    Вопрос задал: Draconit (статус: Посетитель)
    Всего ответов: 2
    Мини-форум вопроса >>> (сообщений: 3)

    Отвечает: Verena
    Здравствуйте, Draconit!
    Самый тривиальный пример: первичный объект - список (элемент, ссылки на следующий/предыдущий, создание, удаление), на основе этого объекта, например, объект-стек (реализуем методы добавления и удаления из начала списка), на основе объекта-стека реализуем объект-D-очередь (если не ошибаюсь, так называется список, где добавление и удаление возможно из конца и начала) (добавляем к имеющемуся ещё методы добавления и удаления из конца). Пример понятный и полезный, потому как можно его использовать потом.
    Удачи!
    ---------
    Эта история - не для истории, понимаешь?
    Ответ отправила: Verena (статус: Специалист)
    Ответ отправлен: 25.01.2009, 19:06

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242112 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!

    Оценка за ответ: 4


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

    В приложении программа, которая создает иерархию из трёх объектов: oPoint, oLine и oFigure. Можете использовать её как пример.
    Удачи!

    Приложение:

    ---------
    Итерация от человека, рекурсия — от Бога (Питер Дойч)

    Ответ отправил: Зенченко Константин Николаевич (статус: Профессор)
    Украина, Киев
    Тел.: +380979536619
    Адрес: Украина г.Киев
    ----
    Ответ отправлен: 26.01.2009, 11:03

    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 242159 на номер 1151 (Россия) | Еще номера >>
  • Отправить WebMoney:
  • Вам помогли? Пожалуйста, поблагодарите эксперта за это!


    Вы имеете возможность оценить этот выпуск рассылки.
    Нам очень важно Ваше мнение!
    Оценить этот выпуск рассылки >>

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

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

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

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

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


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

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров >>

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2009, Портал RusFAQ.ru, Россия, Москва.
    Авторское право: ООО "Мастер-Эксперт Про"
    Техподдержка портала, тел.: +7 (926) 535-23-31
    Хостинг: "Московский хостер"
    Поддержка: "Московский дизайнер"
    Авторские права | Реклама на портале

    ∙ Версия системы: 5.13 от 01.12.2008

    Яндекс Rambler's Top100
    RusFAQ.ru | MosHoster.ru | MosDesigner.ru
    RusIRC.ru | Kalashnikoff.ru | RadioLeader.ru

    В избранное