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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2011, 23:49   #1
Julila
Форумчанин
 
Регистрация: 04.01.2011
Сообщений: 125
Счастье найти сумму элементов массива расположных между первым и последним положительным

в одномерном массиве состоящем из н елементов вычислить
1минимал. элемент
2 сумму элементов массива расположенын. между первым и последним положительным.
3
преоброзовать массив таким образом чтобы сначала распологались все элементы равные нулю , а потом все остальные.
я тут набросала немного. но не работает.
подправте пожалуйста
program LAB4_2;
USES CRT;
Const N=6;
var A:ARRAY [1..N] of integer;
b:array [1..n] of integer;
min,S:real;
Nmin,npp,nsp,i,j,k:integer;
Begin
CLRSCR;
For i:=1 to N do
Begin
Write ('A[',i,']=');
readln (A[i]);
end;
For i:=1 to N do
write (A[i],' ');
writeln;
min:=A[1];
Nmin:=1;
For i:=1 to n do
If A[i]<min then
begin
min:=a[i];
Nmin:=i;
end;
Writeln;

npp:=0;
for i:=1 to n do
if a[i]>0 then
begin
npp:=1;
break;
end;

nsp:=0;
for i:=npp+1 to n do
if a[i] > 0 then begin
nsp:=1;
break;
end;
if npp<>nsp then
begin
s:=0;
for i:=npp+1 to nsp-1 do
s:=s+a[i];
writeln('s (i>0 & ii>0) ', s);
end

else
writeln ('s not');

K:=0;
For i:=1 to n do
if a[i]=0 then
begin
k:=k+1;
b[k]:=a[i];
end;
for i:=1 to n do
if a[i]<>0 then
begin
k:=k+1;
b[k]:=a[i];
end;
for i:=1 to k do
write ( b[i], ' ');
writeln;
readln;
writeln ( ' min=',min:0:2);
readln
end.
Julila вне форума Ответить с цитированием
Старый 06.01.2011, 00:00   #2
Z1000000
Форумчанин
 
Регистрация: 04.05.2010
Сообщений: 495
По умолчанию

Код:
npp:=0;
for i:=1 to n do
if a[i]>0 then
begin
npp:=i;
break;
end;
nsp:=0;
for i:=n downto npp+1 do
if a[i] > 0 then begin
 nsp:=i;
 break;
end;
if (npp=0) or (nsp=0) or (nsp-npp=1) then
 writeln ('s not')
else
 begin
 s:=0;
 for i:=npp+1 to nsp-1 do
 s:=s+a[i]; 
 writeln('s (i>0 & ii>0) ', s);
 end;
Нажми на весы, поставь +
Для благодарностей : WebMoney WMR R252732729948
Z1000000 вне форума Ответить с цитированием
Старый 06.01.2011, 00:12   #3
Julila
Форумчанин
 
Регистрация: 04.01.2011
Сообщений: 125
По умолчанию

спсибо.
но сумма все равно не выводится как надо
у меня вышел такой результат
Изображения
Тип файла: jpg Безымянный.jpg (9.5 Кб, 147 просмотров)
Julila вне форума Ответить с цитированием
Старый 06.01.2011, 01:01   #4
dosha
Форумчанин
 
Регистрация: 30.08.2010
Сообщений: 224
По умолчанию

writeln('s (i>0 & ii>0) ', s:4:0);
где 4 кол-во знаков до запятой, где 0 колво знаков после
dosha вне форума Ответить с цитированием
Старый 06.01.2011, 01:06   #5
Julila
Форумчанин
 
Регистрация: 04.01.2011
Сообщений: 125
По умолчанию

ВСЕ РАВНО НЕ ТО((
Julila вне форума Ответить с цитированием
Старый 06.01.2011, 01:35   #6
XeruH
Форумчанин
 
Регистрация: 17.09.2010
Сообщений: 229
По умолчанию

Что именно не то то? не так считает? не так выводит?
Правильно заданный вопрос - половина ответа!
XeruH вне форума Ответить с цитированием
Старый 06.01.2011, 01:41   #7
Julila
Форумчанин
 
Регистрация: 04.01.2011
Сообщений: 125
По умолчанию

ответ суммы выходит не верным и не понятным..
4.800000000000000000000Е
хотя я поставила значения вывода количества знаков
Julila вне форума Ответить с цитированием
Старый 06.01.2011, 01:53   #8
XeruH
Форумчанин
 
Регистрация: 17.09.2010
Сообщений: 229
По умолчанию

Цитата:
Сообщение от Julila Посмотреть сообщение
ответ суммы выходит не верным и не понятным..
4.800000000000000000000Е
хотя я поставила значения вывода количества знаков
хм.. выложи свой код.. только с тегом
Правильно заданный вопрос - половина ответа!
XeruH вне форума Ответить с цитированием
Старый 06.01.2011, 02:10   #9
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Убери там везде real, замени на integer.
Son Of Pain вне форума Ответить с цитированием
Старый 06.01.2011, 02:32   #10
Julila
Форумчанин
 
Регистрация: 04.01.2011
Сообщений: 125
Радость

Спасибо. теперь все отлично)
Julila вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
среднее арифметическое между первый положительным и последним элементами массива Whitek Помощь студентам 2 19.10.2010 23:08
Бейсик. Найти сумму численных значений элементов одномерного массива Марька Помощь студентам 4 16.03.2010 23:01
Найти сумму, пр-ние и кол-во элементов массива Zid@ne Общие вопросы C/C++ 4 28.01.2009 19:58
Найти сумму квадратов отрицательных элементов массива bbk_serg Помощь студентам 7 21.01.2009 12:33
найти сумму трех последовательно стоящих элементов массива d00ker Помощь студентам 6 25.12.2008 15:07