Вопрос задан 25.07.2018 в 14:09. Предмет Информатика. Спрашивает Онешко Ульяна.

С помощью Паскаля: 1.Заполните массив случайными числами в интервале [0;100] и подсчитайте отдельно

среднее значение всех элементов,которые меньше 50, и среднее значение всех элементов,которые больше или равны 50.2.Заполнить массив случайными числами в интервале [0;5]. Определить, есть ли в нем элементы с одинаковыми значениями,стоящие рядом.3. Заполнить массив случайными числами и выполнить реверс отдельно в первой половине и во второй половине.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Чанкветадзе Валерия.
1)
var
    a1, a2, b1, b2, c, i, n: integer;
    s: array [1..100] of integer;

begin
    read(n);
    for i := 1 to n do
    begin
        s[i] := random(100);
        if s[i] < 50 then
        begin
            a1 := a1 + s[i];
            a2 := a2 + 1;
        end;
        if s[i] >= 50 then
        begin
            b1 := b1 + s[i];
            b2 := b2 + 1;
        end;
        
    end;
    writeln(a1 / a2:0:3, ' ', b1 / b2:0:3);
end.

2)
var
    i, n: integer;
    f: boolean;
    s: array [1..100] of integer;

begin
    read(n);
    for i := 1 to n do
        s[i] := random(5);
    
    f := false;
    for i := 1 to n - 1 do
        f := f or (s[i] = s[i + 1]);
    
    writeln(f);
end.

3)
var
    k, t,  i, n: integer;
    s: array [1..100] of integer;

begin
    read(n);
    for i := 1 to n do
        s[i] := random(99);
//    Println(s);    
        
    k := n div 2;
    for i := 1 to k div 2 do
    begin
        t := s[i];
        s[i] := s[k + 1 - i];
        s[k + 1 - i] := t;
        
        t := s[i+k];
        s[i+k] := s[n + 1 - i];
        s[n + 1 - i] := t;
    end;
    
//    Println(s);
    for i := 1 to n do
        write(s[i], ' ');
end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Решение задачи с помощью Паскаля

Для выполнения задачи, я предлагаю использовать язык программирования Pascal. Давайте рассмотрим каждый пункт по очереди.

1. Заполнение массива случайными числами и подсчет средних значений: - Для заполнения массива случайными числами в интервале [0;100] и подсчета средних значений всех элементов, которые меньше 50, и всех элементов, которые больше или равны 50, можно использовать следующий код: ``` program RandomArray; var arr: array[1..10] of integer; // Массив из 10 элементов i, sumLess50, countLess50, sumMoreEqual50, countMoreEqual50: integer; avgLess50, avgMoreEqual50: real; begin sumLess50 := 0; countLess50 := 0; sumMoreEqual50 := 0; countMoreEqual50 := 0;

// Заполнение массива случайными числами в интервале [0;100] for i := 1 to 10 do begin arr[i] := random(101); // Генерация случайного числа от 0 до 100 if arr[i] < 50 then begin sumLess50 := sumLess50 + arr[i]; countLess50 := countLess50 + 1; end else begin sumMoreEqual50 := sumMoreEqual50 + arr[i]; countMoreEqual50 := countMoreEqual50 + 1; end; end;

// Подсчет средних значений avgLess50 := sumLess50 / countLess50; avgMoreEqual50 := sumMoreEqual50 / countMoreEqual50;

writeln('Среднее значение всех элементов, которые меньше 50: ', avgLess50:0:2); writeln('Среднее значение всех элементов, которые больше или равны 50: ', avgMoreEqual50:0:2); end. ```

2. Поиск одинаковых элементов в массиве: - Для определения наличия элементов с одинаковыми значениями, стоящими рядом в массиве случайных чисел в интервале [0;5], можно использовать следующий код: ``` program CheckAdjacentDuplicates; var arr: array[1..10] of integer; // Массив из 10 элементов i: integer; hasDuplicates: boolean; begin hasDuplicates := false;

// Заполнение массива случайными числами в интервале [0;5] for i := 1 to 10 do begin arr[i] := random(6); // Генерация случайного числа от 0 до 5 end;

// Поиск одинаковых элементов for i := 1 to 9 do begin if arr[i] = arr[i+1] then begin hasDuplicates := true; break; end; end;

if hasDuplicates then writeln('В массиве есть элементы с одинаковыми значениями, стоящими рядом.') else writeln('В массиве нет элементов с одинаковыми значениями, стоящими рядом.'); end. ```

3. Реверс отдельно в первой и второй половине массива: - Для выполнения реверса отдельно в первой и второй половине массива случайных чисел можно использовать следующий код: ``` program ReverseArrayHalves; var arr: array[1..10] of integer; // Массив из 10 элементов i, temp: integer; begin // Заполнение массива случайными числами for i := 1 to 10 do begin arr[i] := random(101); // Генерация случайного числа от 0 до 100 end;

// Реверс в первой половин

0 0

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

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

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