dsnewline
?>

На языке PYTHON Андрей изучает социальные сети и пытается определить скрытые атрибуты пользователей по их друзьям. Поскольку Андрей - профессиональный программист, то он хочет протестировать свою программу прежде чем верить ее результатам. Но для этого требуется много разных графов, похожих на социальные сети. Андрей хочет получать графы с разным количеством пользователей (т.е. вершин графа) и разными отношениями дружбы (т.е. ребрами графа Отношение дружбы ненаправленное. В графе не должно быть петель и кратных ребер. Андрей будет задавать желаемое количество вершин и желаемое среднее количество ребер, инцидентных вершине. Его устроит даже граф, если эти его характеристики будут отличаться от заданных, но не более чем на 20%. Ваша программа получает на вход 2 целых положительных числа - N - количество вершин и K - среднее количество ребер у вершины (1≤ N ≤ 200, 0 ≤ K ≤ N - 1) Программа печатает граф описанного вида. В первой строке печатается количество вершин графа. Начиная со следующей строки, печатается матрица смежности графа по строкам. Вершины нумеруются последовательно, начиная с 0. Элемент матрицы смежности равен 1, если соответствующее ребро входит в граф, и 0, иначе. Элементы разделяются пробельными символами. Элементы главной диагонал матрицы смежности должны равняться 0. Если графа описанного вида не существует, программа ничего не печатает

Информатика

Ответы

slastena69678
Логическая операция ⊕ - это "исключающее ИЛИ" (xor в языках Паскаль, Бейсик и т.д.), а → операция присваивания.
Тогда a⊕b→a; a⊕b→b; a⊕b→a - это был обмен значениями a ↔ b
Теперь по этой же схеме обменяем местами b и с:
b⊕c→b; b⊕c→с; b⊕c→b.
Результат: b→a; c→b; a→c

Программа для иллюстрации:
// PascalABC.NET 3.1, сборка 1218 от 12.04.2016
begin
  var a:=50;
  var b:=-20;
  var c:=0;
  Println('Исходные значения: a=',a,'b=',b,'c=',c);
  a:=a xor b; b:=a xor b; a:=a xor b;
  b:=b xor c; c:=b xor c; b:=b xor c;
  Println('Результат обмена: a=',a,'b=',b,'c=',c)
end.

Результат:
Исходные значения: a= 50 b= -20 c= 0
Результат обмена: a= -20 b= 0 c= 50

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

На языке PYTHON Андрей изучает социальные сети и пытается определить скрытые атрибуты пользователей по их друзьям. Поскольку Андрей - профессиональный программист, то он хочет протестировать свою программу прежде чем верить ее результатам. Но для этого требуется много разных графов, похожих на социальные сети. Андрей хочет получать графы с разным количеством пользователей (т.е. вершин графа) и разными отношениями дружбы (т.е. ребрами графа Отношение дружбы ненаправленное. В графе не должно быть петель и кратных ребер. Андрей будет задавать желаемое количество вершин и желаемое среднее количество ребер, инцидентных вершине. Его устроит даже граф, если эти его характеристики будут отличаться от заданных, но не более чем на 20%. Ваша программа получает на вход 2 целых положительных числа - N - количество вершин и K - среднее количество ребер у вершины (1≤ N ≤ 200, 0 ≤ K ≤ N - 1) Программа печатает граф описанного вида. В первой строке печатается количество вершин графа. Начиная со следующей строки, печатается матрица смежности графа по строкам. Вершины нумеруются последовательно, начиная с 0. Элемент матрицы смежности равен 1, если соответствующее ребро входит в граф, и 0, иначе. Элементы разделяются пробельными символами. Элементы главной диагонал матрицы смежности должны равняться 0. Если графа описанного вида не существует, программа ничего не печатает
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

zotovinbox468
rimmatrotskaia303
Aleksandrovich-Mayatskikh
karasev17764
ktripoleva294
alenaya69918
Gennadevna_Baidalina131
Руслан Руденко1262
juliat200520
MAXIM76748
sde19755511
fullhouse9991
Skvik71
bellatrixstudio
Nonstop788848