М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
vitalinaartikov
vitalinaartikov
31.12.2021 18:39 •  Информатика

Сделать на java Создать программу калькулятор площади и периметра встроенных геометрических фигур. Должны поддерживаться круг, прямоугольник и треугольник (три класса и общим родителем Figure, который должен быть абстрактным). В базовом классе Figure должны быть абстрактые функции getSquare() и getPerimeter(). Классы-наследники реализовывают эти функции, каждый по своему. Например у круга все зависит только от радиуса, которые является его private свойством. Все свойства классов наследников, как радиус или длины сторон (для треугольника это три длины сторон) передаются к конструкторы классов наследников, и в них не должно быть дефолтных конструкторов. Программа должна использовать полиморфизм, т.е. должна быть единная ссылка Figure f, в которой может находиться ссылка на круг, прямоугольник или треугольник. При запуске программа выводит меню:

Новая фигура

Вычислить площадь

Вычислить периметр

При выборе "Новая фигура", программа выводит меню с тремя фигурами:

Круг

Прямоугольник

Треугольник

Выбрав нужную категорию, программа просит ввести свойства этой фигуры, для круга - радиус, для прямоугольника - две стороны, для треугольника - три стороны. После чего возвращается на главное меню. При выборе "Вычислить площадь" или "Вычислить периметр" срабатывают функции f.getSquare() или f.getPerimeter() соответственно. Если же пользователь пытается их вычислить сразу после запуска программы не введя инфу о фигуре, предупредить его об этом. Программа не должна помнить предыдущие фигуры, только текущую.

👇
Открыть все ответы
Ответ:
12345Камила1
12345Камила1
31.12.2021
Var i,n,mn,mx: integer;
    a: array of integer;
begin
{ считать количество чисел n }
  write('n = ');  readln(n);
{ установить длину массива а n+1,
  массив динамический, нумерация с нуля}
    i:=1;  setlength(a,n+1);
  writeln('введите числа через пробел:   ');
{циклический ввод n чисел с клавиатуры}
    repeat 
       read(a[i]);
       i:=i+1;
   until i>n;
{ конец ввода }
{ начальные значения для максимума  и минимума  mn  mx  }
  mn:=a[1];  mx:=a[1];
{ цикл по элементам массива }
    for i:=1 to n do
    begin
{ если элемент массива больше текущего максимума,
  то в максимум записать текущий элемент }
      if a[i]>mx then mx:=a[i];
{ если элемент массива меньше текущего минимума,
  то в минимум записать текущий элемент }
      if a[i]<mn then mn:=a[i];
  end;
{ конец цикла }
   writeln('min = ',mn,'  max = ',mx);
   writeln('разница:   (max - min) = ',mx-mn);
end.
    
4,7(26 оценок)
Ответ:
// PascalABC.NET 3.1, сборка 1201 от 18.03.2016
begin
  var k:=0;
  var n:=ReadInteger();
  var nmax:=0;
  while n<>0 do begin
    Inc(k);
    if n mod 10 = 0 then
      if n>nmax then nmax:=n;
    n:=ReadInteger()  
    end;
  var cntrl:=ReadInteger();
  Writeln('Получено ',k,' чисел');
  Writeln('Полученное контрольное значение: ',cntrl);
  Writeln('Вычисленное контрольное значение: ',nmax);
  if cntrl=nmax then Writeln('Контроль пройден')
  else Writeln('Контроль не пройден')
end.

Тестовое решение:
53
16
40
9
10
32
74
0
40
Получено 7 чисел
Полученное контрольное значение: 40
Вычисленное контрольное значение: 40
Контроль пройден
4,6(87 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ