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

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

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

> подсчитать наименьший расход гирлянд, программа с ошибкой
сообщение
Сообщение #1


Знаток
****

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

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


задача
На новый год ученики решили украсить длинный коридор своими гирляндами. На потолке весят светильники. Какие нибуть два светильника можно соединить гирляндой. Надо сцепить светильники парами так чтобы возле каждого светильника была бы соединена хоть одна гирлянда, о всех гирлянд обшая длина была бы наименьшей.

Напишите программу, находящую наименьшую всех гирлянд длину.

Первичные данные записаны в файле duom.txt . На первой строчке в файле написано натуральное число s всех светильников (2<=s<=1000) светильников число . На другой строчке написано отделено пробелами растояние от светильников неотрицательное число, не больше 10000,- каждого светильника координаты.

Результаты - наименьшее всех гирлянд общее длина - записывается в файл rez.txt.

пример
начальные данные
5
4 10 0 12 2

результат
6

обьяснение
соединяем 0 и 2 (длина гирлянды 2) потом 2 и 4 (длина гирлянды 2) и 10 с 12 (длина гирлянды 2) общяя длина 6

и потом написать программы еще чтобы в файл duom.txt записывало эти разные числа.

вот я сделал программку сперва все числа в массив записывает потом упорядочивает массив по возрастанию
потом записывает длины от лампы до лампы всех длину гирлянд а потом ( ошибка ) должно выбирать наибольшее числа и их написать в другой массив и потом подсчитать все эти числа и записывает в файл.

еще у меня написаны там чтобы выводили числа на экран это для меня проверка.
вот вся программа.

program sviestuvai;
const count=1000;
Var
s,i,a,j,w,v:integer;
z:array [1..500] of integer;
m:array [1..999] of integer;
n:array [1..count] of integer;
pradDuom,rezult: text;


BEGIN
assign (pradDuom, 'duom.TXT');
assign (rezult, 'rez.TXT');
reset (pradDuom);
rewrite (rezult);
readln(pradduom,s);
for i:=1 to s do
read(pradduom,n[i]);

{********************sortirovka massiva po vozrastaniju****************}

for i:= 1 to s do
for j:=1 to s do
if n[i]<n[j] then begin w:=n[i]; n[i]:=n[j]; n[j]:=w; end;

{******************konec sortirovki************************************}

j:=0;
for i:= 1 to s-1 do
begin
inc(j);
m[j]:=n[i+1]-n[i];
end;


{************proverka kak otsortirovalo****************}
for i:=1 to s do
write(n[i]:3,' ');
writeln;
{***********konec proverki sortirovki************************}

{*************nacalo proverki vsex promizutkov*************}
for i:=1 to s-1 do
write(' ',m[i]:3); writeln;

{***************************konec************************}


{****************************OSIBKA*****************************************}


{****************nacalo otbora cisel**********************}
z[1]:=m[1];
z[j-1]:=m[s-1];
v:=1;
for i:=2 to j-2 do
begin
if m[i]>m[i+1]
then begin inc(v); z[v]:=m[i+1]; i:=i+2 end
else begin inc(v); z[v]:=m[i]; i:=i+2 end;
{ writeln('privet',j);}

{*********************konec*******************************}
v:=v+1;
for i:= 1 to v+1 do
writeln(i,'--> ',z[i]);
writeln;
a:=0;
for i:=1 to v do
a:=a+z[i];
writeln(a,' ',v,' ',z[j-1]);
end;
write(rezult,a);
readln;

close(pradduom);
close(rezult);
END.


вот и все написал где ошибка начинается помогите

Сообщение отредактировано: maksimla -


--------------------
Учусь первый год на программиста в колледже. Учусь на втором курсе в школе программирования при научно-исследовательском институте математики и информатики.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
maksimla   подсчитать наименьший расход гирлянд   14.02.2009 17:51
maksimla   вот дополнительная программа записывает числа в du…   15.02.2009 15:55
maksimla   вот сделал подругому программу но при других перви…   15.02.2009 18:27
Lapp   По поводу программы, делающей исходный файл (duom.…   15.02.2009 22:37
maksimla   да а я и даже не подумал что два светильника не мо…   15.02.2009 23:29
maksimla   а программа кажется неправильно результат выводит …   15.02.2009 23:56
Lapp   а программа кажется неправильно результат выводит …   16.02.2009 4:50
TarasBer   Извините, что беру на себя чужие функции, но я моз…   16.02.2009 0:54
Lapp   Вот вроде правильное решение на сей раз)). Пришлос…   16.02.2009 18:51
maksimla   запутался я тут как считается можете обеснить это?…   16.02.2009 19:17
Lapp   запутался я тут как считается можете обеснить это?…   16.02.2009 19:50
maksimla   хорошо я подожду когда более подробное описание да…   16.02.2009 20:00
Lapp   Как я и думал, все можно было упростить. Правда, …   17.02.2009 10:53
maksimla   спасибо все понел   17.02.2009 20:41


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

 





- Текстовая версия 24.04.2024 1:14
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name