С Новым годом! Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
xhangmanx

Определение минимального по "стоимости" пути из пункта 1 в пункт N

24.10.2007, 08:03. Показов 1598. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
var A:array[1..8] of Byte; 
 
function Test: Boolean;
var i,j:Integer;
begin
     Test:=False;
     for i:=1 to 7 do
       for j:=i+1 to 8 do
         if (A[i]=A[j]) or (Abs(A[i]-A[j])=Abs(i-j))
         then
             Exit;
     Test:=True;
end;
 
BEGIN
     for i:=1 to 8 do
       A[i]:=0;
     Repeat
           if Test
           then
    begin
                {вывод результата};
        Exit;
    end;
           inc(A[8]);
           for i:=8 downto 2 do
             if A[i]=8
             then
             begin
                  A[i]:=0;
                  Inc(A[i-1]);
             end
             else
                 Break;
     Until A[0]=8;
END;
это кусок из задачи про ферзя с использованием счетчика

нужно из выше приведенного сделать

Имеется N населенных пунктов, а также список дорог между ними, заданный множеством троек чисел вида i,j,k (i≠j), где i и j - номера населенных пунктов, соединенных дорогой, а k - «стоимость» передвижения по ней. Написать программу, определяющую минимальный по «стоимости» путь из пункта 1 в пункт N. Если такового нет, сообщить об этом.
так же с использованием счетчика.

решение к рисунку
примерно следующее
первый столбец маршрут второй цена
12 30
21 30
23 7
24 1
32 7
34 3
42 1
43 3

реализации через массив

1 2 3 4
1 0 30 0 0
2 30 0 7 1
3 0 7 0 3
4 0 1 3 0
примерно обресованый маршрут
Изображения
 
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.10.2007, 08:03
Ответы с готовыми решениями:

Пункт А расположен на расстоянии 20 км от пункта Б. Из пункта А со скоростью 2км/час вышел пешеход П1, одновременно с
#include<stdio.h> #include<math.h> #include<locale.h> int main() { setlocale(LC_ALL, "Rus"); int s = 20, a = 2, b = 3, p = 5,...

Равномерное ДВИЖЕНИЕ тела из пункта А в пункт В движется велосипедист с постоянной скоростью V через 0.5 часа после его старта из пункта а стартовал в
Равномерное ДВИЖЕНИЕ тела из пункта А в пункт В движется велосипедист с постоянной скоростью V через 0.5 часа после его старта из пункта а...

Поиск средней скорости автомобиля на пути от пункта А до пункта D
Здравствуйте! Не могу понять как составить программу. С клавиатуры вводятся значения расстояний на участках AB, BC и CD и времени...

1
xhangmanx
24.10.2007, 08:08
вот это уже с выводом цен на маршруты.а вот как найти дешевый ? я не знаю
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
[SIZE="2"]unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids;
 
type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Button1: TButton;
    ListBox1: TListBox;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
  A:array[1..4] of Byte;
implementation
 
uses Math;
 
{$R *.dfm}
 
procedure TForm1.FormCreate(Sender: TObject);
var i,j,r:integer;
    dig1:boolean;
begin
dig1:=False; r:=0;
randomize;
  for i:=0 to StringGrid1.RowCount-1 do
   begin
    for j:=0 to StringGrid1.ColCount-1 do
     begin
      r:=RandomRange(0,2);
      if i<>j then StringGrid1.Cells[j,i]:=IntToStr(r)
      else
      StringGrid1.Cells[j,i]:=inttostr(0);
{      r:=RandomRange(0,2);}
 
 
       
     end;
   end;
end;
 
function Test: Boolean;
 var i,j:Integer;
 begin
     Test:=False;
     for i:=1 to 4 do
      for j:=i+1 to 4 do
       if (A[i]=A[j]) and (a[i]=0)
       then
       Exit;
     Test:=True;
 end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
   i,j,n:integer;
   s:string;
begin
      for i:=1 to 4 do
       A[i]:=0;
     Repeat
           if Test
           then
    begin
    S:='';
     For i:=1 to 4 do s:=s+inttostr(a[i]);
     Listbox1.items.add(s);
        
    end;
   inc(A[4]);
    for i:=4 downto 2 do
     if A[i]=4
     then
     begin
      A[i]:=0;
      Inc(A[i-1]);
     end
     else
      Break;
      Until A[4]=4;
end;
 
end.[/SIZE]
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.10.2007, 08:08
Помогаю со студенческими работами здесь

Задачка: добраться из пункта A в пункт B
Друзья, помогите с задачей. У нас есть поле размера N. Пользователь также вбивает координаты машины и гаража. Также в случайных клетках...

Из пункта А в пункт Б самый быстрый путь
Ребята, выручайте. Задача интересная, прикладная, но что-то я подвис с её решением. Чтобы проще понять, что требуется, представьте себе,...

Метод для перемещения Label из пункта А в пункт В
Здравствуйте! У меня есть класс, создающий Label: namespace Test { class Base { public string Name; ...

Из пункта А в пункт B необходимо перевести Х тонн груза
Из пункта А в пункт B необходимо перевести Х тонн груза, для чего в пункте А находиться 2 грузовика. Первый грузовик может вести V1 тонн...

Программа, рассчитывающая стоимость поездки из пункта А в пункт В
Доброго времени суток! Столкнулся с такой проблемой. Нужна программа рассчитывающая стоимость поездки из пункта А в пункт B....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru