АлiнаКукушкiна
06.03.2022 20:59

Фрагмент програми, який буде виконуватися одразу після настання події, яка може відбутися з формою, називають .​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
marien2
17.01.2023 19:20
Var
  u7, d7, v7, s7: array[1..7] of real;
  i: integer;
  s: real;

begin
  writeln('Вводите температуры за утро, день и вечер');
  s := 0;
  for i := 1 to 7 do
  begin
    write(i:1, ': ');
    readln(u7[i], d7[i], v7[i]);
    s7[i] := (u7[i] + d7[i] + v7[i]) / 3;
    s := s + s7[i]
  end;
  s := s / 7;
  writeln;
  writeln('Средние температуры по дням недели:');
  for i := 1 to 7 do
    write(s7[i]:0:1, ' ');
  writeln;
  writeln('Средняя температура за неделю: ', s:0:1)
end.

Тестовое решение:

Вводите температуры за утро, день и вечер
1: 19.6 24.8 17.3
2: 16.8 22.3 18.1
3: 15.9 24.2 19.0
4: 18.5 26.8 20.3
5: 19.2 25.6 21.7
6: 19.0 23.7 20.1
7: 18.8 23.9 19.5

Средние температуры по дням недели:
20.6 19.1 19.7 21.9 22.2 20.9 20.7
Средняя температура за неделю: 20.7
0,0(0 оценок)
Ответ:
nemo121212
16.02.2023 15:56
В целом программа рабочая, за исключением одного маленького блока, т.к. не могу прописать условие нормально:с Я указала комментарии к частям кода, в том числе и к тому самому блоку. Если кто знает, как его составить - отпишитесь:)

const n=5;
function prime(a:integer):boolean; //функция определяет, является ли число простым
var i,n:integer;
begin
prime:=false;
if (a<2) then exit;
if (not odd(a)) and (a<>2)
then exit;
for i:=3 to trunc(sqrt(a)) do
begin
if a mod i = 0 then exit;
inc(i,2);
end;
prime:=true;
end;

var a,b,c:array[1..n] of integer;
i,j,p,min,max:integer;

begin

for i:=1 to n do a[i]:=random(10); //заполняем массив
write('исходный массив: ');
for i:=1 to n do write(a[i]:5); //выводим массив на экран
writeln;
min:=a[1]; max:=a[1]; //ищем минимальное и максимальное значение
for i:=1 to n do
if (a[i]>max) then max:=a[i];
for i:=1 to n do
if (a[i]<min) then min:=a[i];
write('Минимальное: ',min,' Максимальное: ',max); //Выводим эти значения на экран
writeln;
for i:=1 to n do
if (prime(a[i])) or (a[i]=1) and (a[i]<>2) then //заполняем массив С простыми числами, которые (!) Входят в массив А
c[i]:=a[i];
write('Простые числа в массиве А: ');
for i:=1 to n do write(c[i]:5); //Выводим массив С на экран
writeln;

j:=min; //ВНИМАНИЕ!! Весь вопрос в этом небольшом блоке, заполнить массив В числами от min до max(которые уже найдены), не входящими в массив С
for i:=1 to n do begin
if (prime(j)) and (j<>c[i]) and (j<>2) then
b[i]:=j;
inc(j);
end;

for i:=n-1 downto 1 do begin //сортируем по возрастанию
for j:=1 to i do
if (b[j]>=b[j+1]) then begin
p:=b[i]; b[i]:=b[i+1]; b[i+1]:=p;
end;
end;
write('Искомый массив: ');
for i:=1 to n do write(b[i]:5); //Выводим массив В на экран
writeln;
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота