kategar
?>

Ввести одномерный массив из n вещественных чисел в диапазоне от -10 до + 10. вывести массив на экран. вычислить среднее арифметическое квадратов отрицательных чисел, положительные элементы заменить значениями их индексов. вывести массив на экран. отсортировать получившиеся массив и вывести его на экран

Информатика

Ответы

marketing601

const n=10;

var a:array [1..n] of real;

i,j,k:integer;

s,v:real;

begin

write(' Исходный массив: ');

for i:=1 to n do

begin

a[i]:=random*20-10;

write(a[i]:7:2);

if a[i]<0 then

begin

s:=s+a[i]*a[i];

k:=k+1

end;

if a[i]>0 then a[i]:=i

end;

writeln;

write('Преобразованый массив: ');

for i:=1 to n do write(a[i]:7:2);

writeln;

for i:=1 to n do

for j:=1 to n-i do

if a[j]>a[j+1] then

begin

v:=a[j];

a[j]:=a[j+1];

a[j+1]:=v

end;

write('Отсортированый массив: ');

for i:=1 to n do write(a[i]:7:2);

writeln;

writeln('Среднее арифметическое квадратов отрицательных чисел равно ',s/k:0:2);

end.

Сухроб944
1) Независимо от условия будет выполнен оператор присваивания.
a:=b
2) Условие ложное, значит будет выполнен оператор после else
write('b')
3) Условие истинное, значит будет выполнен оператор после then
write('a')
4) Функции операторов присваивания одинаковы, значит не зависят от условия (a + b - 14 = b - 14 + a)
a := a + b - 14
5) Оператор a := a практически ничего не изменяет, значит можно избавится от него
if a<b then a:=b
6) То же самое, что и в пункте 5, только нужно поменять истину на ложь
if not(a>b) then a:=b
7) Остаток деления на 2 не может быть равен трем, значит условие всегда ложно. Else нет, значит условный оператор можно смело откинуть
8) Остаток от деления на может быть равен или 0 или 1, значит в любом случае условие истинно. Первый условный оператор можно смело откинуть, но вложеннный остается!
if a<0 then a:=-a
9) Если a отрицательное, тогда b = a, то есть тоже отрицательно. Если a неотрицательное, тогда b = -a, то есть b отрицательное. Можно записать как модуль числа a, умноженный на -1
b := -abs(a)
kukoleva
Прежде всего нужно определить остаток от деления исходно числа на 3. для этого, т.к. у вас будет строка вам нужно посчитать сумму отдельных символов строки и взять остаток суммы от деления на 3. Если этот остаток равен  :
А) 0, то нужно увеличить любую цифру числа на 3 или 6 или 9 и нужно изменить 1 цифру так, что бы остаток от деления на 3 не изменился. 
Б) 1, то одну цифру числа нужно увеличить на 2 или 5
В) 3, то на 1 или 4 или 7
Для того чтобы число было макс. большим нужно брать максимально левую цифру для увеличения.
Ну, как-то так

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Ввести одномерный массив из n вещественных чисел в диапазоне от -10 до + 10. вывести массив на экран. вычислить среднее арифметическое квадратов отрицательных чисел, положительные элементы заменить значениями их индексов. вывести массив на экран. отсортировать получившиеся массив и вывести его на экран
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Igorevich1559
Abdulganieva1367
astenSA
Tomilova1686
ekaterinaorl1998
Белов_Лукина1339
Рудаков Бахтовар
deputy810
Vlad Petr531
dimari81
Zebra198383
Шиловский126
alaevluka77
Kelena190533
Yevgeniya Bessonov