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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2012, 15:52   #1
lavric666
 
Регистрация: 01.11.2012
Сообщений: 3
По умолчанию Найти сумму и количество отрицательных элементов массива

Условия:
1.
а)Найти сумму и кол-во отрицательных элементов массива.
б)В одномерном массиве найти минимальные элементы массива и его номер.

2.Найти количество локальных минимумов в одномерном массиве.

Program Z1;
var a,b,c:integer;

Как вообще начинать ?
lavric666 вне форума Ответить с цитированием
Старый 01.11.2012, 16:13   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

ну потрудитесь опустить глаза вниз страницы, там есть же список похожих тем...
p51x вне форума Ответить с цитированием
Старый 01.11.2012, 16:21   #3
lavric666
 
Регистрация: 01.11.2012
Сообщений: 3
По умолчанию

Ну нету там таких...=(

Цитата:
Сообщение от p51x Посмотреть сообщение
ну потрудитесь опустить глаза вниз страницы, там есть же список похожих тем...
Там нету похожих. Условие в любом случае другое...

Последний раз редактировалось Stilet; 01.11.2012 в 23:39.
lavric666 вне форума Ответить с цитированием
Старый 01.11.2012, 16:35   #4
NinaSSS
Пользователь
 
Регистрация: 30.10.2012
Сообщений: 34
По умолчанию

1 задача
Код:
program jfhgkh;
var b:array[1..50] of integer; s,i,k,a,n,min,c:integer;
begin
readln(n);

for i:=1 to n do begin
readln(b[i]);
end; writeln('massiv');
for i:=1 to n do begin
write(b[i]:3);
end; writeln;
k:=0;s:=0;
 for i:=1 to n do begin
   if b[i]<0 then begin k:=k+1; s:=s+b[i];end;
   end;
   writeln('kol-vo otriz  ',k);  writeln('summa otriz=',s);
   min:=b[1];
   for i:=1 to n do begin
   if b[i]<min then begin min:=b[i]; c:=i;end;end;
   writeln('minimum=',min,'  nomer=', c);
   end.


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


2 задача
Код:
program jfhgkh;
var b:array[1..50] of integer; i,k,n:integer;
begin
readln(n);

for i:=1 to n do begin
readln(b[i]);
end; writeln('massiv');
for i:=1 to n do begin
write(b[i]:3);
end; writeln;
k:=0;
 for i:=2 to n-1 do begin
   if (b[i]<b[i-1])and (b[i]<b[i+1])then begin k:=k+1; end;
   end;
   writeln('kol-vo lokal minimumov  ',k);
   end.


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

Последний раз редактировалось Stilet; 01.11.2012 в 23:44.
NinaSSS вне форума Ответить с цитированием
Старый 01.11.2012, 16:50   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

c поиском номера минимиальноо есть косячок!
попробуйте, что выдаст программа, если минимальный элемент массива ПЕРВЫЙ.
А знаете почему? Вы написали min := b[1]; а проиницилизировать c забыли!
и, если код ни разу не зайдёт в веточку по if b[i]<min then ...
с так и останется мусорным значением (в Pascal компилятор, скорее всего, туда поместит ноль,но суть не в этом - нельзя использовать неиницилизированные переменные! Впрочем, судя по "k:=0;s:=0;" - Вы об этом правиле знаете!! )

и ещё. во всех случаях, когда нужно найти номер минимального (или максимального элемента) ГОРАЗДО удобнее хранить в переменной не само минимальное значение, а его номер (индекс).
сравните:
Код:
   c:= 1;
   for i:=2 to n do
      if b[i]<b[c] then c:=i;

   writeln('minimum=', b[c],'  nomer=', c);
Вы согласитесь, что код стал проще, надёжнее и нагляднее?..
Serge_Bliznykov вне форума Ответить с цитированием
Старый 01.11.2012, 16:56   #6
lavric666
 
Регистрация: 01.11.2012
Сообщений: 3
По умолчанию

Спасибоооу =)
lavric666 вне форума Ответить с цитированием
Старый 01.11.2012, 17:02   #7
NinaSSS
Пользователь
 
Регистрация: 30.10.2012
Сообщений: 34
По умолчанию

Простите с номером накосячила, быстро делала, а в остальном вполне уместен и предложенный алгоритм. Сергей, что за кнопочка с решеткой? я же вроде бы ставлю решетку.
NinaSSS вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal. Найти сумму отрицательных и сумму положительных элементов линейного массива. badname47 Паскаль, Turbo Pascal, PascalABC.NET 1 07.02.2012 06:29
Определите сумму и количество отрицательных элементов в каждой четной строке диапазона relog Microsoft Office Excel 6 28.05.2011 19:40
задача- найти сумму отрицательных элементов [Паскаль] Анна22 Помощь студентам 1 07.12.2010 21:02
Найти максимальный из положительных элементов матрицы и сумму отрицательных элементов. bessonov12 Microsoft Office Excel 7 04.05.2009 05:44
Найти сумму квадратов отрицательных элементов массива bbk_serg Помощь студентам 7 21.01.2009 12:33