Вопрос задан 06.11.2023 в 08:37. Предмет Информатика. Спрашивает Хен Анюта.

Перевести с С++ на паскаль. #define _CRT_SECURE_NO_WARNINGS#include #include #define SIZE 6int

main(){ int a[SIZE][SIZE]; // матрица связей int d[SIZE]; // минимальное расстояние int v[SIZE]; // посещенные вершины int temp, minindex, min; int begin_index = 0; system("chcp 1251"); system("cls"); // Инициализация матрицы связей for (int i = 0; i 0) { temp = min + a[minindex][i]; if (temp < d[i]) { d[i] = temp; } } } v[minindex] = 0; } } while (minindex < 10000); // Вывод кратчайших расстояний до вершин printf("\nКратчайшие расстояния до вершин: \n"); for (int i = 0; i = 0; i--) printf("%3d ", ver[i]); getchar(); getchar(); return 0;}
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Гумарова Алина.

Ответ:

просто перевод строк на паскаль. Логики тут искать не стоит. Первоначальное задание не полностью дано.

Объяснение:

const

 size = 6

var

 a : array [0..size, 0..size] of integer;

 d, v : array [0..size] of integer;

 i, temp, minindex, min, begin_index : integer;

begin

 begin_index := 0;

 for i:=0 to size-1 do begin

   temp := min + a[minindex][i]

   if temp < d[i] then

     d[i] := temp

 end;

 v[minindex] := 0;

 writeln('Кратчайшие расстояния до вершин')

 for i := 0 to size-1 do

   writeln(ver[i])  

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот перевод данного кода на язык Pascal:

program Dijkstra; const size = 6; var a: array[1..size, 1..size] of Integer; // матрица связей d: array[1..size] of Integer; // минимальное расстояние v: array[1..size] of Integer; // посещенные вершины temp, minindex, min: Integer; begin_index: Integer = 1; i: Integer; begin // Инициализация матрицы связей for i := 1 to size do begin for j := 1 to size do begin a[i, j] := // значение элемента в матрице связей end; end; // Инициализация массива минимальных расстояний for i := 1 to size do begin d[i] := // начальное значение минимального расстояния end; // Инициализация массива посещенных вершин for i := 1 to size do begin v[i] := 0; end; repeat minindex := 10000; min := 10000; for i := 1 to size do begin if (v[i] = 0) and (d[i] < min) then begin min := d[i]; minindex := i; end; end; if minindex <> 10000 then begin for i := 1 to size do begin if a[minindex, i] > 0 then begin temp := min + a[minindex, i]; if temp < d[i] then begin d[i] := temp; end; end; end; v[minindex] := 1; end; until minindex = 10000;

// Вывод кратчайших расстояний до вершин Writeln('Кратчайшие расстояния до вершин:'); for i := 1 to size do begin Writeln(d[i]); end; Readln; end.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос