
Язык программирования Турбо Паскаль Дан массив А из n действительных чисел: a1, …, an.
Вычислить:a1, a1+a2, …, a1+a2+…+an; Заменить все элементы массива, большие семи, числом 7. Вычислить количество таких элементов.

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

i, j: integer;
arr: array of real;
s: real;
begin
readln(i);
SetLength(arr, i);
for i := 0 to length(arr) - 1 do
begin
arr[i] := random(5) + 6;
write(arr[i], ' ');
end;
writeln();
for i := 0 to length(arr) - 1 do
begin
s := 0;
write('a[0]..a[', i, '] => ');
for j := 0 to i do
s := s + arr[j];
writeln(s);
end;
writeln('===============================');
j := 0;
for i := 0 to length(arr) - 1 do
begin
if (arr[i] > 7) then
begin
arr[i] := 7;
j := j + 1;
end;
write(arr[i], ' ');
end;
writeln();
writeln(j);
end.



Вычисление суммы префиксов массива
Для вычисления суммы префиксов массива А из n действительных чисел a1, ..., an, можно использовать следующий алгоритм:
1. Создайте новый массив B такой же длины, как и массив А. 2. Инициализируйте первый элемент массива B значением a1. 3. Проходите по элементам массива А, начиная со второго элемента. 4. Для каждого элемента Ai массива А, присвойте элементу Bi массива B значение суммы предыдущего элемента Bi-1 и текущего элемента Ai. 5. После завершения цикла, массив B будет содержать суммы префиксов массива А.
Пример кода на языке программирования Turbo Pascal:
```pascal program CalculatePrefixSums; var A, B: array[1..n] of Real; i: Integer; begin { Ввод массива A } for i := 1 to n do begin Write('Введите элемент A[', i, ']: '); ReadLn(A[i]); end;
{ Вычисление суммы префиксов } B[1] := A[1]; for i := 2 to n do B[i] := B[i-1] + A[i];
{ Вывод массива B } for i := 1 to n do WriteLn('B[', i, '] = ', B[i]); end. ```
Замена элементов массива
Для замены всех элементов массива А, больших семи, числом 7, можно использовать следующий алгоритм:
1. Проходите по элементам массива А. 2. Если текущий элемент Ai больше семи, присвойте ему значение семь.
Пример кода на языке программирования Turbo Pascal:
```pascal program ReplaceElements; var A: array[1..n] of Real; i, count: Integer; begin { Ввод массива A } for i := 1 to n do begin Write('Введите элемент A[', i, ']: '); ReadLn(A[i]); end;
{ Замена элементов } count := 0; for i := 1 to n do begin if A[i] > 7 then begin A[i] := 7; count := count + 1; end; end;
{ Вывод массива A } for i := 1 to n do WriteLn('A[', i, '] = ', A[i]);
{ Вывод количества замененных элементов } WriteLn('Количество замененных элементов: ', count); end. ```
Примечание: В приведенных примерах кода используется переменная n, которая должна быть объявлена и инициализирована перед использованием.


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







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili