Переставляя ее строки и столбцы, переместить наибольший элемент в верхний левый угол. Определить можно ли таким же образом поместить минимальный элемент в нижний правый угол.
Ну вот как-то так, если что-то не ясно - спрашивай. Инициализации начальных элементов нет, так что без соответствующей правки она не заработает.
int main() { // Something int a[n][m]; // Init
// Находим максимум int im = 0, jm = 0, max = a[0][0]; for (int i = 0 ; i < n; ++i) for (int j = 0; j < m; ++j) if (a[i][j] > max) { max = a[i][j]; im = i; jm = j; }
// Двигаем максимум вниз swapCollumn(a, n, m, im, n-1); swapRow(a, n, m, jm, m-1);
}
//Премещаем 2 столбца местами void swapCollumn(int ** a, int n, int m, int c1, int c2) { if (c1 < 0 || c2 < 0 || c1 >= n || c2 >= n) return; for (int i = 0; i < m; ++i) swap(&a[c1][i], &a[c2][i]); }
//Перемещаем 2 строки местами void swapRow(int ** a, int n, int m, int r1, int r2) { if (r1 < 0 || r2 < 0 || r1 >= m || r2 >= m) return; for (int i = 0; i < n; ++i) swap(&a[i][r1], &a[i][r2]); }
void swap(int * el1, int el2) { int t = *el1; *el1 = *el2; *el2 = *el1; }
1) 16*9=144 руб/100 км; 2) 10*10=100 руб/100 км; 3) 9*11=99 руб/100 км. Что сложного? Стоимость на 100 км = стоимость 1л. * на расход количества литров на 100 км.
<span>program Metka; \\ Даем имя метке label M1;
</span> <span><span>\\ Даем имя переменной х </span>var x: shortint;
</span> <span><span>\\ Начало программы </span>begin
</span> <span><span>\\ Выводим текст с просьбой ввода числа </span>M1:writeln ('Введите x>100');
</span> <span><span>\\ Запрос на ввод числа </span>readln(x);
</span> <span><span>\\ Если введенное число <=100 то идем на М1 </span>if x<=100 then GOTO M1
</span> <span><span>\\ Конец программы </span>end.</span>
Два недочета 1) нет точки с запятой после <span>writeln ('x>100') 2) Неверное условие - должно быть <=, т.к. при х=100 условие х>100 не должно выполняться. </span>3) Желательно попросить ввести х>100 - слово Введите - не лишнее