profile
Размещено 6 лет назад по предмету Информатика от hanvlad92

23 задание

program egsf;


var

A: array [1..3,1..7] of integer;

T:real;

Amax,Amin:real;

i,j:integer;


Begin


Write('T=');

Read(T);


For j:=1 to 7 do

for i:=1 to 3 do

begin


write('A[',i,',',j,']');

Read(A[i,j]);


end;


j:=1;

Amax:=0;

Amin:=0;


while (7>j) or (T>Amax-Amin) do


begin

begin

if (A[1,j]


Amin:=A[1,j];


if (A[2,j]


Amin:=A[2,j];


if (A[3,j]


Amin:=A[3,j];







if (A[1,j]>A[2,j]) and (A[1,j]>A[3,j]) then


Amax:=A[1,j];


if (A[2,j]>A[1,j]) and (A[2,j]>A[3,j]) then


Amax:=A[2,j];


if (A[3,j]>A[2,j]) and (A[3,j]>A[1,j]) then


Amax:=A[3,j];


end;

write( 'Amax-Amin=',Amax-Amin);


j:=j+1;

end;

end.



Может кто подсказать где ошибка?

  1. Ответ на вопрос
    Ответ на вопрос дан 13nisa13

    Твоя исправленная программа:

    program egsf;

    var A: array [1..3,1..7] of integer;

    T:real;

    Amax,Amin:real;

    i,j:integer;

    begin

    Write('T=');

    Read(T);

    For j:=1 to 7 do

    for i:=1 to 3 do

    begin

    write('A[',i,',',j,']');

    Read(A[i,j]);

    end;


    writeln;// Добавлен вывод массива

    for i:= 1 to 3 do

    begin

    for j:=1 to 7 do

    write(a[i,j]:4);

    writeln

    end;

    writeln;


    j:=1;

    Amax:=0;

    Amin:=0;

    while (7>=j) and (T>=Amax-Amin) do

    begin

    Amax:=0;

    Amin:=0;

    if (A[1,j]<A[2,j]) and (A[1,j]<A[3,j]) then Amin:=A[1,j];

    if (A[2,j]<A[1,j]) and (A[2,j]<A[3,j]) then Amin:=A[2,j];

    if (A[3,j]<A[2,j]) and (A[3,j]<A[1,j]) then Amin:=A[3,j];

    if (A[1,j]>A[2,j]) and (A[1,j]>A[3,j]) then Amax:=A[1,j];

    if (A[2,j]>A[1,j]) and (A[2,j]>A[3,j]) then Amax:=A[2,j];

    if (A[3,j]>A[2,j]) and (A[3,j]>A[1,j]) then Amax:=A[3,j];

    writeln( 'Amax-Amin=',Amax-Amin);

    j:=j+1;

    end;

    end.

    Будет работать для любой матрицы:

    const n=3;m=7;

    var a:array [1..n,1..m] of integer;//массив из целых чисел

    i,j,max,min,t:integer;//если массив из целых чисел, то max и min и их разность будут целыми числами; t тоже возьмём целое

    begin

    write('t = ');

    readln(t);

    writeln;


    for i:= 1 to n do

    begin

    for j:=1 to m do

    begin

    a[i,j]:=Random(9)+1;//массив задаётся автоматически

    write(a[i,j]:3)

    end;

    writeln

    end;

    writeln;


    for j:= 1 to m do

    begin

    max:=a[1,j];//за max элемент берётся первый элемент в столбце

    min:=a[1,j];//за min элемент берётся первый элемент в столбце

    for i:=1 to n do

    begin

    if a[i,j]>max then max:=a[i,j];//ищем max элемент в столбце

    if a[i,j]<min then min:=a[i,j]//ищем min элемент в столбце

    end;

    if max-min>t then break;//прерываем цикл при нарушении условия

    write (max-min:3)

    end

    end.

    или (если проблемы с break)

    const n=3;m=7;

    var a:array [1..n,1..m] of integer;//массив из целых чисел

    i,j,max,min,t:integer;//если массив из целых чисел, то max и min и их разность будут целыми числами; t тоже возьмём целое

    begin

    write('t = ');

    readln(t);

    writeln;


    for i:= 1 to n do

    begin

    for j:=1 to m do

    begin

    a[i,j]:=Random(9)+1;//массив задаётся автоматически

    write(a[i,j]:3);

    end;

    writeln

    end;

    writeln;


    j:= 1;

    max:=a[1,j];//за max элемент берётся первый элемент в столбце

    min:=a[1,j];//за min элемент берётся первый элемент в столбце

    while (j<=m) and (max-min<=t) do

    begin

    max:=a[1,j];//за max элемент берётся первый элемент в столбце (сбрасываем предыдущие значения)

    min:=a[1,j];//за min элемент берётся первый элемент в столбце (сбрасываем предыдущие значения)

    for i:=1 to n do

    begin

    if a[i,j]>max then max:=a[i,j];;//ищем max элемент в столбце

    if a[i,j]<min then min:=a[i,j]//ищем min элемент в столбце

    end;

    if max-min<=t then write (max-min:3);//не печатаем разность превышающую заданную t

    j:=j+1

    end

    end.

Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 6 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.