c code to python code converter online
#include<iostream> // Defining MAX size to 10 #define MAX 10 using namespace std; typedef struct Edge { int source; int destination; int weight; }Edge; void bellman_ford_algo(int nodevertex,Edge edge[],int source_graph,int nodeedge) { int u,v,weight,i,j=0; int distance[MAX]; for(i=0;i<nodevertex;i++) { distance[i]=999; } // distance of source vertex distance[source_graph]=0; // free all the edges nodevertex - 1 times for(i=0;i<nodevertex-1;i++) { for(j=0;j<nodeedge;j++) { u=edge[j].source; v=edge[j].destination; weight=edge[j].weight; if(distance[u]!=999 && distance[u]+weight < distance[v]) { distance[v]=distance[u]+weight; } } } // checking for negative cycle for(j=0;j<nodeedge;j++) { u=edge[j].source; v=edge[j].destination; weight=edge[j].weight; if(distance[u]+weight < distance[v]) { cout<<"\n\nNegative Cycle present..!!\n"; return; } } cout<<"\nVertex"<<" Distance from source"; for(i=1;i<=nodevertex;i++) { cout<<"\n"<<i<<"\t"<<distance[i]; } } int main() { int nodevertex,nodeedge,source_graph; Edge edge[MAX]; cout<<"Enter the number of vertices you want : "; cin>>nodevertex; printf("Enter the source vertex of the graph: "); cin>>source_graph; cout<<"\nEnter no. of edges you want : "; cin>>nodeedge; for(int i=0;i<nodeedge;i++) { cout<<"\nEdge Number "<<i+1<<"="; cout<<"\nEnter source vertex here :"; cin>>edge[i].source; cout<<"Enter destination vertex here:"; cin>>edge[i].destination; cout<<"Enter weight here :"; cin>>edge[i].weight; } bellman_ford_algo(nodevertex,edge,source_graph,nodeedge); return 0; }