![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() задание было такое:
![]() все считалось хорошо, когда u, r, z, k были числами проде 3, 1.5 и тп но задание требует R=55mod7+4 после ввода этих значений начались проблемы. точнее все сломалось по сути. пытался исправить с помощью констант - не помогло. помогите, пожалуйста. я сегодня первый раз вообще чем-то подобным занялся, просидел 6 часов за пк, все понял, практически, кроме того, что делать с числами mov и div вот мой код Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) lbl1: TLabel; lbl2: TLabel; edt1: TEdit; edt2: TEdit; btn1: TButton; lbl3: TLabel; btn2: TButton; lbl4: TLabel; procedure FormCreate(Sender: TObject); procedure btn1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; x, y : Real; a, b : string; implementation {$R *.dfm} const z = '0,512'; k = 3; U = '43 - 13dir3'; R = '55mod7 + 4'; procedure TForm1.FormCreate(Sender: TObject); begin Edt1.Text:='0,512'; Edt2.Text:='3'; lbl1.Caption:='x='; lbl2.Caption:='y='; btn1.Caption:='Ïîñ÷èòàòü'; btn2.Caption:='Ïîñ÷èòàòü'; lbl3.Caption:='0'; lbl4.Caption:='0'; end; procedure TForm1.btn1Click(Sender: TObject); begin x:= StrToFloat(edt1.text); y:= StrToFloat(edt2.text); a:= (u*x/(r+3)+5)/abs(R-y/k); b:= (Sin(z+U))/(2,46+a*R) + power(r; 5)/(25*k); lbl3.Caption:=FloatToStr(a); lbl4.Caption:=FloatToStr(b); end; end. |
#2
|
||||
|
||||
![]() Гхм. У тебя почти все переменные - строки. А теперь возьми листок, ручку, напиши слова "Привет" и "Мир" и попробуй поделить одно на другое. Или умножить, взять синус от какого-нибудь из них, возвести в степень. Получится? А компьютер пытаешься заставить это сделать.
Переменные должны быть числами для арифметических операций. В задании написаны арифметические выражения, которые надо посчитать. Для справки: div и mod - это целочисленное деление и остаток от деления, а не константы. jmp $ ; Happy End! The Cake Is A Lie. Последний раз редактировалось Bargest, 08.09.2012 в 21:46. |
#3
|
|||
|
|||
![]() я же пишу, что до этого переменные были числами. и были записаны не в виде констант.
тогда задам свой вопрос проще: как мне записать и где z, k, U и R??? |
#4
|
|||
|
|||
![]() объявить, там же, где объявлены x,y
присвоить им значения, там же, где вычисляются x,y >woweook< |
#5
|
|||
|
|||
![]() R: = '55mod7 + 4';
так? но именно после этого, вроде как, у меня перестало все работать ![]() |
#6
|
||||
|
||||
![]() Код:
R := 55 mod 7 + 4; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
sycva (09.09.2012)
|
#7
|
|||
|
|||
![]() Цитата:
Так: Код:
var R : Integer; begin R := (55 mod 7) + 4; ЗЫ. Упс... уже опередили ![]() |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
sycva (09.09.2012)
|
#8
|
||||
|
||||
![]() Во-первых: Вы не правильно объявили константы. Нужно так:
Код:
const z = 0.512; k = 3; U = 43 - 13 div 3; R = 55 mod 7 + 4; В третьих: в строке Код:
b:= (Sin(z+U))/(2,46+a*R) + power(r; 5)/(25*k); P.S.: как много народу стало :-) Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете. |
Этот пользователь сказал Спасибо Kailon за это полезное сообщение: | ||
sycva (09.09.2012)
|