Предмет: Информатика,
автор: Dota2345
Очень нужна помощь умных ребят и девчонок, шарящих в программировании Паскаль, может для вас задания покажутся легкими, но я после создания массива
просто залипла.
1. Дан одномерный массив Z, состоящий из 30 элементов, полученный случайным образом. Найти сумму значений элементов, которые меньше полусуммы наименьшего и наибольшего значений элементов данного массива.
2.Вычислить Z=(S+max)/3, где S-сумма положительных элементов массива, max-наибольший элемент.
Помогите, буду ооочень благодарна
Го активней, пожалуйста, на завтра нужно
Ответы
Автор ответа:
3
1) var z:array[1..30] of integer; i,max,min,s:integer;
begin
for i:=1 to 30 do
z[i]:=random(100);
max:=z[1];min:=z[1];
for i:=1 to 30 do
if z[i]>max then max:=z[i];
for i:=1 to 30 do
if z[i]<min then min:=z[i];
for i:=1 to 30 do
if z[i]<((max+min)/2) then s:=s+z[i];
write('S= ',s);
end.
2)var m:array[1..30] of integer; i,max,s:integer; z:real;
begin
for i:=1 to 30 do m[i]:=random(100);
max:=m[1];
for i:=1 to 30 do
if m[i]>max then max:=m[i];
for i:=1 to 30 do
if m[i]>0 then s:=s+m[i];
z:=(S+max)/3;
write('Z= ',z:0:0);
end.
begin
for i:=1 to 30 do
z[i]:=random(100);
max:=z[1];min:=z[1];
for i:=1 to 30 do
if z[i]>max then max:=z[i];
for i:=1 to 30 do
if z[i]<min then min:=z[i];
for i:=1 to 30 do
if z[i]<((max+min)/2) then s:=s+z[i];
write('S= ',s);
end.
2)var m:array[1..30] of integer; i,max,s:integer; z:real;
begin
for i:=1 to 30 do m[i]:=random(100);
max:=m[1];
for i:=1 to 30 do
if m[i]>max then max:=m[i];
for i:=1 to 30 do
if m[i]>0 then s:=s+m[i];
z:=(S+max)/3;
write('Z= ',z:0:0);
end.
Dota2345:
Ты мой спаситель!! Большое спасибо))
Похожие вопросы
Предмет: Английский язык,
автор: Аноним
Предмет: Русский язык,
автор: lkjhgsdfskl
Предмет: Немецкий язык,
автор: LeraVeter
Предмет: Другие предметы,
автор: karolka23
Предмет: Математика,
автор: elchinef