Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Задача в Делфи. Вероятно, не сложная.

Валерия Литвинюк Знаток (433), закрыт 13 лет назад
Дана длина ребра куба. Найти объём куба и площадь его боковой поверхности.
Не получается никак сделать. Как бы ни старалась - все равно ошибку выдает. Помогите пожалуйста.
Дополнен 13 лет назад
Прописываю как в школе показывали, вот такая ерунда. В ступоре.
Дополнен 13 лет назад
Я информатику не понимаю. По шаблону перепечатала с тетради. Всегда так получалось, а сейчас....
Лучший ответ
1 1 Мудрец (11688) 13 лет назад
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
dlina_t: TLabel;
dlina: TEdit;
obiem_t: TLabel;
plosh_t: TLabel;
plosh_p_t: TLabel;
Podchet: TButton;
Ochist: TButton;
Vixod: TButton;
obiem: TLabel;
plosh_b: TLabel;
plosh_p: TLabel;
procedure OchistClick(Sender: TObject);
procedure VixodClick(Sender: TObject);
procedure PodchetClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.OchistClick(Sender: TObject);
begin
dlina.Text:='';
obiem.Caption:='';
plosh_b.Caption:='';
plosh_p.Caption:='';
end;

procedure TForm1.VixodClick(Sender: TObject);
begin
Form1.Close;
exit;
end;

procedure TForm1.PodchetClick(Sender: TObject);
var
dlin:real;
ob:real;
plo_b:real;
plo_p:real;
begin
dlin:=StrToFloat(dlina.Text);
ob:=exp(3*ln(dlin));
plo_b:=4*sqr(dlin);
plo_p:=6*sqr(dlin);
obiem.Caption:=FloatToStrF(ob,ffGeneral,15,8);
plosh_b.Caption:=FloatToStrF(plo_b,ffGeneral,15,8);
plosh_p.Caption:=FloatToStrF(plo_p,ffGeneral,15,8);
end;

end.

Результат работы программы:



Остальные ответы
Николай Просветленный (35616) 13 лет назад
текст ошибки в студию и если кликнуть по строке ошибки на какую строку текста выкидывает программа и весь текст тоже в студию
Svenc Мастер (1018) 13 лет назад
наверное ошибка в голове.... ты бы листинг кода кинула...
Аццкий скорпиончег Просветленный (23539) 13 лет назад
Во-первых, в Edit1.Text хранится текст, логично.. . Значит, использовать нужно IntToStr, а не StrToInt...

Но! У вас переменная А имеет вещественный тип, т. е. применять нужно FloatToStr...
Владислав Симкин Гуру (3776) 13 лет назад
я вродебы код вижу.. . и вижу что нужно было писать так
a:=STRtoFLOAT(edit1.text);

а вы все наоборот и еще переводите в цнлый тип якобы строку (а на самом деле вещественное число - a)
и все бы хорошо, да свойство text, компонента edit1 - строковый тип
вот отсюда и ошибка

и еще я бы не использовал операцию edit1.change

могу помогать.. . обращайся в агент
Источник: опыт
Евгений Ломега Оракул (68031) 13 лет назад
Вам надо переменной a присвоить значение, а не наоборот
a := StrToInt(Edit1.Text);

a надо объявить как глобальную
Похожие вопросы