Задачка

Тема в разделе "Pascal and Delphi", создана пользователем ludan, 22 окт 2011.

Статус темы:
Закрыта.
  1. ludan

    ludan Гость

    1.создать текстовый файл из трех массивов вещественных чисел (в каждой строке один массив). считать его и выдать на экран номера отрицательных элементов в каждом массиве. если таких нет, то тоже выдать сообщение.
    2.описать указатель на массив из 10 элементов целого типа. заполнить массив с помощью генератора случайных чисел. найти максимальное и минимальное значения элементов, используя указатели. оставшиеся элементы вывести на экран.
    3.написать внешний модуль для ввода массива из 7 вещественных чисел и нахождения минимального его члена. в программе с помощью внешнего модуля ввести 2 массива и вывести на экран минимальные значения для каждого из них.

    спасите
     
  2. Vadik(R)

    Vadik(R) Well-Known Member

    Регистрация:
    12 дек 2007
    Сообщения:
    483
    Симпатии:
    0
    Могу сделать тебе задачи, не за бесплатно, конечно.
    Отпишись, если согласен.
     
  3. ludan

    ludan Гость

    согласен только надо к завтрашнему дню, за сколько?
     
  4. Vadik(R)

    Vadik(R) Well-Known Member

    Регистрация:
    12 дек 2007
    Сообщения:
    483
    Симпатии:
    0
    Всё прошло успешно с этим человеком, вот решения.
    Задача 1:
    Код (Delphi):
    program Project1;

    {$APPTYPE CONSOLE}

    var
    a, b, c: array [1..10] of real;
    i, na, nb, nc: integer;
    f: text;
    fl: boolean;
    begin
    write('na=');
    readln(na);
    for i := 1 to na do
    begin
    write('a[', i, ']=');
    readln(a[i]);
    end;
    write('nb=');
    readln(nb);
    for i := 1 to nb do
    begin
    write('b[', i, ']=');
    readln(b[i]);
    end;
    write('nc=');
    readln(nc);
    for i := 1 to nc do
    begin
    write('c[', i, ']=');
    readln(c[i]);
    end;
    assign(f, 'output.txt');
    rewrite(f);
    for i := 1 to na - 1 do
    write(f, a[i], ' ');
    writeln(f, a[na]);
    for i := 1 to nb - 1 do
    write(f, b[i], ' ');
    writeln(f, b[nb]);
    for i := 1 to nc - 1 do
    write(f, c[i], ' ');
    writeln(f, c[nc]);
    close(f);
    reset(f);
    na := 0;
    while not eoln(f) do
    begin
    na := na + 1;
    read(f, a[na]);
    end;
    readln(f);
    nb := 0;
    while not eoln(f) do
    begin
    nb := nb + 1;
    read(f, b[nb]);
    end;
    readln(f);
    nc := 0;
    while not eoln(f) do
    begin
    nc := nc + 1;
    read(f, c[nc]);
    end;
    close(f);
    fl := true;
    for i := 1 to na do
    if a[i] < 0 then
    begin
    writeln('Номер отрицательного элемента в первом массиве: ', i, '.');
    fl := false;
    end;
    if fl then writeln('В первом массиве отрицательных элементов нет.');
    fl := true;
    for i := 1 to nb do
    if b[i] < 0 then
    begin
    writeln('Номер отрицательного элемента во втором массиве: ', i, '.');
    fl := false;
    end;
    if fl then writeln('Во втором массиве отрицательных элементов нет.');
    fl := true;
    for i := 1 to nc do
    if c[i] < 0 then
    begin
    writeln('Номер отрицательного элемента в третьем массиве: ', i, '.');
    fl := false;
    end;
    if fl then writeln('В третьем массиве отрицательных элементов нет.');
    readln;
    end.
    Задача 2:
    Код (Delphi):
    program Project1;

    {$APPTYPE CONSOLE}

    const
    n = 10;

    type
    TArray = array [1..n] of integer;
    PArray = ^TArray;

    var
    a: PArray;
    i: integer;
    min, max: ^integer;
    begin
    randomize;
    new(a);
    new(min);
    new(max);
    for i := 1 to n do
    begin
    a^[i] := random(20) - 10;
    writeln('a[', i, ']=', a^[i]);
    end;
    min^ := a^[1];
    max^ := a^[1];
    for i := 2 to n do
    begin
    if a^[i] < min^ then min^ := a^[i];
    if a^[i] > max^ then max^ := a^[i];
    end;
    writeln('Минимальный элемент массива: ', min^, '.');
    writeln('Максимальный элемент массива: ', max^, '.');
    for i := 1 to n do
    if (min^ < a^[i]) and (a^[i] < max^) then write(a^[i], ' ');
    dispose(a);
    dispose(min);
    dispose(max);
    readln;
    end.
    Задача 3, код модуля:
    Код (Delphi):
    unit UArray;

    interface

    uses
    crt;

    const
    n = 7;

    type
    TArray = array [1..7] of real;

    procedure ReadArray(var A: TArray; c: char);
    function FindMin(const A: TArray): real;

    implementation

    procedure ReadArray(var A: TArray; c: char);
    var
    i: integer;
    begin
    for i := 1 to n do
    begin
    write(c, '[', i, ']=');
    readln(a[i]);
    end;
    end;

    function FindMin(const A: TArray): real;
    var
    i: integer;
    begin
    result := a[1];
    for i := 2 to n do
    if a[i] < result then result := a[i];
    end;

    begin

    end.
    Задача 3, код программы:
    Код (Delphi):
    program Project1;

    {$APPTYPE CONSOLE}

    uses
    UArray;

    var
    a, b: TArray;
    mina, minb: real;
    begin
    ReadArray(a, 'A');
    ReadArray(b, 'B');
    mina := FindMin(a);
    minb := FindMin(b);
    writeln('Минимальный элемент массива A: ', mina, '.');
    writeln('Минимальный элемент массива B: ', minb, '.');
    readln;
    end.
     
Загрузка...
Похожие Темы - Задачка
  1. Hehabr
    Ответов:
    1
    Просмотров:
    480
  2. dmalsh
    Ответов:
    1
    Просмотров:
    1.004
  3. varenbko
    Ответов:
    0
    Просмотров:
    1.040
  4. Fillya
    Ответов:
    0
    Просмотров:
    1.091
  5. ferrum
    Ответов:
    1
    Просмотров:
    1.118
Статус темы:
Закрыта.

Поделиться этой страницей