Задана последовательность N вещественных чисел. Вычислить сумму чисел, порядковые номера которых являются простыми числами.
Ну понятно, что простые это 1,2,3,5,7,11,13......
Они делятся на себя на 1 и не делятся на другие числа.
А как это связать с задачей?
Помогите, может у кого-то было что-то похожее.
Одномерный массив
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
Код: Выделить всё
procedure GetSumOfSimplePlacedNumbers;
const N = 10;
var
ch: array[1..N] of Real;
s, i: Integer;
InArray: Boolean;
Simple: array of Integer;
Summ: Real;
begin
for i := 1 to N do ch[i] := Random(1000);
// заполняем массив простых чисел
for s := Low(ch) to High(ch) do
begin
InArray := True;
for i := Low(Simple)+1 to High(Simple) do
if s / Simple[i] = s div Simple[i] then InArray := False;
if InArray then
begin
SetLength(Simple, Length(Simple)+1);
Simple[High(Simple)] := s;
end;
end;
// считаем сумму
Summ := 0;
for i := Low(Simple) to High(Simple) do
Summ := Summ + ch[Simple[i]];
ShowMessage('Сумма: ' + FloatToStr(Summ));
end;
С уважением, Lost Angel...
Спасибо большое, работает хорошо.
-
- Сообщения: 273
- Зарегистрирован: 30 июн 2005, 14:53
Это не форум программистов, а форум по решению практических работ?
Посмотрит - научится.
А что, алгоритм лучше словами?
)))
А что, алгоритм лучше словами?

С уважением, Lost Angel...