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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2013, 18:00   #1
dima755
Новичок
Джуниор
 
Регистрация: 19.05.2013
Сообщений: 4
По умолчанию Задача с массивом

Загрузить массив из N элементов генератором псевдослучайных чисел в интервале [-70;45]. Элементы большие -50, меньшие 20 и кратные 6 , с номерами большими 23 и меньшими 72 и кратными 2, умножить на их номер и сосчитать сумму неизмененных подходящих элементов. В заавершении вывести найденную сумму подходящих элементов и весь массив.
dima755 вне форума Ответить с цитированием
Старый 20.05.2013, 06:17   #2
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,603
По умолчанию

Код:
program forum1;

uses math;

var
i:integer;
exarray :array[1..100] of integer;
sum : integer;

begin
sum := 0;

randomize;

{ загрузка массива генератором псевдослучайных чисел }
for i:=low(exarray) to high (exarray) do
exarray[i] := ceil(randomrange(-70, 45));


{ элементы с номерами большими 23 и меньшими 72 и кратными 2 }
for i:=23 to 72 do
begin
{ элементы с номерами  кратными 2 }
if i mod 2 = 0 then
begin

{ элементы большие -50 меньшие 20 кратные 6 }
if (exarray[i] > - 50) and (exarray[i] < 20) and (exarray[i] mod 6 = 0) then
begin

{ условие "неизмененных" не понял : неизмененным элемент остается если умножается на 1, но индекса 1 нет,
 тогда задача лишается смысла так как сумма равна 0 во всех случаях }
{ сосчитать сумму подходящих элементов умноженых на их номер }
sum := sum + exarray[i]  * i ; 
end;

end;
end;


{ вывод всего массива }
for i:=low(exarray) to high (exarray) do
writeln(' : ', i, ' ', exarray[i] );

{ вывод суммы подходящих элементов }
writeln(' : sum :  ', sum  );


end.
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"

Последний раз редактировалось Stilet; 20.05.2013 в 08:03.
challengerr вне форума Ответить с цитированием
Старый 20.05.2013, 18:56   #3
dima755
Новичок
Джуниор
 
Регистрация: 19.05.2013
Сообщений: 4
По умолчанию Ответ

А если сделать так:
Код:
program otvet;
uses crt;
var n,i,s:integer;
     a:array [1..100] of integer;
begin;
clrscr;
write('vvedy kol-vo elementov);
read(n);
 for i:=1 to n do begin
   a[i]:=random(115)-70;
write (a[i],' ');
end;
writeln;
i:=24;
while i<72 do begin
   if(a[i]>-50) and (a[i]<20) and (a[i] mod 6=0) then
   begin
a[i]:=a[i]*a[i];
S:=S+a[i];
end;
writeln ('S=',S);
for i:=1 to n do
write (a[i],' ');
readkey;
end.


___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 21.05.2013 в 09:35.
dima755 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача с массивом. lammy Помощь студентам 2 22.12.2013 22:06
Задача с массивом C++ cocaphonix Помощь студентам 4 26.11.2012 17:28
задача с массивом GoldSieg Паскаль, Turbo Pascal, PascalABC.NET 10 19.10.2011 15:55
Задача с массивом(help) sezem Паскаль, Turbo Pascal, PascalABC.NET 9 15.05.2009 21:14
Задача с массивом AleNa666 Паскаль, Turbo Pascal, PascalABC.NET 1 27.04.2009 21:06