Ir para conteúdo
Fórum Script Brasil
  • 0

Problema de grafos, para ser feito em Python. Fizemos uma parte, mas não sai a outra!!!


wilsonavila

Pergunta

Construa um Grafo com N vértices (definidos pelo usuário, N>4) começando pelo ponto número 1, se o número de vértices for par, alinhe os pontos de forma paralela ao eixo horizontal em duas linhas igualmente espaçadas, sendo uma linha somente de pontos pares e outra somente de pontos ímpares, os pontos devem estar alinhados dois a dois (as linhas devem apresentar o mesmo número de pontos). Se o número de vértices for ímpar, alinhe os pontos em duas colunas paralelas ao o eixo vertical com os pontos igualmente espaçados, neste caso, cada coluna deve ser formada por números pares e ímpares, respectivamente. Para ambos os casos, os pontos de cada linha ou coluna devem ser conectados com os pontos da linha ou coluna contrária, porém sem se conectarem com os pontos da linha ou coluna que pertencem.

Chegamos a este ponto!!

 

import networkx as nx


n =
int(input('\n número de vértices do grafo: '))

if (n <= 4😞
   
print('\n O  valor digiotado dever ser maior que 4')


else:
 
if (n % 2) == 0:
    G = nx.Graph()
   
for n in range(1,n+1😞
      G.add_node(n)
#adicionando os nós
             
   
x = 1
   
y = 1
   
posicao = {}
   
for (i, k) in zip(list(G.nodes())[::2], list(G.nodes())[1::2]):
     
if i % 2 != 0: #impar
       
posicao[i] = (x, y)
     
if k % 2 == 0: #par
       
posicao[k] = (x, y+0.5)
      x+=
1
   
   
print('\n g nodes: ', G.nodes())
   
print('\n posicao: ', posicao)

   
for i in G.nodes():
     
for j in G.nodes():
       
if (i % 2 == 0) and (j % 2 != 0😞
          G.add_edge(i
,j)
       
elif (i % 2 != 0) and (j % 2 == 0😞
          G.add_edge(i
,j)
   
    nx.draw_networkx(G
,pos=posicao, cmap=plt.get_cmap('jet'), with_labels=True,
                     
node_color='y', edge_color='b')
     
# falta fazer a parte dos vértices impares!!!
 
else:

   
print('\n falta essa parte')

 
print('\n\n')

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...