Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Задача о массиве (http://www.tehnari.ru/f41/t95255/)

ksenia78 17.03.2014 12:22

Задача о массиве
 
Здравствуйте,кто в этом разбирается?пожалуйста помогите решить!
В массиве все элементы, стоящие ниже и левее максимального элемента, заменить на минимальный элемент

poiu 17.03.2014 15:03

как то так. давно было =)
логично, что не все случаи будут работать. в частности если максимум в первом столбике.

var
mas: array [0..9, 0..9] of integer;
i, j: integer;
min, max, pos_i, pos_j: integer;
begin
// формируем массив
randomize;
for i:= 0 to 9 do
for j:= 0 to 9 do mas[i, j]:= random(1000);

// ищем минимальное и максимальное значения, попутно выводя массив на экран
min:= mas[0, 0];
max:= mas[0, 0];
writeln('Vhodnoi massiv:');
for i:= 0 to 9 do
begin
for j:= 0 to 9 do
begin
if mas[i, j] < min then min:= mas[i, j];
if mas[i, j] > max then
begin
max:= mas[i, j];
pos_i:= i;
pos_j:= j;
end;
Write(mas[i, j]:4);
end;
writeln;
end;

// делаем замену на минимальное значение слева и снизу от максимума
for i:= pos_i+1 to 9 do
for j:= 0 to pos_j-1 do mas[i, j]:= min;

// выводим на экран значение минимума, максимума и позицию максимума
writeln('min= ', min);
writeln('pos_i= ', pos_i);
writeln('pos_j= ', pos_j);
writeln('max= ', max);

// выводим массив после замены на минимум
writeln('Vihodnoi massiv:');
for i:= 0 to 9 do
begin
for j:= 0 to 9 do Write(mas[i, j]:4);
writeln;
end;
readln;
end.

Vladimir_S 17.03.2014 15:09

Цитата:

Сообщение от poiu (Сообщение 1016359)
логично, что не все случаи будут работать. в частности если максимум в первом столбике.

Ну почему же - всё правильно, и работать будет в любом случае. Просто если максимум в первом столбце, то массив не изменится.

Другое дело, что я не стал бы ни под каким видом оказывать "помощь" подобной барышне - и задачка детская, и изложено крайне неряшливо: не указан даже язык программирования. Между прочим, им вполне может оказаться не Паскаль а, например, СИ. Или Ява. В общем, "вы тут давайте, а я поскакала, и некогда мне тут с вами валандаться!".
Впрочем, тут решает каждый за себя - я имею в виду оказывать или нет подобную, с позволения сказать, "помощь".

poiu 17.03.2014 15:26

а я решил сделать как есть))) как спросили так и ответил)))
а то в прошлый раз когда я спрашивал подробности, то получил предупреждение от модера за вопросы и просьбу писать по делу. вот по делу и написал.
хотя согласен, что задача школьного уровня и не стоит траты времени...

Vladimir_S 17.03.2014 16:10

Цитата:

Сообщение от poiu (Сообщение 1016364)
а то в прошлый раз когда я спрашивал подробности, то получил предупреждение от модера за вопросы и просьбу писать по делу.

Ну, положим, не передергивайте: посмотрел я тему, о которой Вы пишете, так там несколько форма неподобающая: не столько запрос к топикстартеру на уточнение подробностей, сколько демонстрация собственной эрудиции. За то замечание и получили. Ладно, проехали. :)


Часовой пояс GMT +4, время: 08:01.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.