IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> 1.Создать массив целых чисел R[1..n], содержащий серии чисел разделенных нулями. Отсортировать массив по возрастанию сумм чисел в сериях. 2.В матриц
xxBOBAHxx
сообщение 19.10.2008 20:56
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 14
Пол: Мужской
Реальное имя: Vladimir

Репутация: -  0  +


1.Создать массив целых чисел R[1..n], содержащий серии чисел разделенных нулями. Отсортировать массив по возрастанию сумм чисел в сериях.


2.В матрице NxN определить суммы каждой диагонали параллельно побочной, включая её. Обнулить диагональ с максиамльной суммой.


 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 4)
xxBOBAHxx
сообщение 20.10.2008 15:39
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 14
Пол: Мужской
Реальное имя: Vladimir

Репутация: -  0  +


1.uses crt;
const n=30;
var a,s, g:array[1..n] of integer;
i, h, k, c:integer;
priz:boolean;
begin clrscr;
randomize;
for i:=1 to n do
begin a[i]:=-10+random(20);
write(a[i], ' ');
end;
s[i]:=0;
while a[i]<>0 do
s[i]:=s[i]+a[i];
writeln(s[i], 'symma', i);
repeat dec(k);
priz:=true;
for i:=1 to k do
if s[i]>s[i+1] then
begin
c:=s[i];
s[i]:=s[i+1];
s[i+1]:=c;
priz:=false;
end;
until priz;
writeln(' ', s[i]);
readkey
end.


Но ответы какие то корявые, что изменить то надо или исправить??Помогите пжл...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
klem4
сообщение 20.10.2008 18:34
Сообщение #3


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Нужно сортировать группы внутри массива ? Или что ? приведи пару примеров.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
xxBOBAHxx
сообщение 20.10.2008 19:47
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 14
Пол: Мужской
Реальное имя: Vladimir

Репутация: -  0  +


1)кароче например дан массив
1 45 564 32 123 43 5 0 343 23 43 1 34 45 0
2) нужно посчитать сумму до первого нуля, т.е. S:1+45+564+32+123+43+5 потом от 1-ого нуля следующего (S=343+23+43+1+34+45) и т.д.
3)потом эти суммы надо записать в новый массив
4)дальше эти суммы в получившемся массиве необходимо отсортировать по возрастанию сумм чисел
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Client
сообщение 20.10.2008 20:12
Сообщение #5


Профи
****

Группа: Пользователи
Сообщений: 865
Пол: Мужской
Реальное имя: Вячеслав

Репутация: -  20  +


uses crt;
var
a,b:array[1..20] of integer;
i,j,n,s,k:byte;
begin
clrscr;
write('n= ');
readln(n);
for i:=1 to n do read(a[i]);
s:=0;
j:=0;
for i:=1 to n do begin
if a[i]=0 then begin
inc(j);
b[j]:=s;
s:=0;
end
else s:=s+a[i]
end;
k:=j;
for j:=1 to k do write(b[j],' ');
writeln;
for j:=1 to k-1 do
for i:=1 to k-j do
if b[i]>b[i+1] then begin
s:=b[i];
b[i]:=b[i+1];
b[i+1]:=s
end;
for j:=1 to k do write(b[j],' ');
readkey
end.
Попробуй так
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 2:26
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"