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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2012, 20:06   #1
DeadWind
Пользователь
 
Регистрация: 17.12.2011
Сообщений: 14
По умолчанию массивы

помогите пожалуйста решить)
1) дан массив A и N вещественных чисел чисел. Из элементов массива A, не попадающий в отрезок [0,100], составить массив М и вывести его.(Если задаче требуется сформулировать новый массив,то в программе необходимо вывести его и количество элементов в нем)
2)дан массив A. напечатать сумму отрицательных элементов массива А после первого нулевого элемента.
для второй задачи как бы составил,но что то не работает
(program pr3;
const n=10;
type Mas=Array [1..n] of integer;
procedure P(var A:Mas);
var i:byte;
begin
for i:=1 to n do
begin
write('A[',i,']=');
readln (A[i]);
end;
end;
procedure Sum(var A:Mas);
var
i,x,s:integer;
begin
s:=0;
for i:=1 to n do
if A[i]=0 then if A[i]<0 then s:=s+A[i];
writeln ('сумма отрицательных чисел начиная от числа ноль=',s);
end;
var
x:Mas;
begin
P(x);
Sum(x);
end.)
3)Для массива А из n элементов. Требуется найти b,равное среднему арифметическому элементов массива А и наибольшее отклонение от среднего,т.е. max(|a(1)-b|,|a(2)-b|,...|a(n)-b|).
DeadWind вне форума Ответить с цитированием
Старый 24.03.2012, 20:14   #2
weech
Пользователь
 
Аватар для weech
 
Регистрация: 16.11.2011
Сообщений: 91
По умолчанию

Во второй задаче у вас неверно задано условие: сначала вы проверяете, является ли очередной элемент массива нулем, а затем, проверяете, меньше ли, тот же самый элемент, нуля. Вот подправленный вариант:
Код:
program pr3;
        const n=10;
type Mas=Array [1..n] of integer;
     procedure P(var A:Mas);
     var i:byte;
         begin
              for i:=1 to n do
               begin
               write('A[',i,']=');
               readln (A[i]);
               end;
         end;
     procedure Sum(var A:Mas);
     var i,x,s:integer;
         begin
         s:=0;
              for i:=1 to n do
                  if A[i]=0 then x:=i;
              for i:=x to n do
                  if a[i]<0 then s:=s+a[i];
         writeln ('Cóììà îòðèöàòåëüíûõ ÷èñåë, íà÷èíàÿ îò ÷èñëà íîëü ðàâíà ',s);
         end;
var
x:Mas;
begin
P(x);
Sum(x);
end.
weech вне форума Ответить с цитированием
Старый 24.03.2012, 21:15   #3
DeadWind
Пользователь
 
Регистрация: 17.12.2011
Сообщений: 14
По умолчанию

спасибо
DeadWind вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерные массивы(матрица) 2)Строковые массивы(строки): 3)Структуры nuriyat Помощь студентам 1 21.01.2012 16:16
Двумерные массивы(массивы указателей на массивы) krytishka99 Помощь студентам 1 29.12.2011 19:51
указатели на массивы и массивы указателей blacktener Общие вопросы C/C++ 16 13.06.2011 20:45
Динамические массивы и массивы варианты N@stya Помощь студентам 0 11.06.2010 21:09
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12