sobota, 3 września 2016

continue first numbers and tables



#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;

#define max 500

int sum_table(int *tab, int size)
{
    int i,sum;
    sum=0;
    for(i=0;i<size;i++)
     sum+=tab[i];
    return sum;
}
bool is_first(int x)
{
    int i,sum;
    sum=0;
    for(i=1;i<x+1;i++)
     if(x%i==0)
      ++sum;
    if(sum==2)
     return true;
    else
     return false;
}
void change_table(int *tab1, int *tab2, int size)
{
    int *temp;
    temp=new int[size];
    int i;
    for(i=0;i<size;i++)
     {
         temp[i]=tab1[i];
         tab1[i]=tab2[i];
         tab2[i]=temp[i];
     }
   
    delete temp;
}
int *first_table;
int main(int argc, char **argv)
{
    int i,j,k,sum;
   
   
    srand(time(NULL));
    first_table=new int[max];
    i=0;j=1;
    do
    {
        if(is_first(j))
        {
            first_table[i]=j;
            ++i;
        }
        ++j;
    }while(i<max);
    int table_testing[max][max],double_first[max][max],f_value[max][max];
    int g_value[max][max],h_value[max],i_value[max][max];
    for(i=0;i<max;i++)
    {
     for(j=0;j<max;j++)
     {
      k=rand()%max;   
      table_testing[i][j]=first_table[k];
      double_first[i][j]=first_table[j];
      if(double_first[i][j]>=table_testing[i][j])
       f_value[i][j]=double_first[i][j]-table_testing[i][j];
      else
       f_value[i][j]=table_testing[i][j]-double_first[i][j];
      if(is_first(f_value[i][j]))
      {
       g_value[i][j]=1;
       i_value[i][j]=0;
      }
      else
      {
       g_value[i][j]=0;
       i_value[i][j]=1;
      }
     }
    }
    for(i=0;i<max;i++)
    {
        for(j=0;j<max;j++)
        {
            h_value[i]=sum_table(g_value[i],max);
            h_value[i]+=sum_table(i_value[i],max);
        }
    }
    for(i=0;i<max;i++)
    {
        for(j=0;j<h_value[i];j++)
        {
            change_table(double_first[j],table_testing[j],h_value[i]);
        }
    }
   

    delete first_table;
    return 0;
}

Brak komentarzy:

Prześlij komentarz