Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.05.2016, 20:31   #1
nila
Пользователь
 
Регистрация: 28.05.2016
Сообщений: 10
По умолчанию произведение строк в stringgrid

Есть stringgrid. нужно посчитать произведение каждой строки отдельно в разные edit'ы. и с этой строки взять корень 7 степени. как это лучше сделать?
nila вне форума Ответить с цитированием
Старый 29.05.2016, 00:42   #2
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,872
По умолчанию

1. Строки не подлежат умножению. Следовательно произведение строк это нонсенс.
2. Из строки нельзя взять корень. Его у неё просто нет. Вот у слов в строке корень есть, но его степень это тоже нонсенс.
northener вне форума Ответить с цитированием
Старый 29.05.2016, 00:50   #3
nila
Пользователь
 
Регистрация: 28.05.2016
Сообщений: 10
По умолчанию

есть stringgrid. в нем какие-то значения вписаны, как целые, так и с запятой. нужно умножить эти значения по рядкам и с числа, что получиться взять корень 7 степени.
nila вне форума Ответить с цитированием
Старый 29.05.2016, 10:30   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

какой вопрос, такой и ответ:

Найти произведение для одного "рядка" и взять корень 7й степени:
Код:
Pr := 1.0;
for i:=0 to StringGrid1.ColCount-1 do
  Pr := Pr * StrToFloatDef(StringGrid1.Cells[i, НомерРядка],1);

Square7 := Power(Pr, 1/7);

Последний раз редактировалось Serge_Bliznykov; 29.05.2016 в 12:42. Причина: исправил опечатку в коде
Serge_Bliznykov вне форума Ответить с цитированием
Старый 29.05.2016, 10:59   #5
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Для ПЕРВОЙ строки:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
    pr:real;
begin
   pr:=1;
   For i:=0 to StringGrid1.ColCount-1 do
      pr:=pr*StrToFloat(StringGrid1.Cells[i,1]);
   pr:=exp(1/7*ln(pr));
   Edit1.Text:=FloatToStr(pr);
end;
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 29.05.2016, 17:15   #6
nila
Пользователь
 
Регистрация: 28.05.2016
Сообщений: 10
По умолчанию

Цитата:
Сообщение от newerow1989 Посмотреть сообщение
Для ПЕРВОЙ строки:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
    pr:real;
begin
   pr:=1;
   For i:=0 to StringGrid1.ColCount-1 do
      pr:=pr*StrToFloat(StringGrid1.Cells[i,1]);
   pr:=exp(1/7*ln(pr));
   Edit1.Text:=FloatToStr(pr);
end;
сделала так, выбивает ошибка: '' is not valid floating point value
nila вне форума Ответить с цитированием
Старый 29.05.2016, 17:26   #7
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Надо заполнить массив числами
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 29.05.2016, 17:41   #8
nila
Пользователь
 
Регистрация: 28.05.2016
Сообщений: 10
По умолчанию

есть заполненый, как целыми числами, так и с запятой.
nila вне форума Ответить с цитированием
Старый 29.05.2016, 19:44   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

nila, Вы ошибаетесь, нет у Вас заполненного.
Попробуйте взять код из моего примера.

Покажите, как у Вас заполнен грид. Да и исходники проекта выложить было бы неплохо.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 29.05.2016, 20:22   #10
nila
Пользователь
 
Регистрация: 28.05.2016
Сообщений: 10
По умолчанию

вот у меня в чем проблема, не всегда матрица одного размера, все зависит от того, что я введу в edit. В edit'е "Введіть критерії" можно ввести число от 3 до 11.
и в зависимости от этого в следующей форме открывается stringgrid разной размерности (3х3, 4х4 и т.д.).
Изображения
Тип файла: jpg Безымянный.jpg (38.5 Кб, 24 просмотров)
nila вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В матрице найти сумму и произведение элементов строк - С++ SenkShow C++ Builder 4 21.09.2015 21:25
11. Найти произведение элементов нечетных строк массива. Вывести сам массив и произведение. p-6 Паскаль, Turbo Pascal, PascalABC.NET 1 29.11.2012 23:37
Матрица. Найти произведение элементов, чьи номера строк и столбцов содержатся в S1 и S2 (Паскаль) Aimet Помощь студентам 0 16.06.2011 20:27
Копирование строк в StringGrid nulyjarden Помощь студентам 4 30.04.2011 13:09