Помощь - Поиск - Пользователи - Календарь
Полная версия: Записи с вариантной частью..
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Гелла
Подскажите пожалста как найти площадь прямоугольника трапеции и параллелограмма пр помощи записей с вариантной частью( как я понимаю case of)
Буду очень благодарна вам....
volvo
Именно найти площадь при помощи записей ты не сможешь, записи с вариантной частью тебе здесь нужны только для того, чтобы задать необходимую фигуру... Просто определи данные, которые необходимы для описания каждой из этих фигур, и опиши нужные поля:
Type
  TFigure = (fPr, fTrap, fPara);
  Rec = Record
  Case TFigure of
    fPr: (); { <- Здесь... }
    fTrap: (); { <- ... здесь ... }
    fPara: (); { <- и здесь }
  End;

И потом работай с этой записью...
Lapp
Ты правильно понимаешь, запись с вариантами - это "case ... of". Сначала создаешь запись для хранения данных о фигуре, а потом эту запись можно использовать для вычисления хоть площади, хоть периметра, хоть центра тяжести, хоть еще Бог знает чего. Сама по себе запись конструируется примерно так..

type
  tWhat = (Triangle, Trapeze, Parallelogram);
  tFigure = record case of What of
    Triangle: (a,b,c:real);
    Trapeze: (a,b,c,d:real);
    Parallelogram: (a,b,c,d,Alpha:real);
  end;

var
  Figure: tFigure;

procedure Square(Fig:tFigure);
begin
  with Fig do begin
    case What of
      Triangle: Square:= {тут вставляешь формулу Герона};
      Trapeze: Square:= {выичсляешь площадь трапеции};
      Parallelogram: Square:= {вычисляешь площадь парадллелограмма};
    end
  end
end

begin
  ...
  S:=Square(Figure);
  ...
end.

volvo
Ну, спасибо, lapp... То есть, человеку, задающему вопрос ДУМАТЬ - просто незачем, правда? dry.gif
Lapp
Если хочет думать - задумается.
Ну, может, я перебрал, но совсем немного. Программирование на конкретном языке - это не совсем наука. Точная запись конструкции экономит много времени, а логически все равно ни до чего не додумаешься. Заметь, ей все рано придется поработать - вставить формулы, а также вставить этот кусок во всю программу. Она умница, она запомнит smile.gif.
Может, в идеале надо было бы просто отослать к учебнику.. У каждого свой уровень разжеванности объяснений. Видимо, наши с тобой не совпадают smile.gif.

PS
а твоего ответа я не видел, когда отвечал, извини уж smile.gif
Гелла
Цитата
Она умница, она запомнит .
Может, в идеале надо было бы просто отослать к учебнику.. У каждого свой уровень разжеванности объяснений. .


rolleyes.gif спасибо большое...что не отослал к учебнику..

{тут вставляешь формулу Герона};

Это для треугольника по моему..а для прямоугольника просто произведение смежных сторон...
Altair
lapp, Гелла, обсуждение умниц и отсыланий к учебнику оставьте для свободного и лички.
все необходимое было сказанно.
закрыто.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.