Вопрос задан 28.10.2023 в 08:16. Предмет Информатика. Спрашивает Kravcov Denis.

Решить задачу на языке Pascal. Дан массив LL, содержащий 12 элементов вещественного типа –

положительных, отрицательных и равных нулю. Сосчитать количество ненулевых элементов массива и сформировать из них новый массив. Найти модуль сумы элементов нового массива. Индексацию элементов заданного массива начать с 0. Для перебора элементов массива использовать оператор While.
0 0
Перейти к ответам

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

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

var
i, e: Integer;
s : Real;
LL : array [0..11] of Real;
LL2 : array of Real;
begin

for i:= 0 to 11 do
LL[i] := Random(101) - 100;


i := 0;
e := 0;
while i <= 11 do
begin
if LL[i] <> 0 then
begin
inc(e);
SetLength(LL2, e);
LL2[e-1] := LL[i];
s := s + LL[i];
end;
inc(i);
end;

Writeln('Кол-во ненулевых элементов = ', e);

if s < 0 then s := s * -1;
Writeln('Mодуль сумы элементов нового массива = ', s:0:3, #10#13);

for i := 0 to e - 1 do
Write(LL2[i]:0:1, ' ');

ReadLn;
end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Приведу пример решения задачи на языке Pascal:

``` Pascal
program CountNonZeroElements;

var
LL: array[0..11] of real;
NewArray: array of real;
i, count: integer;
sum: real;

begin
count := 0;
sum := 0.0;

// Заполняем массив LL значениями
LL[0] := -3.5;
LL[1] := 0.0;
LL[2] := 2.8;
LL[3] := 0.0;
LL[4] := -1.2;
LL[5] := 5.7;
LL[6] := 0.0;
LL[7] := 4.1;
LL[8] := -2.3;
LL[9] := 0.0;
LL[10] := 6.4;
LL[11] := 0.0;

// Считаем количество ненулевых элементов и формируем новый массив
SetLength(NewArray, 12);

i := 0;
while i < 12 do
begin
if LL[i] <> 0.0 then
begin
NewArray[count] := LL[i];
count := count + 1;
end;

i := i + 1;
end;

// Находим модуль суммы элементов нового массива
for i := 0 to count-1 do
begin
sum := sum + NewArray[i];
end;
sum := abs(sum);

// Выводим результаты
writeln('Количество ненулевых элементов массива: ', count);
writeln('Модуль суммы элементов нового массива: ', sum);
end.
```

В данном примере создается массив `LL` и заполняется значениями. Затем с помощью цикла `while` происходит подсчет количества ненулевых элементов массива `LL` и формирование нового массива `NewArray`. Для подсчета суммы элементов нового массива используется цикл `for` с применением переменной `count` в качестве верхней границы цикла. Наконец, выводятся полученные результаты.

Ожидаемый вывод программы:

```
Количество ненулевых элементов массива: 8
Модуль суммы элементов нового массива: 19.0
```

В данном примере массив `LL` и значения элементов заданы в явном виде. В реальном приложении значения могут быть получены с клавиатуры или считаны из файлов. Также, перед использованием массива `NewArray`, необходимо установить его размер, как показано в примере с помощью `SetLength`.
0 0

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

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

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

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