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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2008, 21:09   #1
tanuschka
 
Регистрация: 28.10.2008
Сообщений: 5
По умолчанию массивы. паскаль.

подсчитать число положительных, отрицательных и нулевых компонент вещественного массива из 10 элементов. Если отрицательных элементов окажется больше , то поменять знаки всех элементов массива из 10 элементов. Если отрицательных элементов окажется больше, то поменять знаки элементов массива на противоположные.
tanuschka вне форума Ответить с цитированием
Старый 29.10.2008, 08:55   #2
knight
Дон Кихот
Форумчанин
 
Аватар для knight
 
Регистрация: 17.01.2008
Сообщений: 130
По умолчанию

Код:
var
i, count: integer;
ar: array[0..9] of real;

begin
countPlus:=0;
countMinus:=0;

//заполним массив
for i := 0 to 9 do
  arr[i] := random(100)-100;

//подсчитаем кол-во отриц и пол.
for i := 0 to 9 do
 begin
 if ar[i] > 0 then countPlus := countPlus +1;
 if ar[i] < 0 then countMinus:= countMinus+1;
end;

//если отриц. больше, то меняем знак элементов массива
if countMinus > countPlus then
for i := 0 to 9 do
  arr[i] :=  arr[i] * (-1);

end;

Последний раз редактировалось Манжосов Денис :); 05.10.2009 в 22:08.
knight вне форума Ответить с цитированием
Старый 29.10.2008, 11:00   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
arr[i] := random(100)-100;
Это жесть!
Гарантирую, что положительных чисел в массиве не будет (случайное число от нуля до 99 и отнять от него 100) ;-)))
надо где-то так:
Код:
arr[i] := random(100)-50;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 29.10.2008, 11:12   #4
knight
Дон Кихот
Форумчанин
 
Аватар для knight
 
Регистрация: 17.01.2008
Сообщений: 130
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Это жесть!
Гарантирую, что положительных чисел в массиве не будет (случайное число от нуля до 99 и отнять от него 100) ;-)))
надо где-то так:
Код:
arr[i] := random(100)-50;
Надо же чтобы что-нибудь не работало... Чтобы думалка включилась....
knight вне форума Ответить с цитированием
Старый 30.10.2008, 19:22   #5
tanuschka
 
Регистрация: 28.10.2008
Сообщений: 5
Радость

Спасибо большое! Сегодня дописала программу...
tanuschka вне форума Ответить с цитированием
Старый 05.10.2009, 19:36   #6
qasw
Новичок
Джуниор
 
Регистрация: 05.10.2009
Сообщений: 28
По умолчанию 11

Цитата:
Сообщение от tanuschka Посмотреть сообщение
подсчитать число положительных, отрицательных и нулевых компонент вещественного массива из 10 элементов. Если отрицательных элементов окажется больше , то поменять знаки всех элементов массива из 10 элементов. Если отрицательных элементов окажется больше, то поменять знаки элементов массива на противоположные.
Тань скинь про-гу плизз
qasw вне форума Ответить с цитированием
Старый 05.10.2009, 19:41   #7
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

Цитата:
Если отрицательных элементов окажется больше , то поменять знаки всех элементов массива из 10 элементов. Если отрицательных элементов окажется больше, то поменять знаки элементов массива на противоположные.
короче в любом случае менять знаки!

Код:
var
i, countPlus,countMinus,countNul: integer;
ar: array[1..10] of real;

begin
countPlus:=0;
countMinus:=0;
countNul:=0;

//заполним массив
for i := 1 to 10 do
ar[i] := random(100)-50;

//подсчитаем кол-во отриц и пол.
for i := 1 to 10 do
begin
if ar[i] > 0 then countPlus := countPlus +1;
if ar[i] < 0 then countMinus:= countMinus+1;
if ar[i]=0 then inc(countnul);
end;

//если отриц. больше, то меняем знак элементов массива
if countMinus <> countPlus   then
for i := 1 to 10 do
ar[i] := ar[i] * (-1);

end;
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.

Последний раз редактировалось ОДИНОЧЕСТВО В СЕТИ; 05.10.2009 в 19:44.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 05.10.2009, 23:20   #8
qasw
Новичок
Джуниор
 
Регистрация: 05.10.2009
Сообщений: 28
По умолчанию

тань у тебе случайно не 9 тый вариант по книге никлюдов . барщевский ??
qasw вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль. массивы }{oTT@БЬ)Ч™ Помощь студентам 9 07.12.2015 20:00
Паскаль и массивы RamireZ Паскаль, Turbo Pascal, PascalABC.NET 7 24.10.2008 17:20
Паскаль. Массивы Sexy Fox Помощь студентам 5 12.04.2008 21:45
Паскаль. Динамич массивы ProPaL Помощь студентам 6 25.03.2008 09:43
Паскаль, массивы. SZero Помощь студентам 5 22.03.2008 16:06