// PascalABC.NET 3.3, сборка 1573 от 04.11.2017 // Внимание! Если программа не работает, обновите версию!
begin var a:=ArrRandom(20,-99,99); a.Println; var (imin,imax):=(a.IndexMin,a.IndexMax); Writeln('Минимальный элемент ',a[imin],', максимальный ',a[imax]); Swap(a[imin],a[imax]); a.Println; // меняем местами max и min Swap(a[0],a[a.Length-1]); a.Println // меняем местами крайние end.
В общем случае, трассировка - один из отладки программ врукопашную: состояние программы контролируется на определённом отрезке времени её выполнения путём анализа значений переменных. трассировка в том или ином виде при отладке программ сложнее школьного дз практически неизбежна. в простейшем случае, трассировка - вывод значений переменных на экран (например, в окно консоли) , либо расчёт их на бумажке для каждого шага. в более продвинутом варианте используются точки останова, окно наблюдения, выполнение по шагам и, если есть, контекстный интерпретатор выражений. есть также специальная "трассирующая консоль" - интерфейс вывода информации из программы в отладчик, если таковой присутствует. почти любой современный отладчик показывает состояние програмm при её останове, что делает трассировку процессом легко доступным
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(20,-99,99); a.Println;
var (imin,imax):=(a.IndexMin,a.IndexMax);
Writeln('Минимальный элемент ',a[imin],', максимальный ',a[imax]);
Swap(a[imin],a[imax]); a.Println; // меняем местами max и min
Swap(a[0],a[a.Length-1]); a.Println // меняем местами крайние
end.
Пример
-45 78 -68 -89 -95 39 55 54 46 69 4 -36 -81 61 47 -76 0 -35 65 -47
Минимальный элемент -95, максимальный 78
-45 -95 -68 -89 78 39 55 54 46 69 4 -36 -81 61 47 -76 0 -35 65 -47
-47 -95 -68 -89 78 39 55 54 46 69 4 -36 -81 61 47 -76 0 -35 65 -45
в простейшем случае, трассировка - вывод значений переменных на экран (например, в окно консоли) , либо расчёт их на бумажке для каждого шага.
в более продвинутом варианте используются точки останова, окно наблюдения, выполнение по шагам и, если есть, контекстный интерпретатор выражений.
есть также специальная "трассирующая консоль" - интерфейс вывода информации из программы в отладчик, если таковой присутствует.
почти любой современный отладчик показывает состояние програмm при её останове, что делает трассировку процессом легко доступным