Выведите натуральное число s — максимальную возможную площадь прямоугольника - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Составляем прямоугольник Ограничение времени 1 секунда Ограничение памяти 64Mb Ввод стандартный ввод или input.txt Вывод стандартный вывод или output.txt У Васи есть набор из 4 палочек, они имеют длины a, b, c, d. Вася хочет составить из них прямоугольник, однако он обнаружил, что это возможно сделать не для всех четверок a,b,c,d. Тогда он решил разрезать некоторые палочки на две части, одну из которых он выбросит, а другую использует как сторону прямоугольника. Помогите Васе сделать разрезы так, чтобы у него получился прямоугольник максимальной площади. Формат ввода В единственной строке заданы 4 натуральных числа a,b,c,d (1≤ a,b,c,d ≤ 99), разделенные пробелами — исходные длины палочек, имеющихся у Васи. Формат вывода В единственной строке выведите натуральное число s — максимальную возможную площадь прямоугольника, составленного Васей. Пример 1 Ввод Вывод 2 7 3 8 14 Пример 2 Ввод Вывод 2 2 3 3 6 Примечания В первом примере Вася может обрезать третью и четвертую палочки так, чтобы их длины стали 2 и 7 соответственно. Тогда он составит прямоугольник со сторонами 2 и 7, его площадь равна 14.
Листинг программы
  1. var
  2. a: array[1..5] of longint;
  3. g, i, n, Min, min9, Min2, Max, Max2: longint;
  4. t:text;
  5. r:boolean;
  6. begin
  7. r:=false;
  8. assign(t, 'input.txt');
  9. reset(t);
  10. for i := 1 to 4 do
  11. begin
  12. read(t,a[i]);
  13. end;
  14.  
  15. Min := A[1];
  16. Max := A[1];
  17. for N := 2 to 4 do
  18. begin
  19. if A[N] < Min then
  20. Min := A[N]
  21. else if A[N] > Max then
  22. Max := A[N];
  23. end;
  24. Min2 := A[1];
  25. Max2 := A[1];
  26. for N := 2 to 4 do
  27. begin
  28. if (A[N] > Max2) and (A[N] <> Max) then
  29. Max2 := A[N];
  30. end;
  31. g:=max2*min;
  32.  
  33. for i := 1 to 4 do
  34. begin
  35. if(a[i] = a[i + 1]) then
  36. if(a[i] > max2) then
  37. begin
  38. g := max * min;
  39. r:=false;
  40. end;
  41. end;
  42. assign(t, 'output.txt');
  43. rewrite(t);
  44. writeln(t,g);
  45. close(t);
  46. end.
В чем может быть ошибка?Помогите пожалуйста,спасибо!

Решение задачи: «Выведите натуральное число s — максимальную возможную площадь прямоугольника»

textual
Листинг программы
  1. var
  2.   a: array[1..4] of longint;
  3.   s: longint;
  4.   i,j:integer;
  5.   t:text;
  6. begin
  7.   assign(t, 'input.txt');
  8.   reset(t);
  9.   for i := 1 to 4 do
  10.   begin
  11.     read(t,a[i]);
  12.   end;
  13.  
  14.   for i:=1 to 3 do
  15.     for j:=i+1 to 4 do
  16.      if a[i]>a[j] then
  17.        begin s:=a[i]; a[i]:=a[j]; a[j]:=s end;
  18.  
  19.   s:=a[3]*a[1];
  20.  
  21.   assign(t, 'output.txt');
  22.   rewrite(t);
  23.  
  24.   writeln(t,s);
  25.   close(t);
  26. end.

Объяснение кода листинга программы

  1. Создается переменная a, которая представляет собой массив из 4 элементов типа longint.
  2. Создается переменная s, которая будет хранить максимальную возможную площадь прямоугольника.
  3. Создаются переменные i и j, которые будут использоваться для итерации по массиву a.
  4. Создается переменная t, которая представляет собой файл для записи.
  5. Задается начальное значение для переменной t.
  6. Запускается цикл for, который выполняется 4 раза (от 1 до 4).
  7. Внутри цикла for выполняется чтение каждого элемента из файла t и сохранение его в соответствующий элемент массива a.
  8. После завершения внутреннего цикла for начинается внешний цикл for.
  9. Внешний цикл for выполняется 3 раза (от 1 до 3).
  10. Внутри внешнего цикла for выполняется сравнение элементов массива a.
  11. Если текущий элемент a[i] больше текущего элемента a[j] (где i и j - это индексы массива), то присваивается переменной s значение текущего элемента a[i], а текущие элементы a[i] и a[j] меняются местами.
  12. После завершения внешнего цикла for присваивается значение переменной s переменной a[3]*a[1].
  13. Задается новое имя файла t - output.txt.
  14. Открывается файл t для записи.
  15. Выводится значение переменной s в файл t.
  16. Закрывается файл t.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.3 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы