Текущий архив: 2008.05.25;
Скачать: CL | DM;
Вниз
Цикл Найти похожие ветки
← →
holodok (2008-05-02 12:43) [0]Доброе время суток! Подскажите, плиз - изначально задается некий диапазон, к примеру 280-288. Программа должна перебрать все эти 8 значений и для каждого вычислить по определенной формуле значение x. К сожалению, не обладаю глубокими знаниями в этой области, а решить задачу очень надо!
← →
Игорь Шевченко © (2008-05-02 12:47) [1]Книгу по паскалю почитать не судьба ?
← →
Kolan © (2008-05-02 12:52) [2]
var
I: Integer;
begin
for I := 280 to 288 do
<для каждого вычислить по определенной формуле значение x>
end;
← →
Palladin © (2008-05-02 13:05) [3]
> Игорь Шевченко © (02.05.08 12:47) [1]
ныне это не модно...
← →
holodok (2008-05-02 13:06) [4]большое спасибо!
а если значение x - числа того же самого диапазона от 280 до 288, тогда как?
← →
Anatoly Podgoretsky © (2008-05-02 13:11) [5]А какой из девяти она не должна трогать?
← →
holodok (2008-05-02 13:17) [6]Просто вот что у меня получается:
a:=strtoint(Edit1.Text);
b:=strtoint(Edit2.Text);
for i := a to b do
begin
y:=0.0095*48*sqrt( )-0.0035;
Form2.StringGrid3.Cells[0,i]:=floattostr(y[i]);
end;
в скобках после корня должны быть по очереди все значения от а до b...
Был бы очень признателен, если бы вы мне подсказали как как именно это написать!
← →
Kolan © (2008-05-02 13:24) [7]y:=0.0095*48*sqrt(I)-0.0035;
← →
holodok (2008-05-02 13:43) [8]Спасибо!
Только компилятор ругается на эту строчку:
Project Project.exe raised exception class EAccessViolation with message "Access Violation at adress ....... in module Project Project.exe". Process stoped...
Не подскажете, что нужно?
← →
Игорь Шевченко © (2008-05-02 13:52) [9]
> Только компилятор ругается на эту строчку:
Больно слышать
← →
holodok (2008-05-02 13:54) [10]Я же сказал - знания в этой области оставляют желать лучшего...
Спасибо за помощь
← →
{RASkov} © (2008-05-02 13:56) [11]> [8] holodok (02.05.08 13:43)
> Только компилятор ругается на эту строчку:
И правильно делает. В виду того, что в
> [6] holodok (02.05.08 13:17)
не код, а сплошная ошибка....
← →
{RASkov} © (2008-05-02 13:56) [12]> [10] holodok (02.05.08 13:54)
> Я же сказал - знания в этой области оставляют желать лучшего...
Это дело, надеюсь, попровимое?
← →
Kolan © (2008-05-02 13:58) [13]> Я же сказал — знания в этой области оставляют желать лучшего…
Не, все, иду читай:
http://www.ksoftware.ru/files/books/Delphi/Delphi5_DevelopersGuide_Volume_1(rus).pdf
← →
holodok (2008-05-02 14:02) [14]И ведь пошел читать-то...Тока ссылка не рабочая... :(
← →
Kolan © (2008-05-02 14:04) [15]> И ведь пошел читать-то…Тока ссылка не рабочая… :(
Скопируй её целиком
← →
Anatoly Podgoretsky © (2008-05-02 14:04) [16]Мы еще и Интернетом не умеем пользоваться.
Ссылка рабочая.
← →
Anatoly Podgoretsky © (2008-05-02 14:05) [17]
> Скопируй её целиком
А это как, где об этом можно прочитать?
← →
Kolan © (2008-05-02 14:07) [18]> А это как, где об этом можно прочитать?
В исходниких кривого алгоритма поиска ссылок на форуме?
← →
holodok (2008-05-02 14:15) [19]Спасибо. Почитал, исправил кое-какие ошибки, получилось это:
procedure TForm1.N2Click(Sender: TObject);
Var a,b:integer;
i:integer;
y:array[0..50] of double;
begin
a:=strtoint(Edit1.Text);
b:=strtoint(Edit2.Text);
for i := a to b do
begin
y[i]:=0.0095*48*sqrt(i)-0.0035;
Form2.StringGrid1.Cells[0,i]:=floattostr(y[i]);
end;
end;
Результат такой же. Если не сложно, намекните почему
> не код, а сплошная ошибка....
← →
Плохиш © (2008-05-02 14:46) [20]
> Если не сложно, намекните почему
Намекаю, обращения по ссылке неизвестно куда.
PS. Нафига оно тебе это программирование нужно?
← →
Anatoly Podgoretsky © (2008-05-02 16:10) [21]> Плохиш (02.05.2008 14:46:20) [20]
Ты что, там же такие бабки можно зарабатывать, даже пальцем шевелить не нужно.
← →
{RASkov} © (2008-05-02 17:02) [22]> [19] holodok (02.05.08 14:15)
> Результат такой же. Если не сложно, намекните почему
Введи в Эдит1 значение "1", а во второй эдит - "4"
Тыж не менял свойства стринггрида в ИО и в программе, так ведь?
← →
Игорь Шевченко © (2008-05-02 17:19) [23]
> a:=strtoint(Edit1.Text);
> b:=strtoint(Edit2.Text);
>
> for i := a to b do
> begin
> y[i]:=0.0095*48*sqrt(i)-0.0035;
А это не страшно, что массив объявлен от нуля до 50, а обращение к нему идет по введенным индексам, которые необязательно от нуля до 50 ?
← →
{RASkov} © (2008-05-02 17:32) [24]По уму наверное все-таки это должно выглядеть нечто так:
var A, B, N: Integer;
* ArrVal: array of Extended;
begin
try
A:=StrToInt(Edit1.Text);
except
Edit1.SetFocus;
raise Exception.Create("Не верно введено число в первый Эдит");
end;
try
B:=StrToInt(Edit2.Text);
if B<=A then begin
ShowMessage("Значение второго Эдита должно быть больше первого");
Exit;
end;
except
Edit2.SetFocus;
raise Exception.Create("Не верно введено число во второй Эдит");
end;
* SetLength(ArrVal, B-A+1);
StringGrid1.RowCount:=B-A+2;
for N:= A to B do try
* ArrVal[N-A]:=0.0095*48*sqrt(N)-0.0035;
* StringGrid1.Cells[1, N-A+1]:=FloatToStr(ArrVal[N-A]);
// StringGrid1.Cells[1, N-A+1]:=FloatToStr(0.0095*48*sqrt(N)-0.0035);
except
StringGrid1.Cells[1, N-A+1]:="Error Calc";
end;
end;
строки помечанные звездочками можно вообще убрать за ненадобностью... и расскометировать строку.
Может где и индексы какие неправильно указал, или еще какие ошибки в коде, но это уже мне не нужно...
← →
Loginov Dmitry © (2008-05-02 17:48) [25]>По уму наверное все-таки это должно выглядеть нечто так:
> except
> Edit1.SetFocus;
> raise Exception.Create("Не верно введено число в первый
> Эдит");
> end;
а если Edit1 лежит на одной из вкладок TPageControl?
← →
{RASkov} © (2008-05-02 17:56) [26]> [25] Loginov Dmitry © (02.05.08 17:48)
Дим, последнюю мою строчку в том посмту прочитал?)
Она также относится и к вымышленному ПэйджКонтролу.... если что)
← →
{RASkov} © (2008-05-02 17:59) [27]> [25] Loginov Dmitry © (02.05.08 17:48)
Хотя это наверное не мне замечание, так ведь?... Тогда и в [26] также нужно было без ников :(
← →
Loginov Dmitry © (2008-05-02 18:11) [28]> Дим, последнюю мою строчку в том посмту прочитал?)
> Она также относится и к вымышленному ПэйджКонтролу.... если
> что)
Я че знаю, то и говорю :D
Edit1.SetFocus - конечно благородная попытка сделать удобнее и лучше, но опасная! ))
← →
{RASkov} © (2008-05-02 18:22) [29]> [28] Loginov Dmitry © (02.05.08 18:11)
> но опасная!
Ни сколько!
Но я по другому скажу: -В некоторых руках Делфи - опасно. :)
Только после прочтения сего не нужно делать так:try
A:=StrToInt(Edit1.Text);
except
try
Edit1.SetFocus;
raise Exception.Create("Не верно введено число в первый Эдит");
except
raise Exception.Create("Ну не шмогла я установить фокус на первый Эдит :(");
end;
end;
:о)
Страницы: 1 вся ветка
Текущий архив: 2008.05.25;
Скачать: CL | DM;
Память: 0.53 MB
Время: 0.021 c