while (x> =1) and (x< =80) and (y> =1) and (y< =25) do begin
gotoxy(x,y);
write('0');
delay(60);
if keypressed then begin
ch : = readkey;
case ch of
'd': begin vx: =1; vy: =0 end;
'a': begin vx: =-1; vy: =0 end;
'w': begin vx: =0; vy: =-1 end;
's': begin vx: =0; vy: =1 end;
end;
end;
gotoxy(x,y);
write(' ');
inc(x,vx);
inc(y,vy);
end;
end.
soclive7762
25.09.2022
У вас не указано, над каким именно массивом нужно производить вышеописанное действие, поэтому я выкладываю общее решение. Предположим, что a - это массив с какими-то сохранёнными числами до a[n]
for i:=1 to n do if a[i] > 0 then begin k:=k+1; sum:=sum+a[i] end; average:=sum/k;
(a - данный массив, sum - сумма всех положительных чисел, k - количество положительных чисел - n - индекс последнего элемента массива, i - переменная для цикла, average - переменная, сохраняющая численное значение) Запускаем цикл от 1 до n и перебираем все числа массива. Если i-тое число положительно, мы прибавляем его к sum, и увеличиваем k на 1, который сохраняет в себе количество положительных чисел массива. После завершения цикла, мы получаем k - количество положительных чисел, sum - сумма всех положительных чисел. Чтобы найти среднее арифметическое, делим сумму всех чисел на их количество. (Учитывайте, что переменная, сохраняющая среднее арифметическое должна иметь вещественный тип (real, double...)) Вот и всё. Если у вас возникают какие-то проблемы или ошибки в коде - оставьте комментарий. Если у вас проблемы с созданием массива (чтение массива с клавиатуры или создание массива со случайными числами) - опять же таки пишите:)
Станислав Валерий1696
25.09.2022
Решение данной задачи для n-го кол-ва элементов(если надо 3, то просто присвой n=3) на языке C/C++ :
#include <iostream> using namespace std; int main() { int n; // обьявление переменной под размер миссива cin>>n; // или n=3, если тебе надо всего 3 элемента ввести int mas[n]; // обьявление массива for(int i=0;i<n;i++) cin>>mas[i]; // занесение элементов в массив int sum=0, count=0; // переменная под сумму положительных и их кол-во for(int i=0;i<n;i++) { if(mas[i]>0) { sum+=mas[i]; count++; } cout<<sum/count; // вывод результата через формулу сумма/кол-во return 0; }
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Кто знает как сделать игру "змейка" в паскалекиньте программу заранее
ответ:
uses crt;
var
x,y,vx,vy: integer;
ch: char;
begin
clrscr;
x : = 1;
y : = 25 div 2;
while (x> =1) and (x< =80) and (y> =1) and (y< =25) do begin
gotoxy(x,y);
write('0');
delay(60);
if keypressed then begin
ch : = readkey;
case ch of
'd': begin vx: =1; vy: =0 end;
'a': begin vx: =-1; vy: =0 end;
'w': begin vx: =0; vy: =-1 end;
's': begin vx: =0; vy: =1 end;
end;
end;
gotoxy(x,y);
write(' ');
inc(x,vx);
inc(y,vy);
end;
end.