Резултати от 1 до 4 от общо 4

Къде бъркам ?

Сподели във Facebook Сподели в Twitter Изпрати на Email Сподели в LinkedIn
  1. Junior Member
    Тук е от
    Nov 2004
    Мнения
    100
    #1

    Къде бъркам ?

    Задача на Паскал

    Да се състави главна програма за обработка на три масива А[10,20], B[20,30] и C[30,40], където данните са числа в интервала [-999.99 - 999.999]. Съответните подпрограми да извършват следните обработки:
    • извеждане на условието на задачата и името на автора;
    • въвеждане на входните данни;
    • извеждане на входните данни;
    • всички отрицателни числа в интервала [ M - N] да се заменят с числото Q, kато се съхранят входните данни, т.е. резултатът да се препише в нов масив. Да се преброят променените елементи;
    • да се изведат резултатите;
    • резултатът да се запише във външен файл на диск С: с име DATA03.DAT.


    Решение

    program task03;

    type
    MAS=array[1..40, 1..40] of real;

    procedure uslovie;
    begin
    writeln('Da se systavi glavna programa za obrabotka na ............');
    end;

    procedure vhod(var x:MAS; r, c:integer);
    var
    i, j: integer;
    begin
    for i := 1 to r do
    for j := 1 to c do
    begin
    write('cell at row ', i, ', column ', j, ': ');
    readln(x[i, j]);
    end;
    end;

    procedure izhod(x:MAS ; r, c:integer);
    var
    i, j: integer;
    begin
    for i := 1 to r do
    begin
    for j := 1 to c do
    write(x[i, j]:3:3, ' ');
    writeln;
    end;
    end;

    function replace(a: MAS; r, c: integer; var res: MAS; M, N, Q: real):integer;
    var
    i, j, count: integer;
    begin
    count := 0;
    for i := 1 to r do
    for j := 1 to c do
    if (a[i, j] < 0) and (a[i, j] >= M) and (a[i, j] <= N) then
    begin
    res[i, j] := Q;
    count := count + 1;
    end
    else
    res[i, j] := a[i, j];
    replace := count;
    end;

    procedure printMatrixToFile(var f: text; x:MAS; r, c:integer);
    var
    i, j: integer;
    begin
    for i := 1 to r do
    begin
    for j := 1 to c do
    write(f, x[i, j]:3:3, ' ');
    writeln(f);
    end;
    end;

    var
    a, b, c, aq, bq, cq: MAS;
    m, n, q, replacedA, replacedB, replacedC, rowsA, colsA, rowsB, colsB, rowsC, colsC: integer;
    f: text;
    begin

    (* izvejdane na uslovieto i avtora *)
    uslovie;

    writeln;

    (* vyvejdane na vhodnite danni *)

    writeln('matrix A:');
    rowsA := 1; colsA := 2; (* vmesto 10, 20, 30, 40 - 1, 2, 3, 4, za po-byrzo vyvejdane ot klaviaturata *)
    vhod(a, rowsA, colsA);
    writeln('matrix A:');
    izhod(a, rowsA, colsA);


    writeln('matrix B:');
    rowsB := 2; colsB := 3;
    vhod(b, rowsB, colsB);
    writeln('matrix B:');
    izhod(b, rowsB, colsB);


    writeln('matrix C:');
    rowsC := 3; colsC := 4;
    vhod(c, rowsC, colsC);
    writeln('matrix C:');
    izhod(c, rowsC, colsC);


    write('M: ');
    readln(m);
    write('N: ');
    readln(n);
    write('Q: ');
    readln(q);

    writeln('M = ', m, ', N = ', n, ', Q = ', q);

    writeln;
    writeln;


    (* zamqna na otricatelni 4isla v intervala [M-N] s Q *)

    replacedA := replace(a, rowsA, colsA, aq, M, N, Q);
    replacedB := replace(b, rowsB, colsB, bq, M, N, Q);
    replacedC := replace(c, rowsC, colsC, cq, M, N, Q);

    (* izvejdane na rezultatite *)

    writeln('matrix AQ:');
    izhod(aq, rowsA, colsA);
    writeln('replaced numbers: ', replacedA);

    writeln('matrix BQ:');
    izhod(bq, rowsB, colsB);
    writeln('replaced numbers: ', replacedB);

    writeln('matrix CQ:');
    izhod(cq, rowsC, colsC);
    writeln('replaced numbers: ', replacedC);
    readln;
    (* zapis na rezultatite vyv fail*)

    assign(f, 'C:\DATA03.DAT');
    rewrite(f);

    printMatrixToFile(f, aq, rowsA, colsA);
    writeln(f, replacedA);
    writeln(f);
    printMatrixToFile(f, bq, rowsB, colsB);
    writeln(f, replacedB);
    writeln(f);
    printMatrixToFile(f, cq, rowsC, colsC);
    writeln(f, replacedC);
    writeln(f);

    close(f);
    readln;
    readln;
    end.

  2.  
     
  3. Member
    Тук е от
    Nov 2005
    Мнения
    295
    #2

    Re:Къде бъркам ?

    А какво се случва, че мислиш, че "бъркаш"?

  4. Junior Member
    Тук е от
    Nov 2004
    Мнения
    100
    #3

    Re:Къде бъркам ?

    пиша отрицателни числа и в резултата не ги разменя с числoто Q

  5. Member Аватара на shanto
    Тук е от
    Feb 2008
    Мнения
    621
    #4

    Re:Къде бъркам ?

    пиша отрицателни числа и в резултата не ги разменя с числoто Q
    Това не е вярно!

    погледни тук ->http://darkmentor.hit.bg/prg_exe.jpg
    интервала е -10..5 следователно числото, което попада в този интервал и ще се замени е - 8.
    Числото ,с което ще бъде заменето е 9.
    Както ,по долу на същата картинка,виждаш замяната е станала факт!
    Записа на старите данни във файл също е станала - погледни тук ->http://darkmentor.hit.bg/file_save.jpg
    Както виждаш във файла стои старата стойност - "- 8", което е и изискването по условие.

    Към теб имам следния въпрос:
    Тази програма сам ли си я писал или някой ти я е писал, но ти не си разбрал действието й?
    За себе си съм си отговорил, но ти занапред първо мисли,после стартирай програмата ,огледай кода разбери кое къде се изпълнява
    и чак когато си разбрал в основи действието на програмата и само нещо не ти е ясно - питай.
    Не че няма да ти отговорим, но така не си помагаш много.

Сподели във Facebook Сподели в Google Plus Сподели в Twitter Изпрати на Email Сподели в LinkedIn

Подобни теми

  1. Паскал къде бъркам
    От xzone във форум Програмиране
    Отговори: 4
    Последно: 23-11-08, 20:01
  2. Connlimit - помощ, къде бъркам
    От koko-bg във форум Linux
    Отговори: 8
    Последно: 31-12-06, 17:16
  3. Отговори: 3
    Последно: 29-03-06, 09:53
  4. От къде е SMS-a
    От NaskoK във форум Смартфони, телефони
    Отговори: 4
    Последно: 07-03-05, 06:57
  5. Алф? От къде???
    От MetalMilitia във форум Музика, филми и театър
    Отговори: 9
    Последно: 26-11-03, 09:45

SetCombG.com
SetCombG.com е портален сайт и Форум за битова техника, телевизори, климатици, лаптопи и смартфони, създаден през 1999 година.
Заедно сме над 20 години!
Следвай ни
Горе