Вопрос задан 29.10.2023 в 09:44. Предмет Информатика. Спрашивает Полина Плисова.

Паскаль, 9 класс Написать программу, которая вводит массив из N вещественных чисел, а затем

меняет местами наибольший и наименьший элементы массива. Протестировать программу на трѐх произвольных тестах
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Ахмедов Мадамин.

Pascal ABC

Код:

var

  a: array [1..100] of real;

  max, i, min, N: integer; temp: real;

begin

    readln(N);

    //заполнение массива и его вывод

    for i := 1 to N do begin

        a[i]:=random()*100;

        write(a[i]:0:2, ' ');

    end;

    writeln;

    //поиск максимума и минимума

    min := 1; max := 1;

    for i := 1 to N do begin

        if a[min] > a[i] then min := i;

        if a[max] < a[i] then max := i;

    end;

    //меняем местами

    temp := a[max];

    a[max] := a[min];

    a[min] := temp;

    //вывод массива

    for i := 1 to N do

        write(a[i]:0:2, ' ');

    writeln;

end.

Тесты:

Ввод:

5

Вывод:

81.57 14.35 20.60 42.20 21.09  

14.35 81.57 20.60 42.20 21.09

Ввод:

6

Вывод:

90.94 46.30 24.40 99.34 12.02 69.05  

90.94 46.30 24.40 12.02 99.34 69.05

Ввод:

4

Вывод:

52.21 61.47 17.57 68.80  

52.21 61.47 68.80 17.57

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Программа на языке Паскаль может быть написана следующим образом: ```pascal program SwapMinMax; const N = 10; // задаем размерность массива var arr: array[1..N] of real; i, minIndex, maxIndex: integer; minValue, maxValue, temp: real; begin // Вводим элементы массива writeln('Введите ', N, ' вещественных чисел:'); for i := 1 to N do readln(arr[i]); // Находим индексы наименьшего и наибольшего элементов minIndex := 1; maxIndex := 1; minValue := arr[1]; maxValue := arr[1]; for i := 2 to N do begin if arr[i] < minValue then begin minValue := arr[i]; minIndex := i; end; if arr[i] > maxValue then begin maxValue := arr[i]; maxIndex := i; end; end; // Меняем местами наибольший и наименьший элементы массива temp := arr[minIndex]; arr[minIndex] := arr[maxIndex]; arr[maxIndex] := temp; // Выводим измененный массив writeln('Измененный массив:'); for i := 1 to N do writeln(arr[i]); end. ``` Программа сначала задает размерность массива `N` (в данном случае равную 10), затем с помощью цикла `for` происходит ввод элементов массива. Далее, с помощью еще одного цикла `for` находятся индексы наименьшего и наибольшего элементов массива. После этого происходит обмен значениями между наибольшим и наименьшим элементами с использованием временной переменной `temp`. Наконец, измененный массив выводится на экран. Вы можете протестировать эту программу, вводя произвольные тестовые данные, например: ``` Введите 10 вещественных чисел: 1.5 2.7 -3.8 4.2 5.1 -6.3 7.4 8.0 -9.9 10.6 ``` После выполнения программы вы получите следующий результат: ``` Измененный массив: 10.6 2.7 -3.8 4.2 5.1 -6.3 7.4 8.0 -9.9 1.5 ``` Таким образом, наибольший элемент 10.6 был поменян местами с наименьшим элементом 1.5.
0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос