Вопрос задан 05.05.2019 в 05:16. Предмет Информатика. Спрашивает Бобыкина Алёна.

Дано пять чисел. Определить максимальное из них.Определить функцию, находящую максимум из двух

различных чисел. Мне нужно сделать эту задачу через процедуру и функцию. Я сделал для функции вот так: Var a:array[1..5]of integer; i,j,max:integer; function f(a,b:integer):integer; begin if a>b then result:=a else result:=b; end; begin for i:=1 to 5 do begin a[i]:=random(10); end; writeln; max:=a[1]; for i:=1 to 5 do for j:=i+1 to 5 do if f(a[i],a[j])>max then max:=f(a[i],a[j]); writeln('max=',max); end. А училка говорит что здесь массивы вообще не нужны, и то что функция у меня в задаче не используется. Вопрос как сделать так чтобы функция использовалась. Не могу понять как сделать по другому. ПОЖАЛУЙСТА ПОМОГИТЕ!
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Воробьева Лера.
Может так:
Vara:array[1..5]of integer;
a1,a2,a3,a4,a5,max:integer;
function f(a,b:integer):integer;
begin
if a>b then result:=a else result:=b;
end;
begin
a1:=random(10);
a2:=random(10);
a3:=random(10);
a4:=random(10);
a5:=random(10);
writeln(a1);
writeln(a2);
writeln(a3);
writeln(a4);
writeln(a5);
writeln;
max:=f(a1,a2);
max:=f(max,a3);
max:=f(max,a4);
max:=f(max,a5);
writeln('max=',max);
end.
0 0
Отвечает Лещенков Артём.
// PascalABC.Net 3.0, cборка 1052
var
  a: integer;
  i, j, max: integer;

function f(a, b: integer): integer;
begin
  if a > b then result := a else result := b
end;

begin
  Randomize;
  max:=-1;
  Write('Набор чисел: ');
  for i := 1 to 5 do
  begin
    a:= random(10);
    Write(a,' ');
    max:=f(max,a)
  end;
  Writeln(#13#10,'Максимальное число равно ',max)
end.

Тестовое решение:
Набор чисел: 6 8 5 1 2
Максимальное число равно 8


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Я могу помочь вам с вашей задачей по программированию на языке Pascal. Ваша функция для нахождения максимума из двух чисел верна, но вы не используете ее в основной программе. Вы можете сделать так, чтобы функция использовалась, если вы будете сравнивать каждое число из пяти с текущим максимумом и обновлять его при необходимости. Например, вы можете написать такой код:

Var a: array[1..5] of integer; i, max: integer; function f(a, b: integer): integer; begin if a > b then result := a else result := b; end; begin for i := 1 to 5 do begin a[i] := random(10); write(a[i], ' '); end; writeln; max := a[1]; for i := 2 to 5 do max := f(max, a[i]); writeln('max = ', max); end.

Этот код сначала заполняет массив пятью случайными числами от 0 до 9 и выводит их на экран. Затем он инициализирует переменную max первым элементом массива и затем перебирает остальные элементы, вызывая функцию f для сравнения каждого элемента с max и присваивая max большее из двух значений. В конце он выводит значение max на экран. Это решение использует функцию f, которую вы написали, и не требует вложенных циклов или дополнительных переменных.

Надеюсь, это поможет вам понять, как решить вашу задачу. Если у вас есть еще вопросы, я рад помочь.

0 0

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

Последние заданные вопросы в категории Информатика

Задать вопрос