main.cpp

来自「A C++ code for generating sorting networ」· C++ 代码 · 共 63 行

CPP
63
字号
#include<iostream>
using namespace std;
#include <cstdlib> 
#include <ctime> 
#include "Network.h"

int main()
{
	int n, m;
	cout<<"Dati numarul de linii n: ";
	cin>>n;

	cout<<"Dati numarul de comparatoare m: ";
	cin>>m;

	Network network(n, m);

	//generam m comparatoare in mod aleator
	//pozitiile comparatoarelor vor fi de la 1 lam
	//doar liniile de start si de sfarsit vor vi generate aleator

	srand(time(NULL));

	//cautam pana cand gasim o retea
	bool reteaOk=false;
	while(!reteaOk)
	{
		int nrComp=-1;
		int startLine, endLine, aux;
		while(nrComp != m-1)
		{
			startLine=rand()%n;
			//cout<<startLine<<" ";
			endLine=rand()%n;
			//cout<<startLine<<endl;

			if (startLine != endLine)
			{
				//ne asiguram ca startLine este mai mic strict decat endLine
				if(startLine > endLine)
				{
					aux=startLine;
					startLine=endLine;
					endLine=aux;
				}
				
				nrComp++;
				network.startLines[nrComp]=startLine;
				network.endLines[nrComp]=endLine;
			}
		}
		
		if(network.isSortNetwork())
		{
			network.print();
			reteaOk=true;
		}		
		
	}


	system("pause");
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?