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

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


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

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

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

lamed
Статус: Профессионал
Рейтинг: 2731
∙ повысить рейтинг »
Boriss
Статус: Академик
Рейтинг: 2420
∙ повысить рейтинг »
star9491
Статус: Профессионал
Рейтинг: 2085
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И ПО / Программирование / Pascal (Паскаль)

Номер выпуска:1096
Дата выхода:01.06.2010, 19:30
Администратор рассылки:Boriss, Академик
Подписчиков / экспертов:223 / 180
Вопросов / ответов:2 / 2

Вопрос № 178682: Уважаемы эксперты, помогите с задачей на динамические списки. а) Описать функцию или процедуру, которая находит среднее арифметическое всех элементов непустого списка L, добавляя это значение в начало списка. б) Описать процедуру, котор...


Вопрос № 178692: Добрый день,уважаемые эксперты! Помогите реализовать задачи на паскале ABC,тема-файлы: типы файлов: если не указано что текстовые,значит типизированные всё вводится с клавиатуры ...

Вопрос № 178682:

Уважаемы эксперты, помогите с задачей на динамические списки.

а) Описать функцию или процедуру, которая находит среднее арифметическое всех элементов непустого списка L, добавляя это значение в начало списка.

б) Описать процедуру, которая объединяет два упорядоченных по неубыванию (т.е. по возрастанию или равные) списка L1 и L2 в один упорядоченный по неубыванию список, меняя соответствующим образом ссылки в списках L1 и L2, запомнив адрес полученного списка в L1.

Отправлен: 27.05.2010, 02:31
Вопрос задал: Иванов Валерий Павлович, Посетитель
Всего ответов: 1
Страница вопроса »


Отвечает Andrew Kovalchuk, Студент :
Здравствуйте, Иванов Валерий Павлович.
Решение задачи А в приложении.

Приложение:

-----
Временная неудача лучше временной удачи

Ответ отправил: Andrew Kovalchuk, Студент
Ответ отправлен: 27.05.2010, 10:55
Номер ответа: 261705

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

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

  • Вопрос № 178692:

    Добрый день,уважаемые эксперты! Помогите реализовать задачи на паскале ABC,тема-файлы:
    типы файлов: если не указано что текстовые,значит типизированные
    всё вводится с клавиатуры

    1) Описать процедуру изменения порядка следования записей в файле вещественных чисел на обратный порядок
    2) Для файла целых чисел описать процедуру пересылки в другой файл чисел,сумма цифр которых равна заданному числу
    3) Описать процедуру замены в файле вещественных чисел записи с заданным номером на заданное вещественное число
    4) Текстовый файл состоит из строк вещественных чисел,описать процедуру подсчета количества строк в файле и нахождение номера строки с наибольшим количеством чисел
    5) Описать функцию проверки,содержит ли текстовый файл пустую строку
    6) Текстовый файл состоит из одной строки целых чисел. Описать функциюцию проверки, есть ли в файле число равное 0

    Отправлен: 27.05.2010, 10:49
    Вопрос задал: angel.nero, Посетитель
    Всего ответов: 1
    Страница вопроса »


    Отвечает lamed, Профессионал :
    Здравствуйте, angel.nero! Ответ на вопросы о вещественных числах. Текст программы (ABC). Если файл данных в каталоге программы отсутствует, запрашивается ввод вещественных чисел.
    Код:
    program p178692;
    // RFPRO, lamed, ABC
    // 1) Описать процедуру изменения порядка следования записей в файле
    // вещественных чисел на обратный порядок
    // 3) Описать процедуру замены в файле вещественных чисел записи с заданным
    // номером на заданное вещественное число
    uses
    crt;

    type
    TRealFile = file of real;

    procedure FileCreate(var f: TRealFile; fname: string);
    // Создание файла, ввод с клавиатуры
    var
    ans : char;
    x: real;
    begin
    rewrite(f);
    repeat
    write('Число ');
    readln(x);
    write(f,x);
    write('Продолжать д/н ');
    readln(ans);
    until not(ans in ['д', 'Д']);
    close(f)
    end; { FileCreate }

    procedure FilePrint(f: TRealFile);
    // печать файла
    var
    WasPrinted: boolean; // печатаем запятую перед каждым числом, начиная со 2-го
    x: real;
    begin
    WasPrinted := false;
    reset(f); // открыть файл
    write('<');
    while not eof(f) do
    begin
    read(f,x);
    if WasPrinted then
    write(',')
    else
    WasPrinted := true;
    write(x)
    end;
    writeln('>');
    close(f);
    end;

    procedure Reverse(var f: TRealFile);
    // Изменение порядка следования записей в файле
    // вещественных чисел на обратный порядок
    var
    i, j, n: integer;
    rec1, rec2: real;
    t: boolean;
    begin
    reset(f);
    n:= filesize(f);
    seek(f, 0);
    for i:= 0 to n div 2 - 1 do
    begin
    seek(f, i);
    read(f, rec1);
    seek(f, n-i-1);
    read(f, rec2);
    seek(f, i);
    write(f,rec2);
    seek(f, n-i-1);
    write(f,rec1);
    end;
    close(f);
    end; { Reverse }

    procedure Change(var f: TRealFile; x: real; position: integer; var code: integer);
    // Замена в файле вещественных чисел записи с заданным
    // номером на заданное вещественное число
    var
    n: integer;
    begin
    reset(f);
    if (position < 0) or (position >= filesize(f)) then
    code := -1
    else
    begin
    seek(f, position);
    write(f, x);
    code := 0;
    end;
    close(f);
    end; { Chamge }

    var
    f : TRealFile;
    FileName : string;
    position : integer;
    x : real;
    ChangeCode: integer;

    begin //основная программа
    ClrScr;

    FileName := 'real.dat';
    assign(f, FileName);

    if not FileExists(FileName) then
    FileCreate(f, FileName);

    writeln('Исходный файл');
    FilePrint(f);

    write('Число для замены ');
    readln(x);

    write('Позиция для замены ');
    readln(position);

    change(f, x, position, ChangeCode);
    if ChangeCode = 0 then
    begin
    writeln('После замены');
    FilePrint(f);
    end
    else
    writeln('Ошибка, замена не проведена');

    reverse(f);
    writeln('После изменения порядка');
    FilePrint(f);

    end.


    Примеры работы
    Код:
    Исходный файл
    <2.5,0>
    Число для замены 3
    Позиция для замены 2
    Ошибка, замена не проведена
    После изменения порядка
    <0,2.5>


    Код:
    Число 1
    Продолжать д/н д
    Число 2.5
    Продолжать д/н д
    Число 3.7
    Продолжать д/н д
    Число 4.8
    Продолжать д/н д
    Число 5.5
    Продолжать д/н н
    Исходный файл
    <1,2.5,3.7,4.8,5.5>
    Число для замены 5
    Позиция для замены 4
    После замены
    <1,2.5,3.7,4.8,5>
    После изменения порядка
    <5,4.8,3.7,2.5,1>


    Ответ отправил: lamed, Профессионал
    Ответ отправлен: 29.05.2010, 09:49
    Номер ответа: 261738

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

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

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

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

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

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

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

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


    © 2001-2010, Портал RFpro.ru, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2010.6.16 от 26.05.2010

    В избранное