Форум: "Начинающим";
Текущий архив: 2008.12.28;
Скачать: [xml.tar.bz2];
ВнизПолучить массив и подсчитать его элементы. (+ см.тему) Найти похожие ветки
← →
Kawun (2008-11-16 15:38) [0]Добрый день.
Мучаюсь над задачкой, вот ее условие:
Разработать программу с единтсвенным циклом и ветвлением в теле цикла.
При заданных X1, X2....Xn и Y1, Y2....Yn
получить массив T1, T2....T3
элементы которого получают значения по правилу Ti = max(Xi, Yi)
и подсчитать, сколько элементов Ti получило значение Xi.
А вот ее код:procedure TForm1.Button1Click(Sender: TObject);
const
NMAX = 20; {Максимальное кол-во элементов массива}
type
TMas = Array [1..NMAX] of Real;
var
X: TMas; {Исходный массив}
Y: TMas; {Исходный массив}
T: Tmas; {Массив который нам надо получить}
S: Integer; {Счетчик}
I: Integer;
N: Integer; {Кол-во элементoв массива}
begin
N := StrToInt(EditN.Text); //Задаем N (Кол-во элементов массива)
X[i] := StrToFloat(StringGrid1.Cells[I-1, 0]);//Задаем X
Y[i] := StrToFloat(StringGrid1.Cells[I-1, 1]);// Задаем Y
S:=0; //Присваиваем счетчику 0
for I:=1 To N Do
if x[i]>y[i] then
begin
t[i]:=x[i];
S:=S+1;
end
else t[i]:=y[i];
EditR.Text:=IntToStr(S); {Вывод результата в текстовое поле}
end;
end.
Что-то не хочет она считать, вылетает с ошибкой.
Подскажите, пожалуйста, в чем может быть проблема.
Спасибо.
← →
Palladin © (2008-11-16 16:11) [1]Проблема в ошибке.
← →
Kawun (2008-11-16 16:15) [2]Тоесть Вы хотите сказать что сам код программы написан правильно?
А текст ошибки таков: "" is hot a valid floating point value.
← →
AIK © (2008-11-16 16:17) [3]
....
> beginN := StrToInt(EditN.Text); //Задаем N (Кол-во элементов
> массива)X[i] := StrToFloat(StringGrid1.Cells[I-1, 0]);//Задаем
> XY[i] := StrToFloat(StringGrid1.Cells[I-1, 1]);// Задаем
> Y
.....
а чему равен i ?
может в цикле должно быть?
← →
Palladin © (2008-11-16 16:20) [4]
> А текст ошибки таков: "" is hot a valid floating point value.
и эта ошибка тебе ни о чем не сказала?
← →
AIK © (2008-11-16 16:24) [5]
> begin
> N := StrToInt(EditN.Text); //Задаем N (Кол-во элементов массива)
> X[i] := StrToFloat(StringGrid1.Cells[I-1, 0]);//Задаем X
> Y[i] := StrToFloat(StringGrid1.Cells[I-1, 1]);// Задаем Y
Извиняюсь когда нажал на «Цитата» криво вставилось
← →
Kawun (2008-11-16 16:24) [6]
> эта ошибка тебе ни о чем не сказала?
Особо не сказала, что-то про плав. запятую она кричит...
Как это исправить я не понял :-(
← →
Palladin © (2008-11-16 16:25) [7]
> Kawun (16.11.08 16:24) [6]
а уже сказали где бред написан
← →
Palladin © (2008-11-16 16:26) [8]изучи возможности клавиш F5, F7 и F8
← →
Сергей М. © (2008-11-16 16:28) [9]
> в чем может быть проблема
Проблемы начинаются со строчки
> X[i] := StrToFloat(StringGrid1.Cells[I-1, 0]);//Задаем X
и далее не кончаются.
← →
Kawun (2008-11-16 16:36) [10]
> ....> beginN := StrToInt(EditN.Text); //Задаем N (Кол-во
> элементов > массива)X[i] := StrToFloat(StringGrid1.Cells[I-
> 1, 0]);//Задаем > XY[i] := StrToFloat(StringGrid1.Cells[I-
> 1, 1]);// Задаем > Y.....а чему равен i ?может в цикле должно
> быть?
Вроде как исправил, вот так верно?begin
N := StrToInt(EditN.Text); //Задаем N (Кол-во элементов массива)
for I:=1 To N Do
begin
X[i] := StrToFloat(StringGrid1.Cells[I-1, 0]);//Задаем X
Y[i] := StrToFloat(StringGrid1.Cells[I-1, 1]);// Задаем Y
end;
← →
AIK © (2008-11-16 16:38) [11]
> for I:=1 To N Do
> if x[i]>y[i] then
и здесь фигня
← →
Сергей М. © (2008-11-16 16:39) [12]
> вот так верно?
>
По кр.мере значение i определено.
А верно или неверно остальное - нам отсюда не видно.
← →
AIK © (2008-11-16 16:39) [13]
> AIK © (16.11.08 16:38) [11]
упс ошибочка
← →
Kawun (2008-11-16 16:45) [14]2_ AIK
> > AIK © (16.11.08 16:38) [11]упс ошибочка
Так здесь:> for I:=1 To N Do
> if x[i]>y[i] then
Фигня или нет?)
← →
Palladin © (2008-11-16 16:55) [15]ну а сам то как думаешь? логику программы тоже за тебя придумывать?
← →
AIK © (2008-11-16 16:55) [16]Вроде нет
мне просто показалось что одинаковые переменные сверяются (if x[i]>x[i] then)
← →
AIK © (2008-11-16 16:58) [17]Только я вот непойму зачам тут t[i]
его результат ведь всеровно не выводится
← →
Anatoly Podgoretsky © (2008-11-16 19:12) [18]> Сергей М. (16.11.2008 16:28:09) [9]
Ошибаешься, проблемы начинаются со строчки CONST
Вся программа очаровательный бред не замутненого сознания.
← →
Anatoly Podgoretsky © (2008-11-16 19:13) [19]> Kawun (16.11.2008 16:45:14) [14]
Фигня, но не надо ничего исправлять, надо просто заниматься своим делом!
← →
Anatoly Podgoretsky © (2008-11-16 19:15) [20]> AIK (16.11.2008 16:58:17) [17]
Зачем ты ищешь здесь смысл, это же учебное задание, которое провалено по всем пунктам.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.12.28;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.005 c