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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2009, 19:30   #1
ai\ekcah^p
Форумчанин
 
Аватар для ai\ekcah^p
 
Регистрация: 03.05.2009
Сообщений: 112
По умолчанию Преобразовать массив

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


Указания:
- преобразование массива оформить в виде процедуры;
- заданные вычисления оформить в виде функции;
- все выводы на экран осуществлять в основной программе.

Массив H = (6, –6, –3, 8, 4, –7, 0) преобразован к виду H = (14, 0, 0, 16, 12, 0, 8). Размер массива H - 10 элементов. из диапазона [–44,44] Вычислить произведение тех элементов преобразованного массива, которые находятся в диапазоне [0, 18].

Program labor3;
uses crt;
const kol_el=10;
type mas=array[1..kol_el] of integer;
var i,p,pr:integer;
h:mas;

procedure preobr(var a:mas);
var i:integer;
begin
for i:=1 to kol_el do
begin
if (a[i]<0) then
a[i]:=0
else
a[i]:=a[i]+8;
end;
end;

Begin
clrscr;
Randomize;
for i:=1 to kol_el do
begin
h[i]:=Random(89)-44;
write(' ',h[i]);
end;


begin
for i:=1 to kol_el do
begin
p:=1;
if ((h[i]<19) and (h[i]>=0) ) then
pr:=p*h[i];
p:=pr;
end;
write;
writeln(' proizvedenie elementov = ',pr);
end;
end.
ai\ekcah^p вне форума Ответить с цитированием
Старый 04.05.2009, 20:35   #2
Ky3Heu,
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 94
По умолчанию

Цитата:
if ((h[i]<19) and (h[i]>=0) ) then
Тебе это не надо... Все равно все отрицательные числа равны 0
Код:
if h[i]<19 then p:=p*h[i];
и "p" не надо в цикле обратно к единице приравнивать.. Я так понимаю из-за этого и неправильно все...
По ракетам и хоккею - Россияне всех сильней!

Последний раз редактировалось Ky3Heu,; 04.05.2009 в 20:39.
Ky3Heu, вне форума Ответить с цитированием
Старый 04.05.2009, 20:52   #3
ai\ekcah^p
Форумчанин
 
Аватар для ai\ekcah^p
 
Регистрация: 03.05.2009
Сообщений: 112
По умолчанию

Он теперь отрицательное произведение выводит
ai\ekcah^p вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Преобразовать в дату Iskin Microsoft Office Excel 2 14.04.2009 07:57
Преобразовать в дату Marvel Microsoft Office Excel 21 22.01.2009 06:42
Как преобразовать одномерный массив? kitty Помощь студентам 1 01.12.2007 20:16
помогите преобразовать одномерный массив kitty Помощь студентам 1 29.11.2007 21:58
ПРЕОБРАЗОВАТЬ malevich Общие вопросы Delphi 1 07.12.2006 21:08