Jump to content

combinations (c++)


Sooth

Recommended Posts

Hi! I've made this program to display permutations of a specified number.

 

Anyone knows how should I change the line

for(i=1;i<=k-1;i++)if(x[i]==x[k])ev=0;

so that it will display combinations instead of permutations?

 

Here is the program for permutations:

#include<iostream.h>
#include<conio.h>
int x[20],i,k,as,ev,n,m;
void succ(int k, int&as) {
if(x[k]<m) {
as=1;
x[k]=x[k]+1;
}
else as=0;
}
void valid(int k, int &ev) {
ev=1;
for(i=1;i<=k-1;i++)if(x[i]==x[k])ev=0;
}
void afis(int k) {
for(i=1; i<=k;i++)cout<<x[i];
cout<<endl;
}
void main() {
cout<<"permutations of "; cin>>n; m=n;
k=1;
x[k]=0;
while(k>0) {
do {
succ(k,as);
if(as)valid(k,ev);
} while(as&&!ev);          
if(as)if(k==m)afis(k);
else {
k=k+1;
x[k]=0;
}
else k=k-1;
}
getche();
}

Link to comment
https://forums.phpfreaks.com/topic/78096-combinations-c/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.