Saturday, September 25, 2010

Subnetting Using C++

#include <iostream.h>
#include <conio.h>
#include <math.h>

void main(void)
{
    int a,b,c,d,q[15],n;
    double x = 2.0,k,m;
    clrscr();
    cout<<"\nEnter address for organisation : ";
    cin>>a>>b>>c>>d;
    cout<<"\nEnter subnet mask for organisation : ";
    cin>>m;
    cout<<"\nAddress for organisation :"<<a<<"."<<b<<"."<<c<<"."<<d<<"/"<<m<<endl;
    cout<<"\nEnter Number of subnets : ";
    cin>>n;

    for(int i=0;i<n;i++)
     {
cout<<"\nHow many addresses for subnet "<<i+1<<" : ";
cin>>q[i];
     }

     for(i=0;i<n;i++)
     {
  m=0;
  k=(int)pow(x,m);
  while(k!=q[i])
    {
  m++;
  k=(int)pow(x,m);
     }
  m=32-m;
  if(d>255)
   {
       d=0;
       c++;
   }
  cout<<"\nsubnet "<<i+1<<" : "<<a<<"."<<b<<"."<<c<<"."<<d<<"/"<<m;
  d=d+q[i]-1;
  if(d>255)
   {
       d=d-255-1;
       c++;
   }
   cout<<"  to  "<<a<<"."<<b<<"."<<c<<"."<<d++<<"/"<<m;
     }

     getch();
}

1 comment: